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
110
Meta Contract on Steroids
shogochiai
0
120
Workshop: Solidity with LLM
shogochiai
2
180
Why ERC-7546 and where it is going.
shogochiai
0
250
UUPS2.pdf
shogochiai
0
51
風の時代とメタ国家
shogochiai
0
320
様相μ計算による計算論的な民主主義の健全性の評価 ~自律分散組織(DAO)による政体の超越性に向けて~ The theory of democraticity evaluation via modal mu-calculus for suggesting the supremacy of DAO for Nations.
shogochiai
0
53
Web3時代のDAOによるソシエタルデザイン
shogochiai
0
170
ptaa.app 解説資料
shogochiai
0
120
Other Decks in Technology
See All in Technology
re:Inventに行くまでにやっておきたいこと
nagisa53
0
800
ストレージエンジニアの仕事と、近年の計算機について / 第58回 情報科学若手の会
pfn
PRO
4
910
Dify on AWS 環境構築手順
yosse95ai
0
180
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
540
OPENLOGI Company Profile for engineer
hr01
1
46k
アノテーション作業書作成のGood Practice
cierpa0905
PRO
1
320
IBC 2025 動画技術関連レポート / IBC 2025 Report
cyberagentdevelopers
PRO
2
220
AIの個性を理解し、指揮する
shoota
3
520
.NET 10のBlazorの期待の新機能
htkym
0
160
[re:Inent2025事前勉強会(有志で開催)] re:Inventで見つけた人生をちょっと変えるコツ
sh_fk2
1
1k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
170
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
490
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Rails Girls Zürich Keynote
gr2m
95
14k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
170
Writing Fast Ruby
sferik
630
62k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A Modern Web Designer's Workflow
chriscoyier
697
190k
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ϝΠ ϯνΣʔϯͷηΩϡϦςΟΛआΓΕͯΔͱݴ͑ͳ͍
͓ΘΓͰ͢