├── README.md ├── circuits ├── .gitignore ├── README.md ├── circuits │ ├── aggregate_bls_verify.circom │ ├── assert_valid_signed_header.circom │ ├── pubkey_poseidon.circom │ ├── sha256_bytes.circom │ ├── simple_serialize.circom │ └── sync_committee_committments.circom ├── package.json ├── scripts │ ├── build_aggregate_bls_verify.sh │ ├── build_assert_valid_signed_header.sh │ ├── build_pubkey_addr.sh │ └── build_sync_committee_committments.sh ├── sha256 │ ├── README.md │ ├── ch.circom │ ├── constants.circom │ ├── main.circom │ ├── maj.circom │ ├── rotate.circom │ ├── sha256.circom │ ├── sha256_2.circom │ ├── sha256compression.circom │ ├── sha256compression_function.circom │ ├── shift.circom │ ├── sigma.circom │ ├── sigmaplus.circom │ ├── t1.circom │ ├── t2.circom │ └── xor3.circom ├── test │ ├── bls_utils.ts │ ├── circuits │ │ ├── test_aggregate_bls_add_4.circom │ │ ├── test_aggregate_bls_add_512.circom │ │ ├── test_aggregate_bls_verify_512.circom │ │ ├── test_assert_valid_signed_header.circom │ │ ├── test_expand_message_xmd.circom │ │ ├── test_hash_to_field.circom │ │ ├── test_i2osp_1.circom │ │ ├── test_i2osp_2.circom │ │ ├── test_poseidon_committment.circom │ │ ├── test_pubkey_bytes_to_big_int.circom │ │ ├── test_sha_bytes_constraint_cost.circom │ │ ├── test_ssz_array_4.circom │ │ ├── test_sync_committee_committments.circom │ │ └── test_template_assert_valid_signed_header.circom │ ├── generate_input_data.ts │ ├── input_aggregate_bls_verify_512.json │ ├── input_pubkey_addr_512.json │ ├── input_sync_committee_committments_512.json │ ├── input_valid_signed_header_512.json │ ├── test_aggregate_bls_add.ts │ ├── test_expand_message_xmd.ts │ ├── test_hash_to_field.ts │ ├── test_i2osp.ts │ └── test_pubkey_bytes_to_big_int.ts ├── tsconfig.json └── yarn.lock └── contracts ├── .gitignore ├── abigen.sh ├── foundry.toml ├── lib ├── Solidity-RLP │ ├── .gitattributes │ ├── .gitignore │ ├── .travis.yml │ ├── Changelog.md │ ├── LICENSE │ ├── README.md │ ├── contracts │ │ ├── Helper.sol │ │ ├── Migrations.sol │ │ └── RLPReader.sol │ ├── migrations │ │ ├── 1_initial_migration.js │ │ └── 2_initial_migration.js │ ├── package-lock.json │ ├── package.json │ ├── test │ │ └── basic-tests.js │ └── truffle-config.js └── curve-merkle-oracle │ ├── .gitignore │ ├── .python-version │ ├── README.md │ ├── brownie-config.yaml │ ├── bugbounty.md │ ├── contracts │ ├── MerklePatriciaProofVerifier.sol │ ├── SafeMath.sol │ ├── StableSwapPriceHelper.vy │ ├── StableSwapStateOracle.sol │ └── StateProofVerifier.sol │ ├── interfaces │ └── StableSwapStateOracle.json │ ├── offchain │ ├── generate_steth_price_proof.py │ ├── state_proof.py │ └── utils.py │ └── requirements.txt ├── remappings.txt └── src ├── amb ├── TrustlessAMB.sol ├── TrustlessAMBStorage.sol ├── interfaces │ └── ITrustlessAMB.sol ├── libraries │ └── HeaderProof.sol └── test │ ├── BeaconLightClientMock.sol │ ├── MerklePatriciaTrie.t.sol │ └── TrustlessAMB.t.sol ├── bridge ├── Bridge.sol ├── Tokens.sol └── test │ └── Bridge.t.sol ├── lightclient ├── BLSAggregatedSignatureVerifier.sol ├── BeaconLightClient.sol ├── PoseidonCommitmentVerifier.sol ├── Structs.sol ├── interfaces │ └── IBeaconLightClient.sol ├── libraries │ ├── Pairing.sol │ └── SimpleSerialize.sol └── test │ └── BeaconLightClient.t.sol └── scripts ├── .gitignore ├── Deposit.s.sol ├── GnosisUSD.s.sol ├── GoerliUSD.s.sol ├── LightClient.s.sol ├── MockDeposit.s.sol ├── Withdraw.s.sol ├── deploy_deposit.sh ├── deploy_deposit_mock.sh ├── deploy_everything.sh ├── deploy_lightclient.sh ├── deploy_lightclient_manual.sh ├── deploy_tokens.sh ├── deploy_withdraw.sh └── verify.sh /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/README.md -------------------------------------------------------------------------------- /circuits/.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | *.ptau 3 | *.log -------------------------------------------------------------------------------- /circuits/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/README.md -------------------------------------------------------------------------------- /circuits/circuits/aggregate_bls_verify.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/aggregate_bls_verify.circom -------------------------------------------------------------------------------- /circuits/circuits/assert_valid_signed_header.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/assert_valid_signed_header.circom -------------------------------------------------------------------------------- /circuits/circuits/pubkey_poseidon.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/pubkey_poseidon.circom -------------------------------------------------------------------------------- /circuits/circuits/sha256_bytes.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/sha256_bytes.circom -------------------------------------------------------------------------------- /circuits/circuits/simple_serialize.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/simple_serialize.circom -------------------------------------------------------------------------------- /circuits/circuits/sync_committee_committments.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/circuits/sync_committee_committments.circom -------------------------------------------------------------------------------- /circuits/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/package.json -------------------------------------------------------------------------------- /circuits/scripts/build_aggregate_bls_verify.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/scripts/build_aggregate_bls_verify.sh -------------------------------------------------------------------------------- /circuits/scripts/build_assert_valid_signed_header.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/scripts/build_assert_valid_signed_header.sh -------------------------------------------------------------------------------- /circuits/scripts/build_pubkey_addr.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/scripts/build_pubkey_addr.sh -------------------------------------------------------------------------------- /circuits/scripts/build_sync_committee_committments.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/scripts/build_sync_committee_committments.sh -------------------------------------------------------------------------------- /circuits/sha256/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/README.md -------------------------------------------------------------------------------- /circuits/sha256/ch.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/ch.circom -------------------------------------------------------------------------------- /circuits/sha256/constants.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/constants.circom -------------------------------------------------------------------------------- /circuits/sha256/main.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/main.circom -------------------------------------------------------------------------------- /circuits/sha256/maj.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/maj.circom -------------------------------------------------------------------------------- /circuits/sha256/rotate.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/rotate.circom -------------------------------------------------------------------------------- /circuits/sha256/sha256.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sha256.circom -------------------------------------------------------------------------------- /circuits/sha256/sha256_2.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sha256_2.circom -------------------------------------------------------------------------------- /circuits/sha256/sha256compression.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sha256compression.circom -------------------------------------------------------------------------------- /circuits/sha256/sha256compression_function.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sha256compression_function.circom -------------------------------------------------------------------------------- /circuits/sha256/shift.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/shift.circom -------------------------------------------------------------------------------- /circuits/sha256/sigma.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sigma.circom -------------------------------------------------------------------------------- /circuits/sha256/sigmaplus.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/sigmaplus.circom -------------------------------------------------------------------------------- /circuits/sha256/t1.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/t1.circom -------------------------------------------------------------------------------- /circuits/sha256/t2.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/t2.circom -------------------------------------------------------------------------------- /circuits/sha256/xor3.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/sha256/xor3.circom -------------------------------------------------------------------------------- /circuits/test/bls_utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/bls_utils.ts -------------------------------------------------------------------------------- /circuits/test/circuits/test_aggregate_bls_add_4.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_aggregate_bls_add_4.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_aggregate_bls_add_512.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_aggregate_bls_add_512.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_aggregate_bls_verify_512.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_aggregate_bls_verify_512.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_assert_valid_signed_header.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_assert_valid_signed_header.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_expand_message_xmd.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_expand_message_xmd.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_hash_to_field.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_hash_to_field.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_i2osp_1.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_i2osp_1.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_i2osp_2.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_i2osp_2.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_poseidon_committment.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_poseidon_committment.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_pubkey_bytes_to_big_int.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_pubkey_bytes_to_big_int.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_sha_bytes_constraint_cost.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_sha_bytes_constraint_cost.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_ssz_array_4.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_ssz_array_4.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_sync_committee_committments.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_sync_committee_committments.circom -------------------------------------------------------------------------------- /circuits/test/circuits/test_template_assert_valid_signed_header.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/circuits/test_template_assert_valid_signed_header.circom -------------------------------------------------------------------------------- /circuits/test/generate_input_data.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/generate_input_data.ts -------------------------------------------------------------------------------- /circuits/test/input_aggregate_bls_verify_512.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/input_aggregate_bls_verify_512.json -------------------------------------------------------------------------------- /circuits/test/input_pubkey_addr_512.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/input_pubkey_addr_512.json -------------------------------------------------------------------------------- /circuits/test/input_sync_committee_committments_512.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/input_sync_committee_committments_512.json -------------------------------------------------------------------------------- /circuits/test/input_valid_signed_header_512.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/input_valid_signed_header_512.json -------------------------------------------------------------------------------- /circuits/test/test_aggregate_bls_add.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/test_aggregate_bls_add.ts -------------------------------------------------------------------------------- /circuits/test/test_expand_message_xmd.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/test_expand_message_xmd.ts -------------------------------------------------------------------------------- /circuits/test/test_hash_to_field.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/test_hash_to_field.ts -------------------------------------------------------------------------------- /circuits/test/test_i2osp.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/test_i2osp.ts -------------------------------------------------------------------------------- /circuits/test/test_pubkey_bytes_to_big_int.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/test/test_pubkey_bytes_to_big_int.ts -------------------------------------------------------------------------------- /circuits/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/tsconfig.json -------------------------------------------------------------------------------- /circuits/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/circuits/yarn.lock -------------------------------------------------------------------------------- /contracts/.gitignore: -------------------------------------------------------------------------------- 1 | out/ 2 | abi/ 3 | broadcast/ -------------------------------------------------------------------------------- /contracts/abigen.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/abigen.sh -------------------------------------------------------------------------------- /contracts/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/foundry.toml -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | build/ 4 | -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/.travis.yml -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/Changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/Changelog.md -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/LICENSE -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/README.md -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/contracts/Helper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/contracts/Helper.sol -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/contracts/Migrations.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/contracts/Migrations.sol -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/contracts/RLPReader.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/contracts/RLPReader.sol -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/migrations/1_initial_migration.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/migrations/1_initial_migration.js -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/migrations/2_initial_migration.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/migrations/2_initial_migration.js -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/package-lock.json -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/package.json -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/test/basic-tests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/test/basic-tests.js -------------------------------------------------------------------------------- /contracts/lib/Solidity-RLP/truffle-config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/Solidity-RLP/truffle-config.js -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/.gitignore -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/.python-version: -------------------------------------------------------------------------------- 1 | 3.6.12 2 | -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/README.md -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/brownie-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/brownie-config.yaml -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/bugbounty.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/bugbounty.md -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/contracts/MerklePatriciaProofVerifier.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/contracts/MerklePatriciaProofVerifier.sol -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/contracts/SafeMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/contracts/SafeMath.sol -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/contracts/StableSwapPriceHelper.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/contracts/StableSwapPriceHelper.vy -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/contracts/StableSwapStateOracle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/contracts/StableSwapStateOracle.sol -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/contracts/StateProofVerifier.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/contracts/StateProofVerifier.sol -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/interfaces/StableSwapStateOracle.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/interfaces/StableSwapStateOracle.json -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/offchain/generate_steth_price_proof.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/offchain/generate_steth_price_proof.py -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/offchain/state_proof.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/offchain/state_proof.py -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/offchain/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/offchain/utils.py -------------------------------------------------------------------------------- /contracts/lib/curve-merkle-oracle/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/lib/curve-merkle-oracle/requirements.txt -------------------------------------------------------------------------------- /contracts/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/remappings.txt -------------------------------------------------------------------------------- /contracts/src/amb/TrustlessAMB.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/TrustlessAMB.sol -------------------------------------------------------------------------------- /contracts/src/amb/TrustlessAMBStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/TrustlessAMBStorage.sol -------------------------------------------------------------------------------- /contracts/src/amb/interfaces/ITrustlessAMB.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/interfaces/ITrustlessAMB.sol -------------------------------------------------------------------------------- /contracts/src/amb/libraries/HeaderProof.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/libraries/HeaderProof.sol -------------------------------------------------------------------------------- /contracts/src/amb/test/BeaconLightClientMock.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/test/BeaconLightClientMock.sol -------------------------------------------------------------------------------- /contracts/src/amb/test/MerklePatriciaTrie.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/test/MerklePatriciaTrie.t.sol -------------------------------------------------------------------------------- /contracts/src/amb/test/TrustlessAMB.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/amb/test/TrustlessAMB.t.sol -------------------------------------------------------------------------------- /contracts/src/bridge/Bridge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/bridge/Bridge.sol -------------------------------------------------------------------------------- /contracts/src/bridge/Tokens.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/bridge/Tokens.sol -------------------------------------------------------------------------------- /contracts/src/bridge/test/Bridge.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/bridge/test/Bridge.t.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/BLSAggregatedSignatureVerifier.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/BLSAggregatedSignatureVerifier.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/BeaconLightClient.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/BeaconLightClient.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/PoseidonCommitmentVerifier.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/PoseidonCommitmentVerifier.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/Structs.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/Structs.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/interfaces/IBeaconLightClient.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/interfaces/IBeaconLightClient.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/libraries/Pairing.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/libraries/Pairing.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/libraries/SimpleSerialize.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/libraries/SimpleSerialize.sol -------------------------------------------------------------------------------- /contracts/src/lightclient/test/BeaconLightClient.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/lightclient/test/BeaconLightClient.t.sol -------------------------------------------------------------------------------- /contracts/src/scripts/.gitignore: -------------------------------------------------------------------------------- 1 | logs/ 2 | broadcast/ 3 | envs/ -------------------------------------------------------------------------------- /contracts/src/scripts/Deposit.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/Deposit.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/GnosisUSD.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/GnosisUSD.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/GoerliUSD.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/GoerliUSD.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/LightClient.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/LightClient.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/MockDeposit.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/MockDeposit.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/Withdraw.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/Withdraw.s.sol -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_deposit.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_deposit.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_deposit_mock.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_deposit_mock.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_everything.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_everything.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_lightclient.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_lightclient.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_lightclient_manual.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_lightclient_manual.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_tokens.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_tokens.sh -------------------------------------------------------------------------------- /contracts/src/scripts/deploy_withdraw.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/deploy_withdraw.sh -------------------------------------------------------------------------------- /contracts/src/scripts/verify.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/succinctlabs/eth-proof-of-consensus/HEAD/contracts/src/scripts/verify.sh --------------------------------------------------------------------------------