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
ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other (D...
Search
Kenji Saito
PRO
September 23, 2020
Technology
0
210
ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other (Distributed) Ledger Technology
2020年9月23日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ハイパーレッジャーとその他の分散台帳技術」にて使用したスライドです。
Kenji Saito
PRO
September 23, 2020
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
デジタルトランスフォーメーションと民主主義 / Digital Transformation and Democracy
ks91
PRO
0
5
We Never Took the Kobayashi Maru Test Until Now. What Do You Think of Our Solutions? — Journeys of the Mind Through a No-Win Game
ks91
PRO
0
17
思いつきが武器になる:研究というゲームを始めよう / Ideas Are Your Equipments : Let the Game of Research Begin!
ks91
PRO
0
75
ロボットを雰囲気(ヴァイブ)でプログラミングするこどもたち / Children Vibe-Programming Robots
ks91
PRO
0
22
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 3
ks91
PRO
0
31
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 2
ks91
PRO
0
33
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
160
未来へのフォワードキャスト / Forward Cast to the Future
ks91
PRO
0
88
発表と総括 / Presentations and Summary
ks91
PRO
0
62
Other Decks in Technology
See All in Technology
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
170
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
21
11k
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
480
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
460
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
990
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
230
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
180
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
410
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
10k
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
110
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Language of Interfaces
destraynor
161
25k
Navigating Team Friction
lara
189
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
KATA
mclloyd
32
14k
Balancing Empowerment & Direction
lara
3
620
The Pragmatic Product Professional
lauravandoore
36
6.9k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Code Review Best Practice
trishagee
70
19k
Transcript
Chief Science Officer /
[email protected]
— — 2020-09-23 – p.1/46
https://speakerdeck.com/ks91 — — 2020-09-23 – p.2/46
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 20 P2P (Peer-to-Peer) ( 9 ) 2011 2018 2019 2019 2020 2020 → ( ) — — 2020-09-23 – p.3/46
Linux Foundation Hyperledger R3CEV Corda Facebook/Calibra The Libra Blockchain Web3
Foundatoin Polkadot ( ) — — 2020-09-23 – p.4/46
(Linux Foundation) Fabric (IBM), Sawtooth (Intel), Iroha ( ), Indy
(Sovrin), Besu (ConsenSys) Corda (R3) The Libra Blockchain (Facebook/Calibra) Polkadot (Web3) BBc-1 ( ) DLT — — 2020-09-23 – p.5/46
(BP : Blockchain Property ) BP-1 : BP-2 : BP-3
: ( ) BP-2 permissionless ( ) permissioned ( ) BP-2’ : — — 2020-09-23 – p.6/46
( ) BP-1 ( ), BP-2 ( ) BBc-1 f
: → BP-3 ( ) ( ) ( ) ← BP-2 ← BP-3 ( ) ← BP-3 + ← BP-{1,2} — — 2020-09-23 – p.7/46
[Lamport 1984][Schneider 1990] (1) (2) (3) (4) ( ) ←
↑ permissioned — — 2020-09-23 – p.8/46
SMRP (State Machine Replication Problem) SMRP-1 ( ) SMRP-2 :
= — — 2020-09-23 – p.9/46
/DLT ਖ਼ੑͷอূ ྫ6590ߏͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ
τϥϯβΫγϣϯͷ༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼ͳϢʔβʹΑΓೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕ೖ͞Εͨ߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ BP-1, BP-3, BP-2 ( ) — — 2020-09-23 – p.10/46
(Linux Foundation) https://www.hyperledger.org Apache License, Version 2.0 — — 2020-09-23
– p.11/46
/ : Proposal → Incubation → Active → Deprecated →
End of Life — — 2020-09-23 – p.12/46
( https://www.hyperledger.org/about/members ) — — 2020-09-23 – p.13/46
Fabric (IBM) IBM Digital Asset Holdings http://hyperledger-fabric.readthedocs.io/en/latest/ State : Active
— — 2020-09-23 – p.14/46
( ) ( ) — — 2020-09-23 – p.15/46
Fabric – (Docker) (chaincode) BFT , , RocksDB CA PKI
v1.0 ( v2.0) DB CA BFT : Byzantine Fault Tolerance ( ) CA : Certificate Authority ( ) PKI : Public Key Infrastructure ( ) — — 2020-09-23 – p.16/46
Sawtooth (Intel) https://github.com/hyperledger/sawtooth-core State : Active — — 2020-09-23 –
p.17/46
( ) (permissioned) (permissionless) Proof of Elapsed Time (PoET) Proof
of Work ( ) (Intel ) / Transaction Families — — 2020-09-23 – p.18/46
Sawtooth – (transaction families) (PoET ) PBFT (Practical BFT) PoET
( ) (transaction families) — — 2020-09-23 – p.19/46
Iroha ( ) https://iroha.readthedocs.io/en/master/ State : Active — — 2020-09-23
– p.20/46
( ) DLT : C++ — — 2020-09-23 – p.21/46
Iroha – Iroha EVM Sumeragi (BFT) → YAC (FT) +
, EVM : Ethereum Virtual Machine (Ethereum ) FT : Fault Tolerance ( ) ( ) — — 2020-09-23 – p.22/46
Indy (Sovrin) https://github.com/hyperledger/indy-node State : Active ID Hyperledger ID —
— 2020-09-23 – p.23/46
Indy – ID RBFT (Redundant BFT) — — 2020-09-23 –
p.24/46
Besu (ConsenSys) https://besu.hyperledger.org/en/stable/ State : Active Ethereum Quorum — —
2020-09-23 – p.25/46
Besu – EVM GHOST → Casper, PoA, etc. + PoW
→ Casper, PoA : Proof of Authority — — 2020-09-23 – p.26/46
Corda (R3) https://github.com/corda/corda — — 2020-09-23 – p.27/46
R3 R3CEV 77 (2017 2 ) 3 SBI R3Net( )
Corda — — 2020-09-23 – p.28/46
Corda Corda : BP-{1,2,3} : — — 2020-09-23 – p.29/46
( ) + CAP ( Polkadot (?) ) — —
2020-09-23 – p.30/46
Corda – JVM ( ) (Uniqueness Services) UTXO X.509 PKI
( ) JVM : Java Virtual Machine (Java ) X.509 : PKI — — 2020-09-23 – p.31/46
The Libra Blockchain Libra https://developers.libra.org/docs/the-libra-blockchain-paper — — 2020-09-23 – p.32/46
Libra Move (← ) (BFT) (← ) ( ) 5
( ) ↑ ( ) — — 2020-09-23 – p.33/46
The Libra Blockchain ( ) → Merkle accumulator (1) publish
(2) ( ) (3) BFT (4) Ethereum Gas ( DoS ) (5) /VM — — 2020-09-23 – p.34/46
The Libra Blockchain – Move (VM ) BFT (= )
( 1,000 ) ( publish ) + 5 . . . ← BFT f ( ) 1 (f ) Move (domain-specific) — — 2020-09-23 – p.35/46
Polkadot (Web3 Foundation) https://polkadot.network/PolkaDotPaper.pdf — — 2020-09-23 – p.36/46
Polkadot – , Substrate BFT ( ) ( ) Bitcoin,
Ethereum DOT — — 2020-09-23 – p.37/46
BBc-1 (Beyond Blockchain One) https://github.com/beyond-blockchain https://beyond-blockchain.org — — 2020-09-23 –
p.38/46
Proof of Work Bitcoin ( ) BBc Trust ( )
https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-trust.pdf ( ) https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-trust_ja.pdf ( ) Design Paper (white paper) https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-1_design_paper.pdf — — 2020-09-23 – p.39/46
BBc-1 — — 2020-09-23 – p.40/46
BBc-1 – (Python → bbc1-lib-contracts?) PoCX ( ) ( DAG)
( ) UTXO/ (Proof of Context) — — 2020-09-23 – p.41/46
(D)LT — — 2020-09-23 – p.42/46
( ) (1) (2) (3) (4) ( ) ⇒ —
— 2020-09-23 – p.43/46
( ) (by ) (since 1984) ( ) ( )
( ) . . . ( ) ⇒ state machine replication — — 2020-09-23 – p.44/46
( ) ( ) ( ) ( ) ( )
( ) (by ) ( ) → — — 2020-09-23 – p.45/46
— — 2020-09-23 – p.46/46