Skip to content
This repository was archived by the owner on Apr 18, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
198 commits
Select commit Hold shift + click to select a range
62d5c22
chore: dependencies
roynalnaruto Feb 26, 2024
b3eb451
Rebase code to main dev branch
darth-cy Feb 27, 2024
93c838e
Rebase code to main dev branch
darth-cy Feb 27, 2024
5341fc6
Remove signed len
darth-cy Feb 27, 2024
5990e52
basic constraints
roynalnaruto Feb 27, 2024
56ea2f6
Add accumulation constraints
darth-cy Feb 28, 2024
28e3267
Add chunk bytes to keccak and pow of rand to tx circuit config
darth-cy Feb 28, 2024
46b7c33
Remove debug flags
darth-cy Feb 28, 2024
e648285
clippy
darth-cy Feb 28, 2024
ca6cc06
Correct keccak lookup
darth-cy Feb 29, 2024
552d8f1
Add pow of rand lookup
darth-cy Feb 29, 2024
955d86c
remove pow of rand from lookup config
darth-cy Feb 29, 2024
c649ceb
Change unusable rows
darth-cy Feb 29, 2024
a43c7f6
remove debug flags
darth-cy Feb 29, 2024
15c8d2a
fmt
darth-cy Feb 29, 2024
bf694ed
correct export for pi circuit
darth-cy Feb 29, 2024
4d61226
fmt
darth-cy Feb 29, 2024
40fc5e0
patch halo2curves to branch that supports bls12_381
Feb 22, 2024
6da4380
Add roots of unity
Feb 22, 2024
52b2fa1
add barycentric evaluation constraints and assignments
Feb 27, 2024
50fa339
Call assign in circuit synthesis
Mar 1, 2024
94fe909
cleanup
Mar 1, 2024
9a9f0fb
replace local patches with github
Mar 1, 2024
80abce6
Correct column type
darth-cy Mar 4, 2024
d7b80a6
Add l1msg and padding tx len, hash acc conditions
darth-cy Mar 4, 2024
9f67b5c
Define init condition for len, hash acc
darth-cy Mar 4, 2024
cb707ea
Remove access list and calldata constraints
darth-cy Mar 4, 2024
d2c5d84
Correct keccak lookup rotation
darth-cy Mar 4, 2024
a2073d3
Use fixed row to isolate last row of fixed section
darth-cy Mar 4, 2024
8fbfa77
Remove hash consistency gate
darth-cy Mar 4, 2024
fd3eb12
chunk/batch definition updates
roynalnaruto Mar 4, 2024
e520d77
add txbytes to the keccak preimages
roynalnaruto Mar 4, 2024
fa4857a
blob data is actually the correct preimage for chalenge point
roynalnaruto Mar 4, 2024
061a5d2
remove unused feature flag from patch
Mar 4, 2024
96a2110
implement Sum for ScalarFieldElement
Mar 4, 2024
8caec02
use sum
Mar 4, 2024
c03c4a9
use same range config between barycentric config and base field config
Mar 4, 2024
4b7b52a
cleanup
Mar 4, 2024
6e1fc70
Merge branch 'feat/4844-blob-data-config' into barycentric
Mar 4, 2024
03a803e
fix build
Mar 4, 2024
18d82e0
connect barycentric centric to aggregation circuit
Mar 4, 2024
1887839
Correct test 1559 parsing
darth-cy Mar 4, 2024
202d40e
Recover constraints
darth-cy Mar 4, 2024
41a326d
Remove debug flags
darth-cy Mar 5, 2024
3da11c6
fmt
darth-cy Mar 5, 2024
ea0a900
Remove debug flag
darth-cy Mar 5, 2024
9628f0f
Add forgotten file
Mar 5, 2024
3c82220
updated definition of random point
Mar 5, 2024
f8073a3
enable equality
darth-cy Mar 6, 2024
c995e43
Adjust equality-enabled columns
darth-cy Mar 6, 2024
f329efd
Adjust tx circuit output
darth-cy Mar 6, 2024
4369fc0
Adjust equality-enabled columns
darth-cy Mar 6, 2024
32a6783
Correct tx circuit hash output
darth-cy Mar 7, 2024
ff117bb
Change chunk data hash definition
darth-cy Mar 7, 2024
ef6bec7
wip
roynalnaruto Mar 7, 2024
58d8d3e
Use same roots of unity as 4844 spec
Mar 7, 2024
8c4a7eb
constraints for rows at fixed offsets
roynalnaruto Mar 7, 2024
3c1b2cf
digest bytes section
roynalnaruto Mar 7, 2024
6a25d11
minor edit
roynalnaruto Mar 7, 2024
435a821
fix: rows in data section
roynalnaruto Mar 7, 2024
24523b7
cleanup
Mar 7, 2024
6d3361b
Add more blob tests
Mar 7, 2024
695d2bb
Use successors to calculate power of z
Mar 7, 2024
1cb4eeb
Merge branch 'feat/4844-blob-data-config' into barycentric
Mar 8, 2024
8de270b
Add chunk bytes in PI
darth-cy Mar 10, 2024
c16a2ee
Adjust sectional offsets
darth-cy Mar 10, 2024
078032c
Change sectional note
darth-cy Mar 10, 2024
3c551cc
add chunk txbytes assignment
darth-cy Mar 11, 2024
6d440f8
Correct assignments
darth-cy Mar 11, 2024
ea27521
export assigned bytes from blob data
roynalnaruto Mar 11, 2024
b6571be
minor
roynalnaruto Mar 11, 2024
91d068d
also export chunk data digest
roynalnaruto Mar 11, 2024
45494a0
assign2 wip
roynalnaruto Mar 11, 2024
a4b9496
Add chunk txbytes hash to pi hash
darth-cy Mar 11, 2024
a84d6c9
Correct hash component
darth-cy Mar 11, 2024
9072855
Correct data bytes assignment (padding)
darth-cy Mar 11, 2024
ff72ce2
Correct chunk txbytes padding assignments
darth-cy Mar 11, 2024
5db2aeb
Correct boundary idx counting
darth-cy Mar 11, 2024
6b71fa2
Add chunk txbytes to keccak inputs
darth-cy Mar 11, 2024
bd979ea
Correct coinbase and difficulty
darth-cy Mar 12, 2024
8cba41b
fmt
darth-cy Mar 12, 2024
cb12ed3
Add BarycentricEvaluationAssignments and make inputs to barycentric e…
Mar 12, 2024
d7abc84
assign2 does some checks
roynalnaruto Mar 12, 2024
768adcd
Merge branch 'feat/4844-blob-data-config' into barycentric
roynalnaruto Mar 12, 2024
26473dc
equate exports of barycentric to exports of blob data config
roynalnaruto Mar 12, 2024
6d6df25
also return the challenge (after modulus)
roynalnaruto Mar 13, 2024
df6ddd5
Control test suite
darth-cy Mar 13, 2024
b1c9115
fix challenge equality and export challenge/evaluation LE bytes
roynalnaruto Mar 13, 2024
beb40be
Adjust debugging suite
darth-cy Mar 14, 2024
2ee9de4
Constraint differential
darth-cy Mar 14, 2024
9a996d9
Constraint differential
darth-cy Mar 14, 2024
82c1bce
Constraint differential
darth-cy Mar 14, 2024
fd15c7e
Correct column type'
darth-cy Mar 14, 2024
34b9afa
Constraint differential
darth-cy Mar 14, 2024
8e09113
Correct assignment spacing
darth-cy Mar 14, 2024
8ba816e
Recover constraint
darth-cy Mar 14, 2024
4931914
Test Differential
darth-cy Mar 14, 2024
034b667
Remove debug flags
darth-cy Mar 14, 2024
155aa49
Constraint differential
darth-cy Mar 14, 2024
fa43637
Add debug flags
darth-cy Mar 14, 2024
32253cc
Correct idx increments
darth-cy Mar 14, 2024
725e97f
update batch_pi_hash preimage to be blob-compatible
kunxian-xia Mar 14, 2024
da3cf7e
fix preimages' len
kunxian-xia Mar 14, 2024
84c88fa
Adjust debug flags
darth-cy Mar 14, 2024
0109b7c
Add debug flags
darth-cy Mar 14, 2024
f0c0fc8
Add debug flags
darth-cy Mar 14, 2024
d43180b
Adjust debug flags
darth-cy Mar 14, 2024
1e6ed8f
fix batch_pi_hash input_len
kunxian-xia Mar 14, 2024
ab196c0
add equality between chunk_data_digests and chunk_pi_hash's preimage
kunxian-xia Mar 14, 2024
3798fd4
fix: return assigned values instead of witness cells for challenge/ev…
roynalnaruto Mar 14, 2024
0838626
Add new hash preimages
darth-cy Mar 14, 2024
ba419ee
Add borrow
darth-cy Mar 14, 2024
fc33c2b
Adjust imports
darth-cy Mar 14, 2024
447dc0f
Remove debug flags
darth-cy Mar 14, 2024
8842451
fmt
darth-cy Mar 14, 2024
f977a8c
Constraint depth consistency in longlist decoding
darth-cy Mar 15, 2024
9bb6ef9
Revert "Constraint depth consistency in longlist decoding"
darth-cy Mar 15, 2024
5ed8c1e
Recover variadic test
darth-cy Mar 15, 2024
a3bbc55
Merge remote-tracking branch 'scroll/barycentric' into feat/copy-blob…
kunxian-xia Mar 15, 2024
e42f975
enable z and y equality check
kunxian-xia Mar 15, 2024
a7cc333
apply comments
kunxian-xia Mar 16, 2024
ef17f0b
Correct mock data
darth-cy Mar 17, 2024
d31d59b
clippy
darth-cy Mar 17, 2024
bcf73a4
Add comments
darth-cy Mar 18, 2024
98e2c16
fmt
darth-cy Mar 18, 2024
34121db
Remove copy constraint for misallighment
darth-cy Mar 18, 2024
80383f8
Change copy constraints to lookups
darth-cy Mar 18, 2024
6198ea4
Remove debug flags
darth-cy Mar 18, 2024
92b088d
Remove unnecessary return
darth-cy Mar 18, 2024
1c12b9a
fmt
darth-cy Mar 18, 2024
440916e
fmt
darth-cy Mar 18, 2024
8131127
Correct documentation
darth-cy Mar 18, 2024
23617f7
fmt
darth-cy Mar 18, 2024
ed2cd92
Merge remote-tracking branch 'scroll/feat/4844-chunk' into feat/blob-…
kunxian-xia Mar 18, 2024
fa565c0
Merge remote-tracking branch 'scroll/feat/4844-chunk-pi' into feat/bl…
kunxian-xia Mar 18, 2024
ada4e56
Feat/4844 Add Missing Chunk Parts (#1154)
darth-cy Mar 18, 2024
99c22fa
fix
kunxian-xia Mar 19, 2024
9d55e06
Fix: assign z_digest using load_u256 method (#1155)
kunxian-xia Mar 19, 2024
40a8848
Fix bugs in integration test (#1160)
kunxian-xia Mar 22, 2024
303475b
put reth-primitives at dev-dependency (#1166)
kunxian-xia Mar 22, 2024
75572e0
bump c-kzg from 0.4.2 to 1.0.0
kunxian-xia Mar 22, 2024
cef667c
Update v2.0.7-patch-tungstenite for ethers utility
darth-cy Mar 24, 2024
cd4c57a
Merge branch 'develop' into feat/blob-4844-da-cargo-resolve
darth-cy Mar 24, 2024
7203542
Resolve new cargo
darth-cy Mar 24, 2024
d6421ae
Update | Fix | Refactor | Unit Tests (#1167)
roynalnaruto Mar 25, 2024
5d1f3ac
Merge remote-tracking branch 'scroll/feat/blob-4844-da-cargo-resolve'…
lispc Mar 25, 2024
eca92a3
Merge remote-tracking branch 'scroll/develop' into feat/blob-4844-da
lispc Mar 25, 2024
726d84f
Merge remote-tracking branch 'scroll/develop' into feat/blob-4844-da
lispc Mar 25, 2024
b2205ec
clean deps
lispc Mar 25, 2024
41cb87e
clean deps: revm
lispc Mar 25, 2024
bef05a7
remove reth dep
lispc Mar 25, 2024
ed36ea4
revert COINBASE changes
lispc Mar 25, 2024
8782cd0
refactor: changes based on review of PR#1167 (#1172)
roynalnaruto Mar 25, 2024
abc57a5
big arrays replaced by vec and passed by ref (#1178)
roynalnaruto Mar 26, 2024
ab526a2
Check that chunk_idx increases on boundaries (#1173)
z2trillion Mar 26, 2024
df3a608
hash selector should only exist for digest rlc section | minor refact…
roynalnaruto Mar 26, 2024
b2fa4eb
Refactor and Optimise (#1179)
roynalnaruto Mar 27, 2024
b9504c0
pick fixes for testing...
lispc Mar 28, 2024
b2962cf
Fix copy duplicated comments (#1183)
z2trillion Mar 28, 2024
7bca88d
tmp
lispc Mar 28, 2024
0601c2d
Merge branch 'feat/blob-4844-da' of github.com:scroll-tech/zkevm-circ…
lispc Mar 28, 2024
6046b40
Feat/Blob 4844 Chunk-level Patch (#1180)
darth-cy Mar 28, 2024
74f2d8f
Feat/Blob 4844 Chunk-level TxCircuit CCC (#1188)
darth-cy Mar 29, 2024
dc64e09
better chunk proof marsha;
lispc Mar 29, 2024
b0a0d8a
Merge branch 'feat/blob-4844-da' of github.com:scroll-tech/zkevm-circ…
lispc Mar 29, 2024
32d3c9d
chunk-prover: check proof after generated
lispc Mar 12, 2024
c2dc1f7
log vk commit
lispc Mar 29, 2024
39742b1
improve prover verification
lispc Mar 29, 2024
90bb8f2
Refactor | Clippy (#1187)
roynalnaruto Mar 29, 2024
24044d4
fix q_step_first in evm circuit
lispc Mar 29, 2024
d60459e
Merge branch 'feat/blob-4844-da' of github.com:scroll-tech/zkevm-circ…
lispc Mar 29, 2024
8d18161
Feat/Blob 4844 PICircuit Chunk TxBytes Condense (#1189)
darth-cy Mar 29, 2024
4ff5305
fix rand table
lispc Mar 30, 2024
35aab2e
Merge branch 'feat/blob-4844-da' of github.com:scroll-tech/zkevm-circ…
lispc Mar 30, 2024
653f432
better log
lispc Mar 30, 2024
5277a7b
fix halo2 vk
lispc Mar 30, 2024
1540815
Merge branch 'develop' into feat/blob-4844-da
roynalnaruto Mar 30, 2024
1ba3af0
add more logs for batch info
lispc Apr 1, 2024
2f5a382
export BatchHash for testing purpose
kunxian-xia Apr 1, 2024
6e2f321
add blob_assignments method
kunxian-xia Apr 1, 2024
094450f
[FIX] big-endianness for blob poly from bytes (#1191)
roynalnaruto Apr 1, 2024
15cfd66
Add missing PI bytes component (#1192)
darth-cy Apr 1, 2024
85b79e5
Add more tests for BlobData struct (#1194)
z2trillion Apr 2, 2024
f75cd22
Rename N_BYTES_31 and N_BYTES_32 (#1193)
z2trillion Apr 2, 2024
837544f
Fix/Remove Individual L2 TxHash from Keccak (#1197)
darth-cy Apr 3, 2024
4f5c3bb
include selectors from blob data config (#1200)
roynalnaruto Apr 3, 2024
055a1f0
Add feature `strict-ccc` for precheck panic. (#1003)
silathdiir Oct 25, 2023
1bfef6a
include selectors from blob data config (#1200)
roynalnaruto Apr 3, 2024
596d9c1
Merge branch 'feat/blob-4844-da' of github.com:scroll-tech/zkevm-circ…
lispc Apr 5, 2024
5ff50fb
Merge branch 'v0.10' into feat/blob-4844-da
lispc Apr 5, 2024
cdb8346
optimize follower ccc
lispc Mar 21, 2024
30b6c86
Merge remote-tracking branch 'scroll/develop' into feat/blob-4844-da
lispc Apr 5, 2024
632a790
fix ccc post processing
lispc Apr 5, 2024
842d0c1
disable default mode ci
lispc Apr 6, 2024
e1cad6f
fix k256 sig verify: normalize sig
lispc Apr 7, 2024
8e7e644
lint
lispc Apr 7, 2024
bcba50d
Merge branch 'develop' into feat/blob-4844-da
lispc Apr 8, 2024
d47fa45
Merge branch 'develop' into feat/blob-4844-da
lispc Apr 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,164 changes: 683 additions & 481 deletions Cargo.lock

Large diffs are not rendered by default.

22 changes: 16 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,11 @@ license = "MIT OR Apache-2.0"
[workspace.dependencies]
anyhow = "1.0"
ark-std = "0.3"
base64 = "0.13.0"
ctor = "0.1"
env_logger = "0.10"
ethers = { version = "=2.0.7", features = ["ethers-solc"] }
ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite", features = ["scroll"] }
ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7", features = ["scroll"] }
ethers-providers = "=2.0.7"
ethers-signers = "=2.0.7"
ff = "0.13"
Expand All @@ -44,6 +45,7 @@ num = "0.4"
num-bigint = "0.4"
num-traits = "0.2"
pretty_assertions = "1.0"
once_cell = "1.17"
rand = "0.8"
rand_chacha = "0.3"
rand_xorshift = "0.3"
Expand All @@ -60,19 +62,27 @@ strum_macros = "0.25"
subtle = "2.4"
tokio = { version = "1.13", features = ["macros", "rt-multi-thread"] }
url = "2.2"
revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-fix" }
c-kzg = "1.0.0"

[patch.crates-io]
ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite" }
ethers-providers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite" }
ethers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite" }
ethers-etherscan = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite" }
ethers-signers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7-patch-tungstenite" }
ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
ethers-providers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
ethers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
ethers-etherscan = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
ethers-signers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
gobuild = { git = "https://github.com/scroll-tech/gobuild.git" }
halo2curves = { git = "https://github.com/scroll-tech/halo2curves", branch = "v0.1.0" }

[patch."https://github.com/privacy-scaling-explorations/halo2.git"]
halo2_proofs = { git = "https://github.com/scroll-tech/halo2.git", branch = "v1.1" }
[patch."https://github.com/privacy-scaling-explorations/poseidon.git"]
poseidon = { git = "https://github.com/scroll-tech/poseidon.git", branch = "main" }

[patch."https://github.com/privacy-scaling-explorations/bls12_381"]
bls12_381 = { git = "https://github.com/scroll-tech/bls12_381", branch = "feat/impl_scalar_field" }



# Definition of benchmarks profile to use.
[profile.bench]
Expand Down
10 changes: 8 additions & 2 deletions aggregator/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,27 @@ license.workspace = true
eth-types = { path = "../eth-types" }
zkevm-circuits = { path = "../zkevm-circuits" }


ark-std.workspace = true
env_logger.workspace = true
ethers-core.workspace = true
hex.workspace = true
log.workspace = true
itertools.workspace = true
once_cell.workspace = true
serde.workspace = true
serde_json.workspace = true
rand.workspace = true

halo2-base.workspace = true
halo2-ecc.workspace = true
halo2_proofs.workspace = true
snark-verifier.workspace = true
snark-verifier-sdk.workspace = true

revm-precompile.workspace = true
c-kzg.workspace = true
num-bigint.workspace = true

revm-primitives = "3.1.0"

[features]
default = [ ]
Expand Down
8 changes: 8 additions & 0 deletions aggregator/src/aggregation.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,18 @@
/// Config to evaluate blob polynomial at a random challenge.
mod barycentric;
/// Config to constrain blob data
mod blob_data;
/// Circuit implementation of aggregation circuit.
mod circuit;
/// Config for aggregation circuit
mod config;
/// config for RLC circuit
mod rlc;

pub(crate) use barycentric::{
interpolate, AssignedBarycentricEvaluationConfig, BarycentricEvaluationConfig, BLS_MODULUS,
};
pub(crate) use blob_data::BlobDataConfig;
pub use circuit::AggregationCircuit;
pub use config::AggregationConfig;
pub(crate) use rlc::RlcConfig;
Loading