ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other (Distributed) Ledger Technology

847a328633b1df6b11cc2f72430025e6?s=47 Kenji Saito
September 23, 2020

ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other (Distributed) Ledger Technology

2020年9月23日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ハイパーレッジャーとその他の分散台帳技術」にて使用したスライドです。

847a328633b1df6b11cc2f72430025e6?s=128

Kenji Saito

September 23, 2020
Tweet

Transcript

  1. Chief Science Officer / ks91@blockchainhub.co.jp — — 2020-09-23 – p.1/46

  2. https://speakerdeck.com/ks91 — — 2020-09-23 – p.2/46

  3. ( ) 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
  4. Linux Foundation Hyperledger R3CEV Corda Facebook/Calibra The Libra Blockchain Web3

    Foundatoin Polkadot ( ) — — 2020-09-23 – p.4/46
  5. (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
  6. (BP : Blockchain Property ) BP-1 : BP-2 : BP-3

    : ( ) BP-2 permissionless ( ) permissioned ( ) BP-2’ : — — 2020-09-23 – p.6/46
  7. ( ) BP-1 ( ), BP-2 ( ) BBc-1 f

    : → BP-3 ( ) ( ) ( ) ← BP-2 ← BP-3 ( ) ← BP-3 + ← BP-{1,2} — — 2020-09-23 – p.7/46
  8. [Lamport 1984][Schneider 1990] (1) (2) (3) (4) ( ) ←

    ↑ permissioned — — 2020-09-23 – p.8/46
  9. SMRP (State Machine Replication Problem) SMRP-1 ( ) SMRP-2 :

    = — — 2020-09-23 – p.9/46
  10. /DLT ਖ਼౰ੑͷอূ ྫ6590ߏ଄ͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌෇͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస ɾ

    τϥϯβΫγϣϯͷ಺༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼౰ͳϢʔβʹΑΓ౤ೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻଄Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕౤ೖ͞Εͨ৔߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ BP-1, BP-3, BP-2 ( ) — — 2020-09-23 – p.10/46
  11. (Linux Foundation) https://www.hyperledger.org Apache License, Version 2.0 — — 2020-09-23

    – p.11/46
  12. / : Proposal → Incubation → Active → Deprecated →

    End of Life — — 2020-09-23 – p.12/46
  13. ( https://www.hyperledger.org/about/members ) — — 2020-09-23 – p.13/46

  14. Fabric (IBM) IBM Digital Asset Holdings http://hyperledger-fabric.readthedocs.io/en/latest/ State : Active

    — — 2020-09-23 – p.14/46
  15. ( ) ( ) — — 2020-09-23 – p.15/46

  16. 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
  17. Sawtooth (Intel) https://github.com/hyperledger/sawtooth-core State : Active — — 2020-09-23 –

    p.17/46
  18. ( ) (permissioned) (permissionless) Proof of Elapsed Time (PoET) Proof

    of Work ( ) (Intel ) / Transaction Families — — 2020-09-23 – p.18/46
  19. Sawtooth – (transaction families) (PoET ) PBFT (Practical BFT) PoET

    ( ) (transaction families) — — 2020-09-23 – p.19/46
  20. Iroha ( ) https://iroha.readthedocs.io/en/master/ State : Active — — 2020-09-23

    – p.20/46
  21. ( ) DLT : C++ — — 2020-09-23 – p.21/46

  22. Iroha – Iroha EVM Sumeragi (BFT) → YAC (FT) +

    , EVM : Ethereum Virtual Machine (Ethereum ) FT : Fault Tolerance ( ) ( ) — — 2020-09-23 – p.22/46
  23. Indy (Sovrin) https://github.com/hyperledger/indy-node State : Active ID Hyperledger ID —

    — 2020-09-23 – p.23/46
  24. Indy – ID RBFT (Redundant BFT) — — 2020-09-23 –

    p.24/46
  25. Besu (ConsenSys) https://besu.hyperledger.org/en/stable/ State : Active Ethereum Quorum — —

    2020-09-23 – p.25/46
  26. Besu – EVM GHOST → Casper, PoA, etc. + PoW

    → Casper, PoA : Proof of Authority — — 2020-09-23 – p.26/46
  27. Corda (R3) https://github.com/corda/corda — — 2020-09-23 – p.27/46

  28. R3 R3CEV 77 (2017 2 ) 3 SBI R3Net( )

    Corda — — 2020-09-23 – p.28/46
  29. Corda Corda : BP-{1,2,3} : — — 2020-09-23 – p.29/46

  30. ( ) + CAP ( Polkadot (?) ) — —

    2020-09-23 – p.30/46
  31. Corda – JVM ( ) (Uniqueness Services) UTXO X.509 PKI

    ( ) JVM : Java Virtual Machine (Java ) X.509 : PKI — — 2020-09-23 – p.31/46
  32. The Libra Blockchain Libra https://developers.libra.org/docs/the-libra-blockchain-paper — — 2020-09-23 – p.32/46

  33. Libra Move (← ) (BFT) (← ) ( ) 5

    ( ) ↑ ( ) — — 2020-09-23 – p.33/46
  34. The Libra Blockchain ( ) → Merkle accumulator (1) publish

    (2) ( ) (3) BFT (4) Ethereum Gas ( DoS ) (5) /VM — — 2020-09-23 – p.34/46
  35. The Libra Blockchain – Move (VM ) BFT (= )

    ( 1,000 ) ( publish ) + 5 . . . ← BFT f ( ) 1 (f ) Move (domain-specific) — — 2020-09-23 – p.35/46
  36. Polkadot (Web3 Foundation) https://polkadot.network/PolkaDotPaper.pdf — — 2020-09-23 – p.36/46

  37. Polkadot – , Substrate BFT ( ) ( ) Bitcoin,

    Ethereum DOT — — 2020-09-23 – p.37/46
  38. BBc-1 (Beyond Blockchain One) https://github.com/beyond-blockchain https://beyond-blockchain.org — — 2020-09-23 –

    p.38/46
  39. 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
  40. BBc-1 — — 2020-09-23 – p.40/46

  41. BBc-1 – (Python → bbc1-lib-contracts?) PoCX ( ) ( DAG)

    ( ) UTXO/ (Proof of Context) — — 2020-09-23 – p.41/46
  42. (D)LT — — 2020-09-23 – p.42/46

  43. ( ) (1) (2) (3) (4) ( ) ⇒ —

    — 2020-09-23 – p.43/46
  44. ( ) (by ) (since 1984) ( ) ( )

    ( ) . . . ( ) ⇒ state machine replication — — 2020-09-23 – p.44/46
  45. ( ) ( ) ( ) ( ) ( )

    ( ) (by ) ( ) → — — 2020-09-23 – p.45/46
  46. — — 2020-09-23 – p.46/46