FHERC20 standard + Redacted Contracts (FHED / EncryptableWrappedFHERC20)
This is a foundry project using gitmodules, install with:
git clone --recurse-submodules git@github.com:FhenixProtocol/encrypto-contracts.gitStandards:
- FHERC20.sol (FHERC20.sol + FHE operations)
- FHERC20Upgradeable.sol (FHERC20wFHE.sol + Upgradeability)
- interfaces/IFHERC20.sol
- interfaces/IFHERC20Errors.sol
Redacted:
- RedactedCore.sol (Routing tokens to their encrypted counterpart)
- ConfidentialERC20.sol (FHERC20 wrapper around ERC20 with
encryptanddecryptfunctionality) - ConfidentialETH.sol (ConfidentialERC20.sol + native ETH -> eETH
encrypting) - FUSD.sol (FHERC20Upgradeable.sol +
mintandburnintegration with Paxos)
Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.
Foundry consists of:
- Forge: Ethereum testing framework (like Truffle, Hardhat and DappTools).
- Cast: Swiss army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- Anvil: Local Ethereum node, akin to Ganache, Hardhat Network.
- Chisel: Fast, utilitarian, and verbose solidity REPL.
$ forge build$ forge test$ forge fmt$ forge snapshot$ anvil$ forge script script/Counter.s.sol:CounterScript --rpc-url <your_rpc_url> --private-key <your_private_key>$ cast <subcommand>$ forge --help
$ anvil --help
$ cast --help