Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tokyo Corda Meetup テクノロジーセッション

131 views

Published on

発表資料

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

Tokyo Corda Meetup テクノロジーセッション

  1. 1. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. SBI R3 Japan 株式会社 令和元年 六月 四日 Tokyo Corda Meetup ~ テクノロジーセッション ~ 0
  2. 2. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. テクノロジーセッション 目次 1  Cordaの特徴  DLT(ブロックチェーン)比較  比較軸について  主要基盤の比較 まとめ・QA・告知
  3. 3. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Cordaの特徴 2  Cordaの特徴  DLT(ブロックチェーン)比較  まとめ・QA・告知
  4. 4. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. ①Bitcoinの技術を使って対改竄性を確保 ②プライバシーも確保したい ③全順序性を捨てざるを得ない・・ ④代わりにNotaryによる検証を追加しよう Corda Cordaが考えたこと
  5. 5. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Bitcoin(UTXOモデル) CONFIDENTIAL ブロック1 ハッシュ1 トランザクション 1-1 トランザクション 1-n 管理データ1 Input input output output ・ ・ ・ ・ ・ ・ ・ ・ ・ ブロック2 トランザクション 2-1 トランザクション 2-m 管理データ2 ハッシュ1 ハッシュ2 input ブロック3 ハッシュ3 トランザクション 3-1 トランザクション 3-l 管理データ3 ハッシュ2 ・ ・ ・ ・ input ・ ・ ・ ・
  6. 6. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Cordaの基本的構造 ブロック1 ハッシュ&署名 トランザクション1 ブロック2 トランザクション2 1トランザクション=1ブロック input input Output Output ブロック3 トランザクション3 input input ハッシュ&署名 ハッシュ&署名
  7. 7. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Corda基本的構造 ブロック1 ハッシュ&署名 トランザクション1 ブロック2 トランザクション2 各ブロックのハッシュが次のトランザクションに取 り込まれる ⇒ 改竄耐性を実現 input input Output Output ブロック3 トランザクション3 Input =Tx1:0 Input =Tx1:1 ハッシュ&署名 ハッシュ&署名 トランザクション1のハッシュ + インデックス
  8. 8. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Cordaの基本的構造 CONFIDENTIAL ブロック1 ハッシュ&署名 トランザクション1 ブロック2 トランザクション2 Output Output ブロック3 トランザクション3 input input ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 input Output input Output input Output Output Output Output ブロックの連なりは、一本ではない。(全順序性無し)
  9. 9. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. ①改竄耐性 ≒ bitcoinに近い ②二重支払い防止 ⇒ 別の仕組みが必要。 ブロック1 ハッシュ&署名 トランザクション1 ブロック2 トランザクション2 Output Output ブロック3 トランザクション3 input input ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 input Output input Output input Output Output Output Output Bitcoin ブロック1 ハッシュ1 トランザクション 1-1 管理データ1 ・ ・ ・ ・ ・ ・ ・ ・ ・ ブロック2 トランザクション 2-1 管理データ2 ハッシュ1 ハッシュ2 ブロック3 ハッシュ3 トランザクション 3-1 管理データ3 ハッシュ2 ・ ・ ・ ・ ・ ・ ・ ・ Cordaの基本的構造
  10. 10. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Cordaの2重支払い防止 CONFIDENTIAL ブロック1 ハッシュ&署名 Tx1 ブロック2 Tx2 Input Input Output1 Output2 Input= Tx1:Output1 ハッシュ&署名 Output ①検証&署名依頼 Notary Tx1 Output1 ②使用済みOutputの記録 ③署名の提供
  11. 11. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. Cordaの2重支払い防止 CONFIDENTIAL ブロック1 ハッシュ&署名 Tx1 ブロック2 Tx2 Input Input Output1 Output2 Input= Tx1:Output1 ハッシュ&署名 Output Notary Tx1 Output1 ①検証&署名依頼 ブロック evil Tx evil Input= Tx1:Output1 ハッシュ&署名 Output
  12. 12. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 全順序性を捨てることで、トランザクション単位の データ分離を実現 ⇒ プライバシーを確保できる。 Cordaはなぜ全順序性を捨てたのか? ブロック1 ハッシュ&署名 トランザクション1 ブロック2 トランザクション2 Output Output ブロック3 トランザクション3 input input ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 ハッシュ&署名 input Output input Output input Output Output Output Output ブロック1 ハッシュ1 トランザクション 1-1 トランザクション 1-n 管理データ1 Input input output output ・ ・ ・ ・ ・ ・ ・ ・ ・ ブロック2 トランザクション 2-1 トランザクション 2-m 管理データ2 ハッシュ1 ハッシュ2 input ブロック3 ハッシュ3 トランザクション 3-1 トランザクション 3-l 管理データ3 ハッシュ2 ・ ・ ・ ・ input ・ ・ ・ ・ Bitcoin ブロックの共有が前提 ⇒プライバシー× 取引ごとに情報が独立⇒ 必要な人だけで共有
  13. 13. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. ①Bitcoinの技術を使って対改竄性を確保 ②プライバシーも確保したい ③全順序性を捨てざるを得ない・・ ④代わりにNotaryの検証を追加しよう ここまでのまとめ Corda
  14. 14. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. DLT(ブロックチェーン)比較 ~比較軸~ 13  Cordaの特徴  DLT比較  比較軸  主要基盤比較  まとめ・QA・告知
  15. 15. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 皆さんに質問です。 ブロックチェーンの比較軸といえば・・? 14 プライバシー インターオペラビリティ コンセンサス マイニング有無 Etc…. 二重支払い ファイナリティ パブリック/コンソーシアム/プライベート スケーラビリティ・TPS Cherry Pick? いいとこどり?
  16. 16. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 比較軸 15 ビジネス テクノロジー IT一般 ブロックチェーン特有 ベンダーロックイン 既存システムとの相性 言語 開発・運用ツール プライバシー インターオペラビリティ スマートコントラクト実装 データモデル の軸
  17. 17. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 比較軸 の軸 16 ビジネス テクノロジー IT一般 ブロックチェーン 特有 企画部門が最初に検討 すべきゾーン PMが最初に検討 すべきゾーン ブロックチェーン特有のゾーン 技術の将来性を決めるゾーン
  18. 18. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 比較軸 17 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性
  19. 19. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 比較軸 18 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロックチェーン特有 ④技術の将来性
  20. 20. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. DLT比較 ~主要基盤比較~ 19  Cordaの特徴  DLT比較  比較軸  主要基盤比較  まとめ・QA・告知
  21. 21. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 項目 Corda Hyperledger Fabric Quorum (その他エンタープライズ向けEthereumも同様) プラット フォーム名称 分散台帳プラットフォーム 汎用化ブロックチェーン エンタープライズ向け Ethereum 開発主体 R3 IBM JP Morgan(Quorum) 既存システム との相性 P2Pでのデータのやり取り/契 約などを前提としたシステム (決済/ERP/貿易など)に適 する。 ビジネス参加者が固定されたシ ステム Or 情報の共有が目的のシステム (食の安全確保だけが目的のトレー ザビリティなど) ブロードキャスト+P2Pの組み 合わせを前提としている。相性 はケースバイケース。 プライベートデータに決済情報 は載せられない。 ベンダーロッ クインの回避 ◎ 構想当初からベンダーロックイ ンを避ける方針が掲げられてい る。 × Sier発のプロジェクトであるた め、ベンダーロックインを避け るインセンティブが存在しない。 〇 方針は明らかではないが、 Ethererumベースである事、ベ ンダー主導ではない事からベン ダーロックインを目指すインセ ンティブは無い。 技術比較①企画 20 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロック チェーン特有 ④技術の将来性
  22. 22. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 技術比較②PM 21 項目 Corda Hyperledger Fabric Quorum コアモジュー ル開発言語 Kotlin Go Go/Java/Haskell スマートコン トラクト 開発言語 Kotlin / Java Node.js / Go / Java / Python Solidity (Ethereumに準拠) データベース 形式 リレーショナルデータベース キーバリューストア (no-SQL databases, 推奨は CouchDB) キーバリューストア (levelDB, rocksDB, Ethereum に準拠) 基盤の後方互 換性 ○ Ver3.0以降の後方互換性を保証 × 後方互換性なし △ Ethereumの実装に依存 スマートコン トラクトの後 方互換性 〇 Ver4.0以降、ローリングアップグ レードに対応したAPIを用意 △ チャネル毎にアップデート可能 (チェネルを跨いだバージョンアッ プ合意の保証は不可能) △ Eterereum準拠 Proxyパターンを使ったコードレベル で対応するアップグレードは可能 (EIP897等) バックアップ/ レストア 〇 P2Pベースなため各ノードでのバック アップが前提。ただし一貫性の確認 のための標準機能は豊富に存在 (Flow Hospital/Ledger-sync) △ 共有データ/P2Pベースのデータの双 方が混在しており、一貫性を維持し たレストアは相応に困難。 △ 共有データ/P2Pベースのデータの双 方が混在しており、一貫性を維持し たレストアは相応に困難。 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロック チェーン特有 ④技術の将来性
  23. 23. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 技術比較③BC特有 22 項目 Corda Hyperledger Fabric Quorum (その他エンタープライズ向けEthereumも同様) プライバシー 確保 ○ ・P2Pベースで個別のトランザ クションごとに閲覧権限設定可 能 △ ・チャネル内の全員が閲覧可能 なパブリックデータ + ・プライベートデータ × ・ネットワーク全体で共有され るパブリックデータ + ・プライベートデータ コンセンサス △ RAFT/BFTは、実験段階 検証は当事者+Notary (Commandで指定) × RAFT/BFT 未実装 検証はチャネル内関係者 (Endorsement Policyで指定) ◎ PoA/RAFT/BFT実装済み (Quorum) 検証はネットワークで指定され たノードが実施 マイニングの 必要性 無し (Notary Node) 無し (Orderer) 無し ファイナリ ティ/ ダーティー リード ・ファイナリティ有 ・ダーティーリード不可。 ・ファイナリティ有 ・ダーティーリードを許容。 ・ファイナリティ確認にはクラ イアント側でのイベントを捕捉 する実装が必要。 ・ファイナリティ有 (Quorum) ・ダーティリード不可 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロック チェーン特有 ④技術の将来性
  24. 24. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 技術比較③(続き・インターオペラビリティ) 23 項目 Hyperledger Fabric Quorum (その他エンタープライズ向けEthereumも同様) 他基盤と接続 (APIレベル) 〇 トークン授受の標準実装として Corda-Settlerを提供。 × 個別開発/実装が必要 × 個別開発/実装が必要 他基盤と接続 (Native) × 個別開発/実装が必要 チェーンが分岐する為、実装に は工夫が必要。 × 個別開発/実装が必要 × 個別開発/実装が必要 同一基盤 違うネットワーク 〇 P2Pモデルがベースなため、自 然に実現可能 × 個別開発/実装が必要 × 個別開発/実装が必要 将来的に、RAFT利用のネット ワーク間でインターオペラビリ ティが提供される予定。 同一基盤 同一ネットワーク 〇 P2Pモデルがベースなため、自 然に実現可能 × チャネルを超えるだけでも別 実装が必要。 〇 Ethereum準拠 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロック チェーン特有 ④技術の将来性
  25. 25. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 項目 Hyperledger Fabric Quorum (その他エンタープライズ向けEthereumも同様) スマートコン トラクト実装 ◎ ノード内検証(Cotract)とノー ド間検証(Flow)という二つの レベルを持つため、柔軟性に富 む。 ○ チェーンコード(ノード内検 証)のみ。 〇 Ethereum準拠(ノード内検 証) データモデ ル UTXOモデル バランスモデル バランスモデル (ethereumに準拠) 二重支払い防止 /台帳非負制約 〇 UTXO&P2Pにより、秘匿化しつ つ二重支払い防止可能 異なるネットワークに対しても 保証可能 △ 同一チャネルかつ公開データの み保証 異チャネル or プライベート データについては防止機能なし △ 同一ネットワーク/公開データは 保証。 秘匿化も可能だが速度に課題。 異なるネットワークは不可 技術比較④技術の将来性 24 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロック チェーン特有 ④技術の将来性
  26. 26. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 技術比較④(続き) 25 項目 Hyperledger Fabric Quorum スケーラビリ ティ (ネットワー クサイズ) 高い P2Pベースでトランザクションが発行 されるため、ネットワークサイズに依 存しない。 低い チャネル内にブロードキャストされる ため、チャネル内のノード数に応じて 速度低下 低い ネットワーク内にブロードキャストさ れるため、ノード数に応じて速度低下 スケーラビリ ティ(TPS) 高い P2Pベースでトランザクションが構成 されるためマルチスレッド化が容易。 DTCCの実験では、Cordaは連続で 6500TPS、ピークでは22,000TPSを 発揮。 http://www.dtcc.com/news/2018/october/16/ dtcc-unveils-groundbreaking-study-on-dlt https://lankydanblog.com/2018/12/14/throug hput-a-corda-story/ 中程度 アンコミット状態でデータ書き込みを して(ダーティリードを許容)スルー プットを稼ぐ設計 低い 基本的にはEthereumベースなため、 マルチスレッド/分散化の効果が薄い。 RAFTベースだと200TPS程度が上限 https://medium.com/menapay/menapay- blockchain-tests-quorum-tps-8aac5f51820b 運用上のス ケーラビリ ティ 容易に対応可能 P2Pベースでデータのやり取りが管理 されるため、ノード追加は用意。 非常に困難 新しいノード/組織を追加する度に チャネル構成を再構築する必要があり、 その作業量は、指数関数的に増加する。 容易に対応可能 パブリックブロックチェーンである Ethereumをベースにしているため、 ノード追加は容易に実現可能 プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画部門が最初に検討 すべきゾーン ②技術者が最初に検討 すべきゾーン ③ブロックチェーン技術の場合 なぜか最初に検討される ゾーン ④技術の将来性を決めるゾーン
  27. 27. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 技術比較⑤その他 26 項目 Corda Hyperledger Fabric quorum ドキュメン ト管理機能 〇 標準でトランザクションに同梱 可能 △ 別途実装が必要 △ 別途実装が必要 高度なセキュ リティ技術へ の対応 ○ ・Enterprise版は正式にHSM対 応済 ・Intel SGX対応 開発中 × ・HSM対応には別途実装が必要 ・SGX 機能なし × ・HSM対応には別途実装が必要 ・SGX 機能なし 監査対応 △ UTXOモデルに基づく遷移検証は大き なリソースを必要とするが、オブザー バーノード/RDB検索等を利用する ことで自動化可能。 △ バランスモデルに基づく監査は容易だ が、チャネル構成が変化する場合、 データの断絶が発生するため、システ ム的な追跡は非常に困難。 × プライベートトランザクションの検証 は、個別トランザクションの追跡が必 要なため困難。 ネットワー ク運営 Corda Foundation(財団) を設立し、非中央集権化し たネットワーク構築が可能 に ー ー
  28. 28. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 結論 27 Corda最高!Corda最高! 当たり前の技術比較を! プライバシー スマートコントラクト実装 コンセンサス マイニング有無 データモデル 二重支払い/台帳非負制約 ファイナリティ プラットフォーム名称 開発主体 言語DB インターオペラビリティ 後方互換性 レストア方法 スケーラビリティ 開発・運用ツール ベンダーロックイン ビジネス テクノロジー IT一般 ブロックチェーン 特有 既存システムとの相性 ①企画 ②PM ③ブロックチェーン特有 ④技術の将来性
  29. 29. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. まとめ・QA・告知 28  Cordaの特徴  DLT比較  比較軸  主要基盤比較  まとめ・QA・告知 ~19:50
  30. 30. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. まとめ + 個人的な思い 29
  31. 31. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 30 • Bitcoin + プライバシー(+ スマートコントラクト) =Corda • ビジネスに使うため、当たり前の比較から始めよう。 • 世界初のビジネスを作って欲しい。そのお手伝いが できれば嬉しい。
  32. 32. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 告知 31
  33. 33. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. トレーニングの実施 32 • Corda Bootcamp(初級) • Cordaのテクノロジーに興味のある人 • 日本語 • 無償 • 月次 or 四半期に一回開催予定(初回 7月) • Twitterで告知予定(@R3Sbi) • Corda Training(中級) • 業務アプリ開発予定の企業に対して、丸2日間の集中ト レーニングを実施。(開発から運用まで) • 有償(価格については個別相談) • 企業からの要請に応じて開催
  34. 34. Confidential © 2019 SBI R3 Japan, Inc. All Rights Reserved. 33

×