Hyperledger Meetup Tokyo エンタープライズブロックチェーン基盤のひとつとしてのHyperledger Fabricの強みと課題

Hyperledger Meetup Tokyo エンタープライズブロックチェーン基盤のひとつとしてのHyperledger Fabricの強みと課題

2020/6/11 Hyperledger Meetup Tokyoでしゃべった内容
Hyperledger Fabricの個性、およびユースケースの向き不向きを代表的なエンタープライズブロックチェーン基盤Quorum、Cordaと比較するかたちで紹介
また、Fabricに入門する際にどのように学びを進めていくと効率がいいかについても説明

4b09160b087e45103b210ef95079cee4?s=128

gakumura

June 11, 2020
Tweet

Transcript

  1. Hyperledger Meetup Tokyo Hyperledger Fabric 日本オラクル株式会社 クラウド事業戦略統括 Gaku.Nakamura@oracle.com

  2. Safe harbor statement Oracle Java Oracle Corporation 2 Copyright ©

    2020, Oracle and/or its affiliates
  3. @gakumura @gakumura … Hyperledger Fabric @ SIer OS AIX D

    3 Copyright © 2020, Oracle and/or its affiliates
  4. Oracle Blockchain Platform Cloud Service Hyperledger Fabricをベースにエンタープライズ利用向けPaaSとして提供 • • •

    • • • • 4 Copyright © 2020 Oracle and/or its affiliates 東京DCからも サービス提供中
  5. … • Hyperledger Fabric • Fabric 5 Copyright © 2020,

    Oracle and/or its affiliates
  6. … • Hyperledger Fabric • Fabric 6 Copyright © 2020,

    Oracle and/or its affiliates
  7. Hyperledger Fabric • エンタープライズ用途のパーミッションドブロックチェーン • 金融からサプライチェーンまで汎用的なユースケースをサポート • 機密性/プライバシーを確保したデータ共有機能 • スケーラブル、プラガブルな設計

    • エンタープライズ領域での本番利用の実績多数 7 Copyright © 2020, Oracle and/or its affiliates
  8. エンタープライズ領域で(おそらく)No.1の利用実績 2019 Prod. • Hyperledger Fabric • Corda • MultiChain

    … • Quorum 8 Copyright © 2020, Oracle and/or its affiliates From: 2nd Global Enterprise Blockchain Study by Cambridge Univ. https://www.jbs.cam.ac.uk/fileadmin/user_upload/research/centres/alternative-finance/downloads/2019-ccaf-second-global-enterprise-blockchain-report.pdf
  9. From: Enterprise Blockchain Protocols Evolution Index by Chainstack https://chainstack.com/wp- content/uploads/2020/01/Enterprise-Blockchain-Protocols-

    Evolution-Index-2020.pdf 9 Copyright © 2020, Oracle and/or its affiliates
  10. a.k.a. 3 … • • • Fabric 10 Copyright ©

    2020, Oracle and/or its affiliates Quorum Hyperledger Fabric Corda
  11. Quorum • Quorum Node Public State Private State • Ethereum

    Privacy Manager Tessera/Constellation … Private Transaction 11 Copyright © 2020, Oracle and/or its affiliates Quorum Node Privacy Mgr L Quorum Node Privacy Mgr L
  12. Corda • Node • Identity Manager Notary Network Map Service

    Root CA Trust Root … 12 Copyright © 2020, Oracle and/or its affiliates Node L Network Map Notary Identity Mgr Trust Root Node L
  13. Org X Org Y Hyperledger Fabric • Peer Orderer CA

    Certificate Authority • Organization Organization 13 Copyright © 2020, Oracle and/or its affiliates Peer L Ord erer Ord erer CA Peer L CA Peer L Peer L
  14. 1 • DLT • Quorum Fabric Corda 14 Copyright ©

    2020, Oracle and/or its affiliates A B D C A B D C
  15. Quorum Private Transaction • Private Transaction • Public State Private

    State • Private Transaction Private State 15 Copyright © 2020, Oracle and/or its affiliates App 1 Tx1; Private for A, B Node A Node B Node C Public Private Tx2; Public 2 2 1 2 Public Private 1 2 Public Private 2 1 2
  16. Hyperledger Fabric Channel • Fabric Channel • Channel Organization •

    Channel Channel • Channel 16 Copyright © 2020, Oracle and/or its affiliates OrgA Peer OrgB Peer OrgC Peer CH1 L1 L2 L1 L1 L2 L3 L3 CH2 CH3 Org A Org B Org C
  17. Hyperledger Fabric Private Data • Channel Private Data • Private

    Data • Organization …Private Data Collection • Private Data Purge 17 Copyright © 2020, Oracle and/or its affiliates OrgA Peer OrgB Peer OrgC Peer Channel 1 L1 PD1 L1 L1 Private Data Collection 1 PD1
  18. Corda … Need to know • • Input Tx Validating

    Notary 18 Copyright © 2020, Oracle and/or its affiliates From https://docs.corda.net/docs/corda-os/4.4/key-concepts-ledger.html
  19. … Quorum Corda • Quorum Private Transaction State • Private

    Tx Private State • Enterprise Ethereum Hyperledger Besu Private State Fabric • Corda Tx • • • Validating Notary • 19 Copyright © 2020, Oracle and/or its affiliates
  20. Fabric • • Channel Private Data • • Endorsement Policy

    • Tx • Org n 1 1 Channel Private Data Collection Channel Private Data Collection m m=n(n-1)/2 • n 10 m 45 n 50 m=1225 n 100 m=4950 • Channel Private Data Collection • 20 Copyright © 2020, Oracle and/or its affiliates
  21. State “Asset” : { “id”:”1234567”, “color”:”red”, “size”:12, “price”:200, “owner”:”Bob” }

    2 • State • Bob 50 2 Alice • State • State DB 21 Copyright © 2020, Oracle and/or its affiliates “Asset” : { “id”:”1234567”, “color”:”red”, “size”:12, “price”:200, “owner”:”Bob” } “Asset” : { “id”:”1234567”, “color”:”red”, “size”:12, “price”:200, “owner”:”Bob” }
  22. • Quorum • Key Value … • RDB State Indexing

    • State • Corda • State Vault RDB Asset OnLedger CodApp • RDB • Corda OS H2DB Postgress • Corda Enterprise SQL Server/Azure SQL Oracle DB 22 Copyright © 2020, Oracle and/or its affiliates
  23. Fabric Fabric • State DB LevelDB CouchDB • CouchDB JSON

    Value JSON JSON • Phantom Read Phantom Read OK • CouchDB • RDB … • • LevelDB iState https://github.com/motoreq/istate - Phantom Read NG 23 Copyright © 2020, Oracle and/or its affiliates
  24. 3 • • • • • Tx State 24 Copyright

    © 2020, Oracle and/or its affiliates B A Fetch B A Fetch
  25. • • • • 25 Copyright © 2020, Oracle and/or

    its affiliates
  26. Corda Quorum • Corda RDB • • HA RDB •

    RDB • Quorum Private Tx • Private Tx Private State Corda • Public State 26 Copyright © 2020, Oracle and/or its affiliates
  27. Fabric DLT • Peer Channel && Private Data Collection •

    Org OK Peer Channel&& Chaincode Endorsement • DLT • HW Peer State DB Org Org Peer Private Data fetch Fabric 27 Copyright © 2020, Oracle and/or its affiliates
  28. 4 • • • Fabric Endorsement Policy • Peer Channel

    Chaincode • Endorsement→Validation TAT Key • • Key 28 Copyright © 2020, Oracle and/or its affiliates
  29. Hyperledger Fabric • Fabric • • PET Privacy Enhancement Technology

    • 2.X • Blockchain Verifier • Interoperability • Hyperledger Cactus • FabToken • • 29 Copyright © 2020, Oracle and/or its affiliates
  30. … • Hyperledger Fabric • Fabric 30 Copyright © 2020,

    Oracle and/or its affiliates
  31. … 31 Copyright © 2020, Oracle and/or its affiliates

  32. Copyright © 2020, Oracle and/or its affiliates 32 1 3

    2
  33. • Quorum • Ethereum • Solidity • Ethereum • Corda

    • • CordApp State Contract Flow - • Fabric • - Chaincode • • 33 Copyright © 2020, Oracle and/or its affiliates
  34. Hyperledger Fabric • Fabric • BaaS Fabric Docker • Fabric

    • • • BaaS 34 Copyright © 2020, Oracle and/or its affiliates
  35. • Peer Orderer CA Chaincode • Fabric • Organization Organization

    Channel • Channel • Channel Organization Channel Peer Channel Chaincode • Chaincode • • Endorsement Ordering Validation • Endorsement Policy • Private Data 35 Copyright © 2020, Oracle and/or its affiliates
  36. • Marble Chaincode • BaaS • HLF - HLF Go

    Java Node.js Version • Node.js Chaincode Go • Chaincode • Organization Peer Channel • Chaincode • • Channel • VM 36 Copyright © 2020, Oracle and/or its affiliates
  37. • … HLFv2.x • IBM Developer JP Hyperledger Fabric 1

    6 https://developer.ibm.com/jp/tutorials/cl-hyperledger-fabric-basic-1/ • OCHaCafe #4 Hyperledger Fabric https://speakerdeck.com/gakumura/ochacafe-number-4-hyperledger-fabric • • https://readthedocs.org/projects/hyperledger-fabric/ • Node.js Chaincode API https://hyperledger.github.io/fabric-chaincode-node/ …Java Go Chaincode API 37 Copyright © 2020, Oracle and/or its affiliates
  38. Thank you 38 Copyright © 2020, Oracle and/or its affiliates

  39. None