6.0.0-fork-9 • Published 10 months ago

@zero-tech/zkevm-contracts v6.0.0-fork-9

Weekly downloads
-
License
pending
Repository
github
Last release
10 months ago

zkevm-contracts

Smart contract implementation which will be used by the polygon zkevm

Main CI

Mainnet Contracts:

Contract NameAddress
PolygonRollupManager0x5132A183E9F3CB7C848b0AAC5Ae0c4f0491B7aB2
PolygonZkEVMBridgeV20x2a3DD3EB832aF982ec71669E178424b10Dca2EDe
PolygonZkEVMGlobalExitRootV20x580bda1e7A0CFAe92Fa7F6c20A3794F169CE3CFb
FflonkVerifier0x4F9A0e7FD2Bf6067db6994CF12E4495Df938E6e9
PolygonZkEVMDeployer0xCB19eDdE626906eB1EE52357a27F62dd519608C2
PolygonZkEVMTimelock0xEf1462451C30Ea7aD8555386226059Fe837CA4EF

zkEVM Contracts:

Contract NameAddress
PolygonZkEVMBridgeV20x2a3DD3EB832aF982ec71669E178424b10Dca2EDe
PolygonZkEVMTimelock0xBBa0935Fa93Eb23de7990b47F0D96a8f75766d13

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
  • private key: 0xdfd01798f92667dbf91df722434e8fbe96af0211d4d1b82bbbbc8f1def7a814f
    • address:0xc949254d682d8c9ad5682521675b8f43b102aec4

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/