Skip to content

Commit 3ef2976

Browse files
feat: deploy risc0 groth16 verifier contracts in anvil (#1876)
1 parent 83576e3 commit 3ef2976

18 files changed

+2366
-2386
lines changed

Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,10 @@ anvil_deploy_eigen_contracts:
7575
@echo "Deploying Eigen Contracts..."
7676
. contracts/scripts/anvil/deploy_eigen_contracts.sh
7777

78+
anvil_deploy_risc0_contracts:
79+
@echo "Deploying RISC0 Contracts..."
80+
. contracts/scripts/anvil/deploy_risc0_contracts.sh
81+
7882
anvil_deploy_sp1_contracts:
7983
@echo "Deploying SP1 Contracts..."
8084
. contracts/scripts/anvil/deploy_sp1_contracts.sh

contracts/deployments/31337.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"CREATE2_SALT": "0x0000000000000000000000000000000000000000000000000000000000000009",
3-
"SP1_VERIFIER_GATEWAY_GROTH16": "0xbC42A182543d5AF01f51040955D149A74C015098",
4-
"V4_0_0_RC3_SP1_VERIFIER_GROTH16": "0x737A46c3A4579A452302130D762eFa66C6f81e28"
5-
}
3+
"SP1_VERIFIER_GATEWAY_GROTH16": "0xB146FbFdFeC2a5182b3Cef9becE03290224256D5",
4+
"V4_0_0_RC3_SP1_VERIFIER_GROTH16": "0x93a993C79738eA5D8836e42C6c422259684639Dc"
5+
}

contracts/remappings.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ forge-std/=lib/forge-std/src/
77
@openzeppelin-upgrades/contracts/=lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/contracts/
88
@sp1-contracts/=lib/sp1-contracts/contracts/src/
99
@risc0-contracts/=lib/risc0-ethereum/contracts/src/
10+
openzeppelin/=lib/risc0-ethereum/lib/openzeppelin-contracts
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// SPDX-License-Identifier: Apache-2.0
2+
pragma solidity ^0.8.20;
3+
4+
import {Script} from "forge-std/Script.sol";
5+
import {console2} from "forge-std/console2.sol";
6+
import {IRiscZeroVerifier} from "@risc0-contracts/IRiscZeroVerifier.sol";
7+
import {ControlID, RiscZeroGroth16Verifier} from "@risc0-contracts/groth16/RiscZeroGroth16Verifier.sol";
8+
9+
contract Risc0VerifierRouterDeployer is Script {
10+
function run() external {
11+
uint256 deployerKey = uint256(vm.envBytes32("DEPLOYER_PRIVATE_KEY"));
12+
13+
vm.startBroadcast(deployerKey);
14+
15+
IRiscZeroVerifier verifier = new RiscZeroGroth16Verifier(ControlID.CONTROL_ROOT, ControlID.BN254_CONTROL_ID);
16+
console2.log("Deployed RiscZeroGroth16Verifier to", address(verifier));
17+
18+
vm.stopBroadcast();
19+
}
20+
}

contracts/script/deploy/config/devnet/proof-aggregator-service.devnet.config.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"address": {
3-
"sp1VerifierAddress": "0xbC42A182543d5AF01f51040955D149A74C015098",
4-
"risc0VerifierAddress": "0x00000000000000000000000000000000000000FF",
3+
"sp1VerifierAddress": "0xB146FbFdFeC2a5182b3Cef9becE03290224256D5",
4+
"risc0VerifierAddress": "0x663F3ad617193148711d28f5334eE4Ed07016602",
55
"alignedAggregatorAddress": "0xa0Ee7A142d267C1f36714E4a8F75612F20a79720",
66
"alignedAggregatorAddressPrivateKey": "0x2a871d0798f97d79848a013d4936a73bf4cc922c825d33c1cf7073dff6d409c6"
77
},

contracts/script/deploy/config/holesky/proof-aggregator-service.holesky.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"address": {
33
"sp1VerifierAddress": "0x397A5f7f3dBd538f23DE225B51f532c34448dA9B",
4+
"risc0VerifierAddress": "0xf70aBAb028Eb6F4100A24B203E113D94E87DE93C",
45
"alignedAggregatorAddress": "0x9403dF48130621f87974a5A1d1d11d3aF1222A82"
56
},
67
"permissions": {

contracts/script/deploy/config/holesky/proof-aggregator-service.holesky.config.stage.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"address": {
33
"sp1VerifierAddress": "0x397A5f7f3dBd538f23DE225B51f532c34448dA9B",
4+
"risc0VerifierAddress": "0xf70aBAb028Eb6F4100A24B203E113D94E87DE93C",
45
"alignedAggregatorAddress": "0x3595aa7d30f89f65933e7421dec77e4478d9fb01"
56
},
67
"permissions": {

contracts/script/deploy/config/mainnet/proof-aggregator-service.holesky.config.json renamed to contracts/script/deploy/config/mainnet/proof-aggregator-service.mainnet.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"address": {
33
"sp1VerifierAddress": "0x397A5f7f3dBd538f23DE225B51f532c34448dA9B",
4+
"risc0VerifierAddress": "0x8EaB2D97Dfce405A1692a21b3ff3A172d593D319",
45
"alignedAggregatorAddress": "<aligned_aggregator_address>"
56
},
67
"permissions": {

contracts/script/deploy/config/mainnet_staging/proof-aggregator-service.holesky.config.json renamed to contracts/script/deploy/config/mainnet_staging/proof-aggregator-service.mainnet.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"address": {
33
"sp1VerifierAddress": "0x397A5f7f3dBd538f23DE225B51f532c34448dA9B",
4+
"risc0VerifierAddress": "0x8EaB2D97Dfce405A1692a21b3ff3A172d593D319",
45
"alignedAggregatorAddress": "<aligned_aggregator_address>"
56
},
67
"permissions": {

contracts/script/deploy/config/sepolia/proof-aggregator-service.holesky.config.json renamed to contracts/script/deploy/config/sepolia/proof-aggregator-service.sepolia.config.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"address": {
33
"sp1VerifierAddress": "0x397A5f7f3dBd538f23DE225B51f532c34448dA9B",
4+
"risc0VerifierAddress": "0x925d8331ddc0a1F0d96E68CF073DFE1d92b69187",
45
"alignedAggregatorAddress": "<aligned_aggregator_address>"
56
},
67
"permissions": {

0 commit comments

Comments
 (0)