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
イーサリアムスケーリングの背景と概要
Search
Osuke
April 26, 2018
Technology
2
2.3k
イーサリアムスケーリングの背景と概要
Osuke
April 26, 2018
Tweet
Share
More Decks by Osuke
See All by Osuke
特許データを使ったマルチモーダルAIの検証事例@LLMProd#4
osuke
0
140
dbtを中心に据えた データ分析とプロダクト開発
osuke
1
920
LayerX Privacy Tech事業部紹介 Tech編
osuke
0
140
(SCIS2021) Anonify: プライバシーを保護した 検証可能な状態遷移モジュール
osuke
1
340
Rustで実装された AWS Nitro Enclaves CLIを読む
osuke
0
310
Rustのパフォーマンスに関するTips
osuke
3
2.7k
ARM TrustZone入門 / ARM TrustZone intro
osuke
3
8k
Anonify
osuke
3
960
Rustのasync/awaitとスケジューラの話 / rust-async-await
osuke
9
3.7k
Other Decks in Technology
See All in Technology
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
隣接領域をBeyondするFinatextのエンジニア組織設計 / beyond-engineering-areas
stajima
1
270
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
7
810
複雑なState管理からの脱却
sansantech
PRO
1
140
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
250
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
220
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
470
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
210
TypeScript、上達の瞬間
sadnessojisan
46
13k
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Thoughts on Productivity
jonyablonski
67
4.3k
Being A Developer After 40
akosma
86
590k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Six Lessons from altMBA
skipperchong
27
3.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Ruby is Unlike a Banana
tanoku
97
11k
Become a Pro
speakerdeck
PRO
25
5k
Transcript
ΠʔαϦΞϜεέʔϦϯάͷ എܠͱ֓ཁ 2018/4/26 Osuke
Osuke @zoom_zoomzo - blog - dApp - twitter - ϑϦʔϥϯε
- 2017ळࠒ͔ΒϒϩοΫνΣʔϯΛษڧ - ౦େੜ໋ཧֶ෦ଔ
1ɽεέʔϥϏϦςΟɾτϦϨϯϚ 2ɽεέʔϦϯάιϦϡʔγϣϯ ɹ2.1ɹSidechains ɹ2.2ɹState Channels ɹ2.3ɹSharding
1. Scalablity Trilemma
Scalablity Trilemma 2ͭͷཁૉΛຬͨ͢ͷՄೳ͚ͩͲɺ 3ͭಉ࣌ʹຬͨ͢ͷ͕͍͠ʂ ίετͰωοτϫʔΫʹࢀՃՄೳ ेʹ߈ܸίετ͕ߴ͍ ωοτϫʔΫશମͰߴ͍ॲཧೳྗ ࢄੑɿ ҆શੑɿ εέʔϥϏϦςΟɿ
ݱঢ়ɾɾɾ εέʔϥϏϦςΟ ࢄੑ ҆શੑ ࢄੑͱ҆શੑΛߴਫ४ʹอͬͨ·· εέʔϥϏϦςΟΛ৳͍͖͍ͯͨ͠ʂ ݕূϊʔυͷܭࢉϦιʔε͕ ϘτϧωοΫʹɻ
1ɽࢄੑɿϊʔυʹඞཁͳܭࢉϦιʔεΛ͘อͭͨΊʹɺ ʢBlock Gas LimitΛ্͛ͯμϝʣ 2ɽ҆શੑɿίϯηϯαεͷηΩϡϦςΟΛอͪɺ ʢϋογϡύϫʔΛԼͤͯ͞μϝʣ 3ɽεέʔϥϏϦςΟɿωοτϫʔΫશମͰΑΓߴ͍ॲཧೳྗΛ࣋ͭ εέʔϥϏϦςΟ ࢄੑ ҆શੑ
→ϝΠϯνΣʔϯͰͷݕূ࡞ۀΛ࠷খԽ͢Δඞཁੑ →શͯͷTxΛશͯͷϊʔυ͕ݕূ͠ͳͯ͘ࡁΉΑ͏ͳํ๏
S S* Tx ঢ়ଶͱɺ - ΞΧϯτߴ - φϯε - EVMίʔυϋογϡ
- ετϨʔδϧʔτ →ϒϩοΫνΣʔϯͷঢ়ଶΛม͑Δ͜ͱʹ ܭࢉϦιʔε͕ඞཁʹͳΔ ͦͦͳͥϊʔυܭࢉϦιʔε͕ඞཁͳͷ͔ →τϥϯβΫγϣϯɾϒϩοΫΛݕূ͢Δ͜ͱʹ ܭࢉϦιʔε͕ඞཁʹͳΔ →ΠʔαϦΞϜεςʔτϚγϯ
ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ͢Δ ΠʔαϦΞϜʹ͓͚ΔεέʔϦϯάɺ ͱ͍͏Ξϓϩʔν
2ɽΠʔαϦΞϜͷεέʔϦϯάιϦϡʔγϣϯ ɾ1st layer → Sharding ɾ2nd layer → Sidechains, State
Channels
2.1ɹSidechains
Global State ʢ҆શʣ Local State ʢ҆શ͡Όͳ͍ʣ S0 → S1 →ɾɾɾ
Sn தؒঢ়ଶભҠ Flaud Proofsɿ ෆਖ਼ߦҝʹର͢Δਖ਼ੑͷূ໌ Sidechains (Plasma) αΠυνΣʔϯ →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ
2.2 State Channels
Global State ʢ҆શʣ தؒঢ়ଶભҠ State Channels (Raiden Network) S0 →
S1 →ɾɾɾ→ Sn-1 → Sn OPEN CLOSE →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ
Global State ʢ҆શʣ தؒঢ়ଶભҠ State Channels (Raiden Network) ࠷৽Ͱͳ͍StateΛ ίϛοτ͠Α͏ͱ͢ΔͱϖφϧςΟʂ
S0 → S1 →ɾɾɾ→ Sn-1 → Sn →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ
2.3 Sharding
Sharding shard_id: 0 shard_id: 1 shard_id: 99 όϦσʔλʔ ɾɾɾ state:
S0 state: S1 state: S99 →ݕূΛฒྻԽͯ͠ܭࢉ →ϒϩοΫνΣʔϯͷঢ়ଶભҠΛ࠷খݶʹ Global State
Sharding shard_id: 0 shard_id: 1 shard_id: 99 ɾɾɾ T =
1
Sharding shard_id: 0 shard_id: 1 shard_id: 99 ɾɾɾ T =
2
Sharding shard_id: 0 shard_id: 1 shard_id: 99 ɾɾɾ T =
3
Ethereum 2.0 • Sharding • Casper • Stateless Clients Sidechains
• Plasma • Cosmos • Parity Bridge Truebit State Channels • Raiden Network • Counterfactual • FunFair …etc off-chain interactive verification εέʔϦϯάϓϩδΣΫτ
ΠʔαϦΞϜεέʔϦϯάͷϞνϕʔγϣϯ ࢄੑͱ҆શੑΛ٘ਜ਼ʹ͢ΔͷNG ϝΠϯνΣʔϯͰͷόϦσʔγϣϯ࡞ۀʢঢ়ଶભҠʣΛ࠷খԽ ϝΠϯνΣʔϯͱͷ҆શͳStateͷಉظ͕՝