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
30
カルダシェフ文明の新世界秩序
shogochiai
0
33
ローカルシニョリッジ論:ASIに対するゲリラ戦術
shogochiai
1
45
生存のアーキテクチャ (United Locals for Suboptimal World)
shogochiai
0
46
Failure Sink 概説
shogochiai
0
31
なぜプリンターは裏切るのか?
shogochiai
0
72
war model
shogochiai
0
130
Meta Contract on Steroids
shogochiai
0
150
Workshop: Solidity with LLM
shogochiai
2
210
Other Decks in Programming
See All in Programming
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1.1k
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
260
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
210
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
4.2k
RailsのValidatesをSwift Macrosで再現してみた
hokuron
0
130
Claude Code Skill入門
mayahoney
0
440
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
160
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
500
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
160
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.6k
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
150
Windows on Ryzen and I
seosoft
0
400
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
160
The Pragmatic Product Professional
lauravandoore
37
7.2k
The Invisible Side of Design
smashingmag
302
51k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
230
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
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 తͳܝࣔ൘ΛΓ্͛Δ͖
࡞ͬͨΒΞφϯε͢ΔΜͰɺΈͳͰٞ͠·͠ΐ͏ʂ
͓ΘΓ