Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Unofficial Scroll ZK EVM Code Review
Search
Cheng JIANG
September 15, 2023
Research
0
81
Unofficial Scroll ZK EVM Code Review
Cheng JIANG
September 15, 2023
Tweet
Share
More Decks by Cheng JIANG
See All by Cheng JIANG
XCM_V2概览与去中心化的Liquid_Staking方案.pdf
alexcj96
0
69
Dive into Scroll ZkEVM
alexcj96
0
100
Other Decks in Research
See All in Research
精度を無視しない推薦多様化の評価指標
kuri8ive
1
340
渋谷Well-beingアンケート調査結果
shibuyasmartcityassociation
0
380
Elix, CBI2024, スポンサードセッション, Molecular Glue研究の展望:近年の進展とAI活用の可能性
elix
0
120
ソフトウェア研究における脅威モデリング
laysakura
0
1.2k
文書画像のデータ化における VLM活用 / Use of VLM in document image data conversion
sansan_randd
2
420
LiDARとカメラのセンサーフュージョンによる点群からのノイズ除去
kentaitakura
0
240
Weekly AI Agents News! 12月号 論文のアーカイブ
masatoto
0
130
アプリケーションから知るモデルマージ
maguro27
0
230
クロスセクター効果研究会 熊本都市交通リノベーション~「車1割削減、渋滞半減、公共交通2倍」の実現へ~
trafficbrain
0
340
[輪講] Transformer Layers as Painters
nk35jk
4
580
メタヒューリスティクスに基づく汎用線形整数計画ソルバーの開発
snowberryfield
3
680
LLM時代にLabは何をすべきか聞いて回った1年間
hargon24
1
590
Featured
See All Featured
Embracing the Ebb and Flow
colly
84
4.5k
It's Worth the Effort
3n
183
28k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Writing Fast Ruby
sferik
628
61k
Fireside Chat
paigeccino
34
3.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Docker and Python
trallard
43
3.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The World Runs on Bad Software
bkeepers
PRO
66
11k
Transcript
Unofficial Scroll ZK EVM Code Review https://linktr.ee/alexcj96
Summary - Why ZK EVM works? - Architecture - Tech
stack comparaison - Arithmetization - Trace generation - Gate configuration - Circuit tools - Some opcode gadgets - Public input circuit - Synthesize - Combining with halo2 - Observation
Why ZK EVM works? ❖ EVM is a State Machine
❖ Public-key cryptography ➢ Verify txs all represent users' intention ❖ Blockchain consensus ➢ Verifier ➢ Previous state root ❖ MPT ➢ Verify initial state ➢ Verify new root ❖ ZK ➢ Succinctness ➢ Lookup Arguments ❖ Ethereum as a DA Layer
Architecture
Tech stack comparaison
Arithmetization
Trace generation - flow (scroll has simplified this)
Trace generation - types (simplified)
Gate configuration - flow
Gate configuration - gadgets Add cb constraints etc
Gate configuration - lookup
Circuit tools - cell manager
Circuit tools - constraint builder
Circuit tools - constraint builder
Circuit tools - utils
Some opcode gadgets - AddSub
Some opcode gadgets - ReturnRevert (simplified)
Public input circuit
Public input circuit
Synthesize
Combining with halo2
Combining with halo2
Observation - Scroll doesn’t support self destruct EVM opcode -
Scroll’s MPT tree uses poseidon circuit - Scroll uses chain_id and block_number to calculate block_hash!!! - Scroll still uses SuperCircuit which is very zk-unfriendly - Don’t read PSE’s code, it’s not production ready!!! - …
Thanks!