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の制約と緩和
Search
sgtn
April 26, 2018
Programming
2
2.1k
Plasmaの制約と緩和
20180406麹町のPlasma#1イベントにて
sgtn
April 26, 2018
Tweet
Share
More Decks by sgtn
See All by sgtn
On Human Supremacy
shogochiai
0
17
カルダシェフ文明の新世界秩序
shogochiai
0
27
ローカルシニョリッジ論:ASIに対するゲリラ戦術
shogochiai
1
37
生存のアーキテクチャ (United Locals for Suboptimal World)
shogochiai
0
39
Failure Sink 概説
shogochiai
0
16
なぜプリンターは裏切るのか?
shogochiai
0
47
war model
shogochiai
0
120
Meta Contract on Steroids
shogochiai
0
140
Workshop: Solidity with LLM
shogochiai
2
190
Other Decks in Programming
See All in Programming
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
630
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
今から始めるClaude Code超入門
448jp
8
9.1k
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
210
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
230
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
280
Data-Centric Kaggle
isax1015
2
780
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
740
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
140
Package Management Learnings from Homebrew
mikemcquaid
0
230
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
330
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Everyday Curiosity
cassininazir
0
130
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
Accessibility Awareness
sabderemane
0
56
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Tell your own story through comics
letsgokoyo
1
810
Building AI with AI
inesmontani
PRO
1
710
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Transcript
Plasmaͷ੍ͱ؇
Sg / shogochiai - Matic Network - EXA Protocol -
Swingby Protocol - Cryptoeconomics Lab - ډॴ: decentralized - ݩ ΠϯυωγΞελʔτΞοϓΫϥελ - ݩ ौ୩ελʔτΞοϓΫϥελ - ؔ৺ɿྔࢠཧ,ਆܦՊֶ,ܕγεςϜ,ࢄίϯϐϡʔςΟϯά, ϦʔϯελʔτΞοϓ,ϦʔϯΞφϦςΟΫε,UXD,C2C,CTO,ࣗ ݾ৫Խ,͔Βͷ… Bitcoin,Ethereum,Tezos,Zilliqa,Cryptoeconomics,ethresear.ch tw: @_sgtn
Sg / shogochiai - Matic Network - EXA Protocol -
Swingby Protocol - Cryptoeconomics Lab - ډॴ: decentralized - ݩ ΠϯυωγΞελʔτΞοϓΫϥελ - ݩ ौ୩ελʔτΞοϓΫϥελ - ؔ৺ɿྔࢠཧ,ਆܦՊֶ,ܕγεςϜ,ࢄίϯϐϡʔςΟϯά, ϦʔϯελʔτΞοϓ,ϦʔϯΞφϦςΟΫε,UXD,C2C,CTO,ࣗ ݾ৫Խ,͔Βͷ… Bitcoin,Ethereum,Tezos,Zilliqa,Cryptoeconomics,ethresear.ch tw: @_sgtn decentralized ʮσΟηϯλϥΠζʯ͡Όͳͯ͘ʮςΟηϯτϥ ϥΠζυʯ ༻ޠΛਖ਼͍͖ͬͯ͘͠·͠ΐ͏
1. PlasmaΛղͨΒ͠Ί͍ͯΔͷ 2. ͦͷෳࡶ͞ͳͥඞཁ͔: ߈ܸऀͷࢹ͔Β 3. ࠷ޮͷΑ͍Plasmaͷֶश๏ ࠓ͓΅͑ͯؼͬͯΒ͍͍ͨ͜ͱ
1. PlasmaΛղͨΒ͠Ί͍ͯΔͷ 2. ͦͷෳࡶ͞ͳͥඞཁ͔: ߈ܸऀͷࢹ͔Β 3. ࠷ޮͷΑ͍Plasmaͷֶश๏ ࠓ͓΅͑ͯؼͬͯΒ͍͍ͨ͜ͱ ະख़ͳͳͷͰɺ
͋͘·Ͱͻͱͭͷ ཧղͷΓޱͷఏҊͱͯ͠
1. PlasmaΛղͨΒ͠Ί͍ͯΔͷ 2. ͦͷෳࡶ͞ͳͥඞཁ͔: ߈ܸऀͷࢹ͔Β 3. ࠷ޮͷΑ͍Plasmaͷֶश๏ ࠓ͓΅͑ͯؼͬͯΒ͍͍ͨ͜ͱ
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ PlasmaCashͷDeposit Coin Child chainͷதͷConsensus
PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication Deposit,Exit,Commit txͷblock withholding
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ PlasmaCashͷDeposit Coin Child chainͷதͷConsensus
PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication ઐ༻ޠ͕ଟ͍Ͱ͢Ͷ Deposit,Exit,Commit txͷblock withholding
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ PlasmaCashͷDeposit Coin Child chainͷதͷConsensus
PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication Unspent Trans(=TX)action Output Ͱ͢ Deposit,Exit,Commit txͷblock withholding
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
Deposit,Exit,Commit txͷblock withholding PlasmaCashͷDeposit Coin blockͷbroadcastͷ ނҙ͋Δ͍աࣦʹΑΔ ະఏग़ঢ়ଶ
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin ෆಛఆଟͰߦΘΕΔ ෆਖ਼withdrawal߈ܸͷ ରࡦͰ͢(witnessing) Deposit,Exit,Commit txͷblock withholding
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin Deposit,Exit,Commit txͷblock withholding ߦಈܦࡁֶ/ཧϞσϧͷࠞͬͨ͟ γεςϜ͔Βͷenforcement(ཁ)Ͱ ܥͷηΩϡΞ͞Λอূ͢Δํੑ
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin Deposit,Exit,Commit txͷblock withholding ࢠνΣʔϯϒϩοΫνΣʔϯͱ ίϯηϯαεΛ࣋ͪ͏ΔͷͰ ͦͷηΩϡϦςΟΛߟ͑Δ
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin Deposit,Exit,Commit txͷblock withholding PlasmaͱShardingͷ ҧ͍ʹഭΔ
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin Deposit,Exit,Commit txͷblock withholding Mass Exitͷ Rootchainෛՙʹର͢Δ mitigation(؇)
Mass Exitͱ͍͏Security Model Exit transactionʹର͢ΔChallenge UTXOͷඞཁੑ Child chainͷதͷConsensus PlasmaEthereumͳͷ͔ʁ Sidechainಉ࢜ͷCommunication
PlasmaCashͷDeposit Coin Deposit,Exit,Commit txͷblock withholding PlasmaSolidityѥछ tendermintΛ͑Δɻ νΣʔϯETH͡Όͳ͘Մ
1. PlasmaΛղͨΒ͠Ί͍ͯΔͷ 2. ͦͷෳࡶ͞ͳͥඞཁ͔: ߈ܸऀͷࢹ͔Β 3. ࠷ޮͷΑ͍Plasmaͷֶश๏ ࠓ͓΅͑ͯؼͬͯΒ͍͍ͨ͜ͱ
1. Block withholding߈ܸ 2. ෆਖ਼ͳwithdrawal
1. Block withholding߈ܸ 2. ෆਖ਼ͳwithdrawal
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ͍͚ͭͳ͘ͳͬͨΒ PostalkTwitterͰ ࣭͍ͩ͘͞
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ఢରత৫ͷ߈ܸʹର͢Δ SPOF(୯Ұো)Λආ͚ͭͭ SybilAttackରࡦͰίετΛ՝͢
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ PoWಉ࣌ʹൃݟͱ͍͏ͷ͕ ֬తʹ͋Γ͑Δ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ࢄτϥϯβΫγϣϯʹৄ͍͠ํʹ ٞʹՃΘ͍͚ͬͯͨͩΔͱخ͍͠Ͱ͢
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ϒϩοΫੜ͕ࢭ·Δͱ ίϯτϥΫτ࣮ߦૹۚͰ͖ͳ͍
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ExitRootchainʹtxΛ ॠؒతʹେྔʹ࡞͢ΔͨΊ Gas্͕Δ͠ ͷૹ͕ۚ٧·Γ͏Δ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ExitRootchainʹtxΛ ॠؒతʹେྔʹ࡞͢ΔͨΊ Gas্͕Δ͠ ͷૹ͕ۚ٧·Γ͏Δ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ఀࢭཧ༝͕ຖճҟͳΔ͜ͱ͕ఆ͞Ε ͦͷͨͼʹௐ͕ࠪඞཁɻ ͦͦఀࢭ͖͢Ͱͳ͍ɻ ސ٬ࢿ࢈ͷอશ͕ୈҰͰ ࠶։ೋͷ࣍ͱ͍͏ϓϥΠΦϦςΟ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYCͯ͠ban͢ΔΞΠσΞͱ͔ͨ·ʹݟΔ͕censorship- resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ PlasmaWPͰڙୗֹͷ҆ͳͲ ఆ͕ࣔ͞Ε͍ͯͳ͍ MVP࣮͝ͱʹҟͳͬͯ͘Δ
1. Block withholding߈ܸ - PoS୭ͰࢀՃͰ͖ͯ͠·͏ - 1epoch 1ਓ͚ͩϒϩοΫ࡞ΕΔ -
blocktimeҎ্hold͞ΕͨΒskipͱ͍͏҆ͳઃܭɺނҙͷskip ͳͷ͔ނোͳͷ͔Ԇͳͷ͔அͰ͖͍ͣ͠ʢ͓ͦΒ͘Ϗβϯν ϯނোϞσϧʁʣ - ͕ͨͬͯ͠ނҙʹࢭΊͨΓͰ͖Δ - ͦͷޙPlasmamass exitΛཁ͢Δ - Ұఆ࣌ؒͰexit͠ͳ͍ਓࢿۚऩ - (ίϛϡχςΟͰٞෆेʹݟ͑Δ͕) exitޙʹ࠶։࡞ۀΛ͢Δ - ํʹΑΔ͕evilͳwithholderͷcollateral(ڙୗ/୲อ)ऩ͢Δ - StakerΛKYC͓͍ͯͯ͠࠶։࣌ʹରΛban͢ΔΞΠσΞͱ͔ͨ ·ʹݟΔ͕censorship-resistance͕ͳ͘ͳΓ࣋ଓੑ͕ͳ͘ͳΔ ͪΐͬͱͨ͠ϓϩτίϧͷมߋ͕ censorship-resistance(ݕӾੑ)Λ ഁյ͢Δ͜ͱͷྫ
1. Block withholding߈ܸ 2. ෆਖ਼ͳwithdrawal
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ ϫΠϚπ͞ΜͷNIPoPoWεϥΠυΛಡΉͱ େม͕͞Α͘·ͱ·͍ͬͯ·͢
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ Bitcoinͷ΄͏͔ΒདྷͨਓʹͱͬͯHTLC͕ ͳ͡ΈͿ͔͍ײ͔͡ͱ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ ϫΠϚπ͞Μͷ PlasmaMVPಡղεϥΠυʹ͘Θ͍͠Ͱ͢
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ depositٗͷ͠Α͏͕ͳ͍ʢͣʣ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ Exit Spent Coin Exit Double Spent Exit with Invalid History ͳͲͷෆਖ਼Ҿग़ͷྨܕ͕͋Δ ৄ͘͠ karl.tech/plasma-cash-simple-spec
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ ٯʹ͍͏ͱɺdisputerʹ ेͳΠϯηϯςΟϒ͕ͳ͍ͱ ෆਖ਼ग़ۚਖ਼ʹͳͬͯ͠·͏ ଛࣦPlasma chain͔Βͷ࠷ޙͷग़ۚऀ͕ ඃΔܭࢉʹͳΔʢͣʣ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ ٯʹ͍͏ͱɺdisputerʹ ेͳΠϯηϯςΟϒ͕ͳ͍ͱ ෆਖ਼ग़ۚਖ਼ʹͳͬͯ͠·͏ ଛࣦPlasma chain͔Βͷ࠷ޙͷग़ۚऀ͕ ඃΔܭࢉʹͳΔʢͣʣ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ νΣʔϯ͕ૹۚ٧·ΓΛى͜͢ͷͰ εέʔϦϯάιϦϡʔγϣϯͱͯ͠ ·͘͠ͳ͍ঢ়گʹͳΔ
2. ෆਖ਼ͳwithdrawal - sidechainͷ2way-pegΛtrustlessʹ࡞Δཁ͕݅͋Δ - depositͷϑϩʔ - rootchainͷcontract addressʹlock
- ͦͷॲཧͷreceiptΛchild chianଆͷweb3͔Βࢹ - ͦͷϦεφʔͰchild chainଆʹUTXOΛ࡞ - withdrawalͰͷ߈ܸϑϩʔͱ؇ - ڙୗͱڞʹɺਖ਼ن͔ڏِ͔ෆ໌ͳҾ͖ग़͠τϥϯβΫγϣϯ͕Plasma chain͔Β rootchainͷίϯτϥΫτʹఏग़͞ΕΔʢҾUTXO_IDʣ - UTXO_ID͕࠷৽͔ͭਖ਼ͷͷͰ͋Εchallengeظؒத୭ҙٛΛਃཱͯ͠Δ͜ͱ ͕Ͱ͖ͳ͍ͣͳͷͰɺͦͷ··Ҿ͖ग़͞ΕΔ - ͦͷUTXO_IDΑΓ৽͍͠UTXO͕ݟ͔ͭͬͨ߹ɺdisputer(withdrawalΛࢹ͢Δ ਓ)ɺͦͷIDͱڞʹexitChallengeͱ͍͏ҟٞਃཱͯ͠ίϯτϥΫτΛ࣮ߦ͢Δ - νΣʔϯʹτϥϯβΫγϣϯ͕ͨ͘͞Μ࡞ΒΕΔ - ΞΧϯτϞσϧͰΔͱҟٞਃཱͯ͠ܭࢉίετ͕ΑΓߴ͍ʢͨͿΜPlasma chain ͷreceiptΛूܭ͢Δײ͡ʁʣ ΞΧϯτϞσϧߴෛՙͩ͠ શdisputer͕શϢʔβʔͷUTXOΛࢹ͢Δίετߴ͍ disputer͕શUTXOΛݟͳ͍ͰΑͨ͘͠ͷ͕PlasmaCash PlasmaCashͷղઆPlasma#2ʹৡΓ·͢
1. PlasmaΛղͨΒ͠Ί͍ͯΔͷ 2. ͦͷෳࡶ͞ͳͥඞཁ͔: ߈ܸऀͷࢹ͔Β 3. ࠷ޮͷΑ͍Plasmaͷֶश๏ ࠓ͓΅͑ͯؼͬͯΒ͍͍ͨ͜ͱ
ٞ gi ron
ׂͱϑϩʔܕͰϥΠτͳٞ twitter reddit telegram slack ετοΫܕͰϔϏʔͳٞ ethresear.ch EIP(github issue)
ӳޠͷ͔ٞ͠ͳ͍ ͕ ຊਓͷٞ͢Β͍͠
ྫ) ˏtanaka_bot_1 ͞ΜͷπΠʔτΛࢀߟʹৄࡉΛ٧ΊͯӳޠԽ
ϏλϦΫʮͨ͠ֈʯ
ຊޠ൛ ethresear.ch తͳܝࣔ൘ΛΓ্͛Δ͖
࡞ͬͨΒΞφϯε͢ΔΜͰɺΈͳͰٞ͠·͠ΐ͏ʂ
͓ΘΓ