$30 off During Our Annual Pro Sale. View Details »

ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and other distributed ledger technologies

ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and other distributed ledger technologies

2022年8月17日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミーにて使用したスライドです。

Kenji Saito
PRO

August 17, 2022
Tweet

More Decks by Kenji Saito

Other Decks in Technology

Transcript

  1. Chief Science Officer /
    [email protected]
    — — 2022-08-17 – p.1/43

    View Slide

  2. https://speakerdeck.com/ks91
    — — 2022-08-17 – p.2/43

    View Slide

  3. ( )
    SFC ( )
    CSO (Chief Science Officer)
    1993 ( )
    2006 ( )
    SFC
    21 P2P (Peer-to-Peer)
    2011 ( )
    2018 2019
    VR 2021.7 VR 2021.8 “ALL THESE WORLDS ARE YOURS”
    VR 2021.9 & VR 2021.12
    VR 2022.3 VR 2022.8
    → ( )
    — — 2022-08-17 – p.3/43

    View Slide

  4. Linux Foundation
    Hyperledger
    R3 Corda
    Web3 Foundation Polkadot
    ( )
    — — 2022-08-17 – p.4/43

    View Slide

  5. :
    Kenji Saito, Akimitsu Shiseki, Mitsuyasu Takada, Hiroki Yamamoto, Masaaki
    Saitoh, Hiroaki Ohkawa, Hirofumi Andou, Naotake Miyamoto, Kazuaki
    Yamakawa, Kiyoshi Kurakawa, Tomohiro Yabushita, Yuji Yamada, Go Masuda,
    Kazuyuki Masuda, “Requirement Analyses and Evaluations of Blockchain
    Platforms per Possible Use Cases”
    https://arxiv.org/abs/2103.03209
    ( )
    — — 2022-08-17 – p.5/43

    View Slide

  6. (Linux Foundation)
    Fabric (IBM), Sawtooth (Intel), Iroha ( ),
    Indy (Sovrin), Besu (ConsenSys)
    Corda (R3)
    Polkadot (Web3)
    BBc-1 ( )
    DLT
    — — 2022-08-17 – p.6/43

    View Slide

  7. (BP : Blockchain Property )
    BP-1 :
    BP-2 :
    BP-3 : ( )
    ( )
    BP-2 (BP-2 )
    permissionless ( ) permissioned ( )
    BP-2’ :
    — — 2022-08-17 – p.7/43

    View Slide

  8. ( )
    BP-1 ( ), BP-2 ( )
    BBc-1 f : → BP-3
    ( )
    ( )
    ( ) ← BP-2
    ← BP-3 (?) ( )
    ( ) ← BP-3
    ( BP-3 proof-of-work )
    + ← BP-{1,2}
    — — 2022-08-17 – p.8/43

    View Slide

  9. [Lamport 1984][Schneider 1990]
    (1)
    (2)
    (3)
    (4) ( )


    permissioned
    — — 2022-08-17 – p.9/43

    View Slide

  10. (n ≥ 3f + 1 )
    SMRP (State Machine Replication Problem)
    SMRP-1 ( )
    SMRP-2
    :
    =
    — — 2022-08-17 – p.10/43

    View Slide

  11. /DLT
    ਖ਼౰ੑͷอূ
    ྫ6590ߏ଄ͱσδλϧॺ໊
    ଘࡏੑͷূ໌
    ྫ࡞ۀূ໌෇͖ϋογϡνΣʔϯ
    །Ұੑͷ߹ҙ
    ྫφΧϞτɾίϯηϯαε
    ϧʔϧͷهड़
    ྫ#5$ͷҠస
    ɾ
    τϥϯβΫγϣϯͷ಺༰͕վ͟ΜͰ͖ͣɺ
    ɾ
    ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ
    ɾ
    ͔ͭɺਖ਼౰ͳϢʔβʹΑΓ౤ೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ
    ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ
    ɾ
    ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻଄Ͱ͖ͳ͍
    ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕౤ೖ͞Εͨ৔߹ɺ
    ɹ ͍ͣΕ
    ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ
    ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ

    BP-1, BP-3, BP-2 ( )
    — — 2022-08-17 – p.11/43

    View Slide

  12. (Linux Foundation)
    https://www.hyperledger.org
    Apache License, Version 2.0
    — — 2022-08-17 – p.12/43

    View Slide

  13. /
    :
    Proposal → Incubation → Active → Deprecated → End of Life
    — — 2022-08-17 – p.13/43

    View Slide

  14. ( https://www.hyperledger.org/about/members )
    — — 2022-08-17 – p.14/43

    View Slide

  15. Fabric (IBM)
    IBM Digital Asset Holdings
    http://hyperledger-fabric.readthedocs.io/en/latest/
    State : Active
    — — 2022-08-17 – p.15/43

    View Slide

  16. ( )
    ( )
    — — 2022-08-17 – p.16/43

    View Slide

  17. Fabric –
    (Docker) (chaincode)
    BFT
    , ,
    RocksDB CA PKI
    v1.0 ( v2.0) DB CA
    BFT : Byzantine Fault Tolerance ( )
    CA : Certificate Authority ( )
    PKI : Public Key Infrastructure ( )
    — — 2022-08-17 – p.17/43

    View Slide

  18. Sawtooth (Intel)
    https://github.com/hyperledger/sawtooth-core
    State : Active
    — — 2022-08-17 – p.18/43

    View Slide

  19. ( )
    (permissioned) (permissionless)
    Proof of Elapsed Time (PoET)
    Proof of Work ( )
    (Intel )
    /
    Transaction Families
    — — 2022-08-17 – p.19/43

    View Slide

  20. Sawtooth –
    (transaction families)
    (PoET ) PBFT (Practical BFT)
    PoET ( )
    (transaction families)
    — — 2022-08-17 – p.20/43

    View Slide

  21. Iroha ( )
    https://github.com/hyperledger/iroha
    State : Active
    — — 2022-08-17 – p.21/43

    View Slide

  22. ( )
    DLT
    :
    C++
    — — 2022-08-17 – p.22/43

    View Slide

  23. Iroha –
    Iroha EVM
    Sumeragi (BFT) → YAC (FT)
    + ,
    EVM : Ethereum Virtual Machine (Ethereum )
    FT : Fault Tolerance ( ) ( )
    — — 2022-08-17 – p.23/43

    View Slide

  24. Indy (Sovrin)
    https://github.com/hyperledger/indy-node
    State : Active
    ID
    Hyperledger
    ID
    — — 2022-08-17 – p.24/43

    View Slide

  25. Indy –
    ID
    RBFT (Redundant BFT)
    — — 2022-08-17 – p.25/43

    View Slide

  26. Besu (ConsenSys)
    https://besu.hyperledger.org/en/stable/
    State : Active
    Ethereum
    Quorum
    — — 2022-08-17 – p.26/43

    View Slide

  27. Besu –
    EVM
    GHOST → Casper, PoA, etc.
    + PoW → Casper,
    PoA : Proof of Authority
    — — 2022-08-17 – p.27/43

    View Slide

  28. Corda (R3)
    https://github.com/corda/corda
    — — 2022-08-17 – p.28/43

    View Slide

  29. R3
    R3CEV
    77 (2017 2 )
    3 SBI
    R3Net( )
    Corda
    — — 2022-08-17 – p.29/43

    View Slide

  30. Corda
    Corda :
    BP-{1,2,3}
    :
    — — 2022-08-17 – p.30/43

    View Slide

  31. ( )
    +
    CAP
    ( Polkadot (?) )
    — — 2022-08-17 – p.31/43

    View Slide

  32. Corda –
    JVM
    ( )
    (Uniqueness Services)
    UTXO X.509 PKI
    ( )
    JVM : Java Virtual Machine (Java )
    X.509 : PKI
    — — 2022-08-17 – p.32/43

    View Slide

  33. Polkadot (Web3 Foundation)
    https://polkadot.network/PolkaDotPaper.pdf
    — — 2022-08-17 – p.33/43

    View Slide

  34. Polkadot –
    , Substrate
    BFT
    ( )
    ( )
    Bitcoin, Ethereum
    DOT
    — — 2022-08-17 – p.34/43

    View Slide

  35. BBc-1 (Beyond Blockchain One)
    https://github.com/beyond-blockchain
    https://beyond-blockchain.org
    — — 2022-08-17 – p.35/43

    View Slide

  36. 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
    — — 2022-08-17 – p.36/43

    View Slide

  37. BBc-1
    — — 2022-08-17 – p.37/43

    View Slide

  38. BBc-1 –
    (Python → bbc1-lib-contracts?)
    PoCX ( ) ( DAG)
    ( )
    UTXO/
    (Proof of Context)
    — — 2022-08-17 – p.38/43

    View Slide

  39. (D)LT
    — — 2022-08-17 – p.39/43

    View Slide

  40. ( )
    (1)
    (2)
    (3)
    (4) ( )

    — — 2022-08-17 – p.40/43

    View Slide

  41. ( )
    (by ) (since 1984) ( ) ( )
    ( )
    . . . ( )
    ⇒ state machine replication
    — — 2022-08-17 – p.41/43

    View Slide

  42. ( )
    ( ) ( ) ( ) ( )
    ( )
    (by )
    ( ) → — — 2022-08-17 – p.42/43

    View Slide

  43. — — 2022-08-17 – p.43/43

    View Slide