Skip to content

The fork of Polygon zkEVM Smart Contracts with an NPM package

License

Notifications You must be signed in to change notification settings

zer0-os/zkevm-contracts

This branch is 8 commits behind 0xPolygonHermez/zkevm-contracts:main.

Folders and files

NameName
Last commit message
Last commit date
Mar 19, 2024
Mar 14, 2024
Jan 25, 2024
Jun 17, 2024
Jul 18, 2024
Sep 4, 2024
Jul 18, 2024
May 16, 2024
Jul 18, 2024
Jan 29, 2024
Mar 26, 2024
Sep 5, 2024
Mar 19, 2024
Apr 1, 2024
Dec 3, 2021
Dec 10, 2021
Dec 21, 2022
Feb 1, 2024
Jan 25, 2024
Jan 25, 2024
Aug 21, 2023
Mar 27, 2023
Feb 20, 2024
Mar 27, 2023
Aug 21, 2023
Feb 12, 2024
Mar 19, 2024
Mar 19, 2024
Mar 19, 2024
Jan 25, 2024

Repository files navigation

zkevm-contracts

Smart contract implementation which will be used by the polygon zkevm

Main CI

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
  • 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/

About

The fork of Polygon zkEVM Smart Contracts with an NPM package

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Solidity 44.7%
  • TypeScript 39.9%
  • JavaScript 15.1%
  • Other 0.3%