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
foundryup
and install the foundry toolchain. - Replace the
0x04
with 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_url
andchain_id
infoundry.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}/*.json
back to this repo.