Ethereum contracts for ckICP
Ethereum contracts to be owned by the ckICP main canister on ICP via tECDSA.
- ERC20 tokens of ICP on Ethereum
- Only the ckICP canister can mint
- Anyone can burn ckICP on ETH to get ICP on the IC blockchain
- EIP-2612
https://github.com/foundry-rs/foundry
- Run
foundryupand install the foundry toolchain. - Replace the
0x04with the minter's Ethereum address in script/CkIcp.s.sol in linenew CkIcp{salt: bytes32(uint256(1))}(address(0x04));. - Register an Etherscan account and export
ETHERSCAN_API_KEY. - For mainnet deployment: change
eth_rpc_urlandchain_idinfoundry.toml. - Run
forge script script/CkIcp.s.sol -v --private-key $DEPLOYER_SK --broadcast --etherscan-api-key $ETHERSCAN_API_KEY --verify. - The Airdrop.sol does not need a deterministic address and can be deployed using
forge create --private-key $DEPLOYER_SK src/Airdrop.sol:Airdrop --etherscan-api-key $ETHERSCAN_API_KEY --verify. - Commit
broadcast/CkIcp.s.sol/{chain_id}/*.jsonback to this repo.