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
360
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Plasma snapp's very rough explanation
Plasma snappの概要をつかもう
sgtn
October 02, 2018
More Decks by sgtn
See All by sgtn
On Human Supremacy
shogochiai
0
49
カルダシェフ文明の新世界秩序
shogochiai
0
49
ローカルシニョリッジ論:ASIに対するゲリラ戦術
shogochiai
1
72
生存のアーキテクチャ (United Locals for Suboptimal World)
shogochiai
0
63
Failure Sink 概説
shogochiai
0
47
なぜプリンターは裏切るのか?
shogochiai
0
94
war model
shogochiai
0
170
Meta Contract on Steroids
shogochiai
0
170
Workshop: Solidity with LLM
shogochiai
2
220
Other Decks in Technology
See All in Technology
A Bag-of-Documents Model for Query Specificity
dtunkelang
0
120
人手不足への挑戦:車両保全を支えるIoTとクラウド内製化の道【SORACOM Discovery 2026】
soracom
PRO
0
110
数値で見る Microsoft MVP 〜Spec Kit と GitHub Copilot Agent で作るデータ可視化ダッシュボード〜
yutakaosada
0
150
Playwright × AI Agent でE2Eテストはどう変わるか AI駆動テストの可能性と実用検証の結果
taiga7543
2
900
現場をAIで動かす「フィジカル AI」の組み込み設計の考え方【SORACOM Discovery 2026】
soracom
PRO
0
120
Jitera Company Deck
jitera
0
620
ここは地獄!つらい朝会を体験することで、チームとしてのより良い振る舞いに気づくワークショップ / The stand-up meeting from hell in the game industry
scrummasudar
0
360
Vポイント分析基盤におけるデータモデリング20年史
taromatsui_cccmkhd
4
780
データエンジニアこそ組織のオントロジーに向き合うべき — 問いに答えるAIから、事業を動かすAIへ
gappy50
4
940
reFACToring
moznion
1
750
AI エージェント時代のデジタルアイデンティティ
fujie
0
220
それでも、技術なブログを書く理由 #kichijojipm / Why I Still Write Tech Blogs Even Now
shinkufencer
0
1.1k
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
390
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Paper Plane
katiecoart
PRO
2
52k
BBQ
matthewcrist
89
10k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
230
Code Reviewing Like a Champion
maltzj
528
40k
Six Lessons from altMBA
skipperchong
29
4.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
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ϝΠ ϯνΣʔϯͷηΩϡϦςΟΛआΓΕͯΔͱݴ͑ͳ͍
͓ΘΓͰ͢