@zero-tech/zkevm-contracts
v6.0.0-fork-9
Published
Core contracts for the Polygon Hermez zkEVM
Downloads
12
Readme
zkevm-contracts
Smart contract implementation which will be used by the polygon zkevm
Mainnet Contracts:
| Contract Name | Address | | ---------------------------- | --------------------------------------------------------------------------------------------------------------------- | | PolygonRollupManager | 0x5132A183E9F3CB7C848b0AAC5Ae0c4f0491B7aB2 | | PolygonZkEVMBridgeV2 | 0x2a3DD3EB832aF982ec71669E178424b10Dca2EDe | | PolygonZkEVMGlobalExitRootV2 | 0x580bda1e7A0CFAe92Fa7F6c20A3794F169CE3CFb | | FflonkVerifier | 0x4F9A0e7FD2Bf6067db6994CF12E4495Df938E6e9 | | PolygonZkEVMDeployer | 0xCB19eDdE626906eB1EE52357a27F62dd519608C2 | | PolygonZkEVMTimelock | 0xEf1462451C30Ea7aD8555386226059Fe837CA4EF |
zkEVM Contracts:
| Contract Name | Address | | -------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | PolygonZkEVMBridgeV2 | 0x2a3DD3EB832aF982ec71669E178424b10Dca2EDe | | PolygonZkEVMTimelock | 0xBBa0935Fa93Eb23de7990b47F0D96a8f75766d13 |
Requirements
- node version: 16.x
- npm version: 7.x
Install repo
npm i
Run tests
npm run test
Deploy on hardhat
npm run deploy:ZkEVM:hardhat
Build dockers
npm run docker:contracts
Or if using new docker-compose version
npm run dockerv2:contracts
A new docker hermeznetwork/geth-zkevm-contracts
will be created
This docker will contain a geth node with the deployed contracts
The deployment output can be found in: docker/deploymentOutput/deploy_output.json
To run the docker you can use: docker run -p 8545:8545 hermeznetwork/geth-zkevm-contracts
Note
In order to test, the following private keys are being used. These keys are not meant to be used in any production environment:
- private key:
0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
- address:
0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266
- address:
- private key:
0xdfd01798f92667dbf91df722434e8fbe96af0211d4d1b82bbbbc8f1def7a814f
- address:
0xc949254d682d8c9ad5682521675b8f43b102aec4
- address:
Verify Deployed Smart Contracts
To verify that the smartcontracts of this repository are the same deployed on mainnet, you could follow the instructions described document
The smartcontract used to verify a proof, it's a generated contract from zkEVM Rom and Pil (constraints). To verify the deployment of this smartcontract you could follow the instructions described in this document
Activate github hook
git config --local core.hooksPath .githooks/