├── .gitignore ├── CITATION.cff ├── LICENSE ├── Makefile ├── README.md ├── program ├── protostar.toml ├── src │ ├── aggregate_proofs.cairo │ ├── block_header │ │ ├── block_header.cairo │ │ └── median.cairo │ ├── crypto │ │ ├── hash256.cairo │ │ ├── merkle_mountain_range.cairo │ │ └── sha256_packed.cairo │ ├── increment_batch.cairo │ ├── prove_batch.cairo │ └── utils │ │ ├── authproxy.py │ │ ├── btc_api.py │ │ ├── chain_state_utils.cairo │ │ ├── pow2.cairo │ │ ├── python_utils.cairo │ │ └── utils.cairo └── tests │ ├── block_header │ ├── test_bits_and_target.cairo │ ├── test_bits_and_target.json │ ├── test_block_header.cairo │ └── test_compute_median.cairo │ └── crypto │ ├── test_hash256.cairo │ └── test_merkle_mountain_range.cairo ├── prover ├── 0001-patch-verifier.patch ├── aggregate.py ├── batch.py ├── increment.py ├── state_0.json └── utils │ ├── cairo_hash.py │ ├── cairo_parser.py │ ├── common.py │ ├── header_db.py │ └── headers_to_file.sh ├── scripts ├── aggregate_tree.py ├── generate_initial_state.py └── run_proof_updater.py └── verifier ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── PkgDemo ├── .gitignore ├── README.md ├── index.js └── package.json ├── README.md ├── build.rs ├── build └── proofs │ ├── .gitignore │ ├── aggregate │ ├── air-public-input.json │ └── proof.bin │ ├── batch_0 │ ├── air-public-input.json │ └── batch_proof.bin │ ├── batch_1 │ ├── air-public-input.json │ └── batch_proof.bin │ ├── batch_2 │ ├── air-public-input.json │ └── batch_proof.bin │ ├── batch_3 │ ├── air-public-input.json │ └── batch_proof.bin │ └── prove_batch_compiled.json ├── index.js ├── package-lock.json ├── package.json ├── rust-toolchain ├── src ├── index.html └── lib.rs └── webpack.config.js /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/.gitignore -------------------------------------------------------------------------------- /CITATION.cff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/CITATION.cff -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/README.md -------------------------------------------------------------------------------- /program/protostar.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/protostar.toml -------------------------------------------------------------------------------- /program/src/aggregate_proofs.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/aggregate_proofs.cairo -------------------------------------------------------------------------------- /program/src/block_header/block_header.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/block_header/block_header.cairo -------------------------------------------------------------------------------- /program/src/block_header/median.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/block_header/median.cairo -------------------------------------------------------------------------------- /program/src/crypto/hash256.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/crypto/hash256.cairo -------------------------------------------------------------------------------- /program/src/crypto/merkle_mountain_range.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/crypto/merkle_mountain_range.cairo -------------------------------------------------------------------------------- /program/src/crypto/sha256_packed.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/crypto/sha256_packed.cairo -------------------------------------------------------------------------------- /program/src/increment_batch.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/increment_batch.cairo -------------------------------------------------------------------------------- /program/src/prove_batch.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/prove_batch.cairo -------------------------------------------------------------------------------- /program/src/utils/authproxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/authproxy.py -------------------------------------------------------------------------------- /program/src/utils/btc_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/btc_api.py -------------------------------------------------------------------------------- /program/src/utils/chain_state_utils.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/chain_state_utils.cairo -------------------------------------------------------------------------------- /program/src/utils/pow2.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/pow2.cairo -------------------------------------------------------------------------------- /program/src/utils/python_utils.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/python_utils.cairo -------------------------------------------------------------------------------- /program/src/utils/utils.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/src/utils/utils.cairo -------------------------------------------------------------------------------- /program/tests/block_header/test_bits_and_target.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/block_header/test_bits_and_target.cairo -------------------------------------------------------------------------------- /program/tests/block_header/test_bits_and_target.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/block_header/test_bits_and_target.json -------------------------------------------------------------------------------- /program/tests/block_header/test_block_header.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/block_header/test_block_header.cairo -------------------------------------------------------------------------------- /program/tests/block_header/test_compute_median.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/block_header/test_compute_median.cairo -------------------------------------------------------------------------------- /program/tests/crypto/test_hash256.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/crypto/test_hash256.cairo -------------------------------------------------------------------------------- /program/tests/crypto/test_merkle_mountain_range.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/program/tests/crypto/test_merkle_mountain_range.cairo -------------------------------------------------------------------------------- /prover/0001-patch-verifier.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/0001-patch-verifier.patch -------------------------------------------------------------------------------- /prover/aggregate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/aggregate.py -------------------------------------------------------------------------------- /prover/batch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/batch.py -------------------------------------------------------------------------------- /prover/increment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/increment.py -------------------------------------------------------------------------------- /prover/state_0.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/state_0.json -------------------------------------------------------------------------------- /prover/utils/cairo_hash.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/utils/cairo_hash.py -------------------------------------------------------------------------------- /prover/utils/cairo_parser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/utils/cairo_parser.py -------------------------------------------------------------------------------- /prover/utils/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/utils/common.py -------------------------------------------------------------------------------- /prover/utils/header_db.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/utils/header_db.py -------------------------------------------------------------------------------- /prover/utils/headers_to_file.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/prover/utils/headers_to_file.sh -------------------------------------------------------------------------------- /scripts/aggregate_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/scripts/aggregate_tree.py -------------------------------------------------------------------------------- /scripts/generate_initial_state.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/scripts/generate_initial_state.py -------------------------------------------------------------------------------- /scripts/run_proof_updater.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/scripts/run_proof_updater.py -------------------------------------------------------------------------------- /verifier/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | node_modules 3 | .DS_Store -------------------------------------------------------------------------------- /verifier/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/Cargo.lock -------------------------------------------------------------------------------- /verifier/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/Cargo.toml -------------------------------------------------------------------------------- /verifier/PkgDemo/.gitignore: -------------------------------------------------------------------------------- 1 | air-public-inputs.json 2 | proof.bin 3 | 4 | -------------------------------------------------------------------------------- /verifier/PkgDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/PkgDemo/README.md -------------------------------------------------------------------------------- /verifier/PkgDemo/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/PkgDemo/index.js -------------------------------------------------------------------------------- /verifier/PkgDemo/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/PkgDemo/package.json -------------------------------------------------------------------------------- /verifier/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/README.md -------------------------------------------------------------------------------- /verifier/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build.rs -------------------------------------------------------------------------------- /verifier/build/proofs/.gitignore: -------------------------------------------------------------------------------- 1 | !* 2 | .DS_Store -------------------------------------------------------------------------------- /verifier/build/proofs/aggregate/air-public-input.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/aggregate/air-public-input.json -------------------------------------------------------------------------------- /verifier/build/proofs/aggregate/proof.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/aggregate/proof.bin -------------------------------------------------------------------------------- /verifier/build/proofs/batch_0/air-public-input.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_0/air-public-input.json -------------------------------------------------------------------------------- /verifier/build/proofs/batch_0/batch_proof.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_0/batch_proof.bin -------------------------------------------------------------------------------- /verifier/build/proofs/batch_1/air-public-input.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_1/air-public-input.json -------------------------------------------------------------------------------- /verifier/build/proofs/batch_1/batch_proof.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_1/batch_proof.bin -------------------------------------------------------------------------------- /verifier/build/proofs/batch_2/air-public-input.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_2/air-public-input.json -------------------------------------------------------------------------------- /verifier/build/proofs/batch_2/batch_proof.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_2/batch_proof.bin -------------------------------------------------------------------------------- /verifier/build/proofs/batch_3/air-public-input.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_3/air-public-input.json -------------------------------------------------------------------------------- /verifier/build/proofs/batch_3/batch_proof.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/batch_3/batch_proof.bin -------------------------------------------------------------------------------- /verifier/build/proofs/prove_batch_compiled.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/build/proofs/prove_batch_compiled.json -------------------------------------------------------------------------------- /verifier/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/index.js -------------------------------------------------------------------------------- /verifier/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/package-lock.json -------------------------------------------------------------------------------- /verifier/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/package.json -------------------------------------------------------------------------------- /verifier/rust-toolchain: -------------------------------------------------------------------------------- 1 | nightly-2023-07-29 -------------------------------------------------------------------------------- /verifier/src/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/src/index.html -------------------------------------------------------------------------------- /verifier/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/src/lib.rs -------------------------------------------------------------------------------- /verifier/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZeroSync/header_chain/HEAD/verifier/webpack.config.js --------------------------------------------------------------------------------