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
Plasma snapp's very rough explanation
Search
sgtn
October 02, 2018
Technology
2
340
Plasma snapp's very rough explanation
Plasma snappの概要をつかもう
sgtn
October 02, 2018
Tweet
Share
More Decks by sgtn
See All by sgtn
war model
shogochiai
0
79
Meta Contract on Steroids
shogochiai
0
83
Workshop: Solidity with LLM
shogochiai
2
150
Why ERC-7546 and where it is going.
shogochiai
0
210
UUPS2.pdf
shogochiai
0
43
風の時代とメタ国家
shogochiai
0
270
様相μ計算による計算論的な民主主義の健全性の評価 ~自律分散組織(DAO)による政体の超越性に向けて~ The theory of democraticity evaluation via modal mu-calculus for suggesting the supremacy of DAO for Nations.
shogochiai
0
37
Web3時代のDAOによるソシエタルデザイン
shogochiai
0
150
ptaa.app 解説資料
shogochiai
0
94
Other Decks in Technology
See All in Technology
Platform Engineeringで クラウドの「楽しくない」を解消しよう
jacopen
4
120
OPENLOGI Company Profile for engineer
hr01
1
20k
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
210
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
320
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
4
6.5k
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
110
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
330
AIエージェント元年@日本生成AIユーザ会
shukob
1
240
JAWS DAYS 2025 アーキテクチャ道場 事前説明会 / JAWS DAYS 2025 briefing document
naospon
0
2.6k
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
350
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
Amazon Aurora のバージョンアップ手法について
smt7174
2
180
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
Writing Fast Ruby
sferik
628
61k
Git: the NoSQL Database
bkeepers
PRO
428
65k
Into the Great Unknown - MozCon
thekraken
35
1.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
Building Adaptive Systems
keathley
40
2.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Music & Morning Musume
bryan
46
6.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Transcript
Plasma snapp ࡶղઆ zk-SNARKsͷྗͰexit game͍ΒͣʹͳͬͨPlasma
barryWhitehatͱmiximus miximus͔Βͷroll_up͔Βͷsnapp UnwindingͷIncentivising Plasmaͱexit game DepositͱExitͷ՝ͱ؇ Data Availabilityͷ՝ͱ؇ SNARK Proofੜͷίετ
1st/2nd layer cryptoeconomics
barryWhitehatͱmiximus
None
1. Trusted Setup ʢ৴པϕʔεͷΩʔੜʣ 2. Proof Generation ʢূ໌Λ࡞Δʣ 3. Verification
ʢূ໌Λݕূ͢Δʣ SNARKͷखॱ
m0t0k1ch1͞Μͷਤղ
1. Trusted Setup: ɹBobݱ࣮తʹMPCͰ伴Λ࡞Δ ɹগͳ͘ͱҰਓ͕伴Λফࣦ͢Ε෮ݩෆՄ ɹZcash͕͜ΕͰ࣮࣭ͬͯͯσϑΝΫτ
2. Proof Generation: ɹS(ओʹൿີ伴)Λ༻͍ͯ ɹͳΜΒ͔ͷϝοηʔδͷϋογϡΛ࡞Δ ɹ(barrymerkle rootΛHʹ༻͍Δ͜ͱଟ͠) ɹ ɹpk(proof key)Λ༻͍ͯ
ɹproof of correct executionΛ࡞Δ
3. Verification: ɹ#2Ͱ࡞ͬͨprfͱHͦͯ͠ #1Ͱ࡞ͬͨvkͰ ɹProof of Correct Executionͷ ɹ݁ՌͷBoolΛಘΔ
barryͷίʔυਖ਼Ԛ͍ ɹɾpk͕Verifierͷείʔϓʹ͋Δʢvk͔͠ݟΕͪΌͩΊʣ ɹɾͭ·ΓߦؒಡΜͰͶతͳϝοηʔδͷ͋Δίʔυ ɹɾ్தͰC++ͷbarryۘίʔυʹॲཧ͕ҠΔ ɹɾgenWitness͕ؔProofΛੜ͕ͯͯ͠͵Δ͍
iden3ͷ͕JSͩ͠ΩϨΠ ֤ؔͷ͕m0t0k0ch1μΠϠάϥϜͱରԠ͍ͯ͠Δ
ࢉज़ճ࿏(ΞϦεϝςΟοΫαʔΩοτ) ੜDSL࡞ͬͯΔͷͰΑ͛͞ ͜ͷΜ͕QAPͷ ֻ͚ࢉήʔτͬΆ͍
ਖ਼ #2ͷProof·ΘΓ͕Θ͔ΒΜ
Ͱ͍͖ͬͯ‷( ɾŷɾ) ̑ و
Plasmaͱexit game ྫɿ Operator͕ 100ԯԁͷUTXOΛੜͯ͠ exitਃ͢Δ
Plasmaͱexit game PlasmaMVPͷMass Exitʢ࿉ۚज़ࢣରࡦʣ
Plasmaͱexit game 100ԯԁExit ۭͬΆͷDepositʹରͯ͠ ߦΘΕΔ Ϣʔβʔ͕ࢹͯ͠Ε ࿉ۚज़ࢣඞͣϏϦ
ϢʔβʔશTxڽࢹͯ͠ͳ͍ͱΞΧϯ ʢ͔ͩΒPlasmaCash͕ੜ·Εͨʣ
MassExitͳ͠ʹPlasmaMVP͑ͨΒ PlasmaCashͷCoinDepositͷׂͱ͔·ͳ͍Ͱ͍͍
miximus͔Βͷroll_up͔Βͷsnapp ݁ߏίʔυ͍ճ͠
miximus͔Βͷroll_up͔Βͷsnapp StateΛMerkleTrieʹ͢Δ ྻΛτʔφϝϯτߏʢೋʣʹͯ͠ࢦΛٕ͢ Merkleroot (m0t0k1ch1μΠϠάϥϜͷʮHʯ, ͭ·ΓWitness) ΛProofͱڞʹPlasmaContractʹఏग़ Operator͕ StateTrieͷLeafߋ৽ʢߴߋ৽ʣʹѱ͞Ͱ͖ͳ͍
miximus͔Βͷroll_up͔Βͷsnapp Deposit࣌ʹ͔͠LeafΛ৽ن࡞Ͱ͖ͳ͍ Withdrawalྃͨ͠ΒLeafΛআ͢Δ Deposit BlockͱExit BlockʹஷΊͯΔTx͕ શ෦͚͔ͯΒɺStateߋ৽͕Ͱ͖Δ Operator͕Withholdͨ͠Β3ͬͯ OperatorΛަͯ͠ઌ(tip)ϒϩοΫΛrollback͢Δ (ޙड़͢ΔunwindingϝΧχζϜ)
DepositͱExitͷ՝ͱ؇ ͳΜ͔͋ΔΒ͍͚͠ͲΑ͘Θ͔ͬͯͳ͍ͷͰඈ͢
Data Availabilityͷ՝ͱ؇ Ϣʔβʔ(Light client)͕ ୭࠷৽ϒϩοΫͷใΛΒͳ͍ͱ͖ ୭WitnessΛ࡞Εͳ͍͠୭TxΛ࡞Εͳ͍ (Data Unavailableͳঢ়گ) UnwindingϝΧχζϜ͕͜ΕΛ؇͢Δ
UnwindingͷIncentivising ࣍ͷOperatorʹ୭ͰͳΕΔ ͦͷίετΛ͏ରՁ͕ඞཁ ͰPlasmaࢠνΣʔϯҡ࣋ͷͨΊʹϚγϯͱgas͕͍Δ josojoͷվగ൛ఏҊʹ ʮ1st operatorʹcollateral(୲อۚ)Λ༻ҙͤ͞Ε2ndҎ߱ ͦΕΛΒ͑Δʯͱ͍͏ఏҊ͕͕͋ͬͨ ͦΕރׇ͢ΔͱSgࢥ͏ खྉΛͱΔPlasmaͳΒखྉͷߦ͖ઌߋ৽Մඞਢ
SNARK Proofੜͷίετ ී௨ͷϚγϯͰ5~10͔͔࣌ؒΔͱ͔ͳΜͱ͔ νϡʔχϯά͢ΕʹͰ͖Δͱ͔ͳΜͱ͔ FPGAϨϕϧ͔Βࢉज़ճ࿏ʹಛԽͨ͠ϚγϯͳΒͲ͏͔ PlasmaͳΒOperator༻ͷ1ϊʔυ͚ͩͳͷͰ͍͚ͦ͏
1st/2nd layer cryptoeconomics 1st layerͰzk͓͏ͱࢥ͏ͱ18000ϊʔυͰ ಉ͡ܭࢉ͠ͳ͍ͱ ʹʼ 500tps tx onchainͷ൘ͰVitalik͕
specialized class of mining for zk ͷΛ͍ͯͨ͠ ʢ99% fault toleranceͬͯASICແޮʹ͢Δͱʣ
1st/2nd layer cryptoeconomics 2nd layerͷcryptoeconomicsʮϝΧχζϜσβΠ ϯͰಈ͘Α͏ʹ͍͍͚ͯ͠ͲɺνΣʔϯͷηΩϡ ϦςΟΛᆝଛ͢ΔͳΑʯͱ͍͏ͷʹͳ͍ͬͯΔɻ unwindingϝΧχζϜͱ͔·ͩΠϯηϯςΟϒͱ͠ ͯ͠ΐ΅ͯ͘ɺͦۚ͜Ͱ߈ܸ͞ΕͨΒEthereumϝΠ ϯνΣʔϯͷηΩϡϦςΟΛआΓΕͯΔͱݴ͑ͳ͍
͓ΘΓͰ͢