Upgrade to Pro — share decks privately, control downloads, hide ads and more …

改ざん不能データベース登場の背景と Oracle Blockchain Platformのご紹介

gakumura
March 17, 2021

改ざん不能データベース登場の背景と Oracle Blockchain Platformのご紹介

2021/3/17 Blockchain Exhibition #1で喋った内容
・エンタープライズ領域でのブロックチェーン技術活用の文脈の中で、耐改ざん性、監査性を備えたデータベースが登場してきた背景
・ブロックチェーン/DLTと耐改ざん型データベースの使い分けの考え方
・OracleのHyperlegdger FabricベースのPaaSであるOracle Blockchain Platformの紹介

gakumura

March 17, 2021
Tweet

More Decks by gakumura

Other Decks in Technology

Transcript

  1. 中村 岳 Twitter @gakumura はてなブログ @gakumura …主にHyperledger Fabric関連 • 現職:ソリューションエンジニア@日本オラクル

    • 担当:Oracle Blockchain Platform、Blockchain Table • 前職:金融決済系SIerでパッケージ開発 • 好きなOS:AIX • 最近おすすめのマンガ:チェンソーマン(単行本派) Copyright © 2021 Oracle and/or its affiliates 2
  2. • • • Copyright © 2021 Oracle and/or its affiliates

    5 Copyright © 2021 Oracle and/or its affiliates 5
  3. 仮想通貨(暗号資産)の基盤として始まり、適用領域を拡大 ブロックチェーン/DLTの活用 Copyright © 2021 Oracle and/or its affiliates •

    2008年にサトシ・ナカモトを名乗る人物が特定の管理者がいないネット ワーク上に分散した台帳上で管理されるビットコインという新たな通貨 (を実現するシステム)に係る論文をネット上に発表 • 仮想通貨を実現する基盤の特長に徐々に注目が集まり、 より一般的な用途への応用が進み、 「ブロックチェーン/DLT」の適用領域が拡大 • エンタープライズ領域では「データ活用のための信頼できる企業間デー タ共有基盤」、「ビジネスプロセス効率化のための企業間ワークフロー 基盤」としてユースケースが続々 6
  4. 複数の企業、組織が協力して課題を解く際に利用できる新たなパラダイム エンタープライズ領域におけるブロックチェーン/DLTとは Copyright © 2021 Oracle and/or its affiliates 8

    XXX YYY AAA ZZZ XXX YYY ZZZ AAA リアルタイムで水平に共有する 確実で信頼できるデータにもとづいて 業務を自動化、効率化、高度化 DLT
  5. ブロックチェーンの利用形態(ネットワーク)の分類 Copyright © 2021 Oracle and/or its affiliates パブリック 公開制のネットワークを

    不特定多数で運用 コンソーシアム 許可制のネットワークを 複数組織で運用 プライベート 許可制のネットワークを 単一組織で運用 パーミッションレス← →パーミッションド エンタープライズ領域ではこちらが主 9
  6. 「耐改ざん性、証跡性を持ったデータ」という特性のみを活用している Copyright © 2021 Oracle and/or its affiliates • •

    • Copyright © 2021 Oracle and/or its affiliates 10 単一の組織内に閉じている 分散/分権が前提 10
  7. プライベート型のブロックチェーン利用では… Copyright © 2021 Oracle and/or its affiliates パブリック 公開制のネットワークを

    不特定多数で運用 コンソーシアム 許可制のネットワークを 複数組織で運用 プライベート 許可制のネットワークを 単一組織で運用 パーミッションレス← →パーミッションド フォーカスは • データの持ち主でも改ざんできないこと • 改ざんされていないことを証明できること これらが実現できれば、使うのは「ブロックチェーン」/ 分散台帳技術でなくてもよい 11
  8. 12 Copyright © 2021 Oracle and/or its affiliates 「分散/分権」を実現するためのダウンサイドが伴う ブロックチェーン/DLTがDBと比較して一般に不得意としていること

    複雑な構造 高度な検索 • ブロックチェーンは、複雑な構造を持ったデータをリレーショナルデータ ベース(RDB)のようにうまく扱えるわけではない • 高度な検索や集計、分析などの処理も苦手としており、これらのために台 帳データを外部のRDBに複製する必要が生じる場合が多い パフォーマンス • 「データベース」と比較した場合には「ブロックチェーン」の処理性能は 数桁ほど違うレベルで遅い • 大量のトランザクション処理、高速なレスポンスが求められるユースケー スでは性能限界への留意と、設計の工夫が必要 サイズの大きな データ • 同一データを複数ノードで持つためストレージ効率が悪い • ネットワークでやり取りしてコンセンサスを取ってから書き込む仕組み上、 サイズの大きなデータを扱うと、大きな処理性能劣化が起こる
  9. プライベート型ブロックチェーンと改ざん不能型データベース Copyright © 2021 Oracle and/or its affiliates パブリック 公開制のネットワークを

    不特定多数で運用 コンソーシアム 許可制のネットワークを 複数組織で運用 プライベート 許可制のネットワークを 単一組織で運用 パーミッションレス← →パーミッションド プライベート型のユースケースにより • データの持ち主でも改ざんできないこと • 改ざんされていないことを証明できること へのニーズが可視化された ⇨ブロックチェーンにインスパイアされた技術を 備えた改ざん不能型データベースの登場 13
  10. • データの不変性、耐改ざん性 • データベースの持ち主であっても、 一旦書き込まれたデータを更新、削除できないようにする仕組みを備えている • 検証可能性と監査性、証跡性 • 更新、削除されていないことを検証できる仕組みを備えている •

    検証可能であることにより改ざんされていないことの監査も容易に • 中央集権型(NOT分散/分権) • 複数組織で所有や管理を分散できるようにはなっていない • (「分散データベース」は複数組織で分散できるわけではない) 改ざん不能型データベースとは? Copyright © 2021 Oracle and/or its affiliates 14
  11. ブロックチェーン/DLTと改ざん不能型データベース:それぞれの用途 Copyright © 2021 Oracle and/or its affiliates 対応する 主要な

    ニーズ 例となる ユースケース ▪ 複数の企業間で水平に確実かつリアルタ イムにデータを持ち寄り共有したい ▪ 企業をまたいだワークフローを信頼でき るかたちで実行したい ▪ 原材料~製造~輸送~小売までの一貫し たデータ持ち寄りによるサプライチェー ンの全体最適化 ▪ スマートコントラクトによる取引約定~ 決済までの企業間ワークフローの 自動化、効率化、迅速化 ▪ 台帳上での価値交換 分権/分散 ブロックチェーン/DLT ▪ 法律上確実な保存が要求される契約情報 や会計、財務データの保持 ▪ 重要なアクセス情報や操作履歴などの システムログを監査証跡として保存 ▪ データを外部犯行、内部犯行両面から保 護し、セキュリティ確保 ▪ 保存して以降、誰にも変更・削除できな いようデータを保持したい ▪ 監督機関、監査法人などに対し、改ざん されていないことを証明したい 中央集権 改ざん不能型データベース 15
  12. 「コンソーシアム型」のユースケースでも… Copyright © 2021 Oracle and/or its affiliates パブリック 公開制のネットワークを

    不特定多数で運用 コンソーシアム 許可制のネットワークを 複数組織で運用 プライベート 許可制のネットワークを 単一組織で運用 パーミッションレス← →パーミッションド 16
  13. 凡例 D社 C社 B社 A社 ノード コンソーシアム型ブロックチェーンのシステム概観 Confidential – ©

    2020 Oracle Internal 17 SC L ノード SC L ノード SC L ノード SC L 個社 アプリ ブロックチェーン ネットワーク 個社 アプリ 共有 アプリ オペレーター 他システム SC スマート コントラクト L 台帳 ノードは分散/分権で 運用されているか?
  14. 「コンソーシアム型」のノードの分散↔集中 Confidential – © 2020 Oracle Internal 18 分散 集中

    個別管理 部分共有 共同管理 専有 そもそも コンソーシアム型 ではない? 信頼された中立的な 管理者がいるなら 中央集権でいいかも?
  15. • エンタープライズ領域ではブロックチェーン/DLTという分散/分権のパラダイムは 複数組織での協力が必要な課題に取り組む際の選択肢 • データとロジックの水平で確実な共有によって解ける課題を解く • 改ざん不能型データベースは中央集権型で、 • エンタープライズ領域でのブロックチェーンユースケースにおける耐改ざん性と証跡性 へのニーズに対応して言わば「後出し」で登場

    • 証跡性、監査性、セキュリティの課題を解く • 両者は一部の技術要素に共通する部分があるが、フォーカスが異なる • 解くべき課題の内容はもちろん、時には組織間の関係性など多角的な要素を考慮して選定 する必要がある まとめ:ブロックチェーン/DLTと改ざん不能型データベース Copyright © 2021 Oracle and/or its affiliates 19
  16. • ブロックチェーン/DLTのPaaS • いわゆるBlockchain as a Service(BaaS) • Hyperledger Fabricベース

    • 複数組織から成るコンソーシアム型 ネットワーク形態での利用を主に想定 • 分権/分散がメリットとなるような ユースケースでの活用がターゲット • Oracle Databaseの新機能として追加され た特殊なテーブル • 21c、19cバージョンで利用可能(パッチ要 • 標準機能に含まれ、追加ライセンス不要 • 中央集権型:単一組織で運用、管理 • 耐改ざん性、監査性、証跡性などの ニーズに対応 Oracleのブロックチェーン関連ソリューション Copyright © 2021 Oracle and/or its affiliates 21 BLOCKCHAIN Oracle Blockchain Platform Oracle Blockchain Table
  17. • ブロックチェーン/DLTのPaaS • いわゆるBlockchain as a Service(BaaS) • Hyperledger Fabricベース

    • 複数組織から成るコンソーシアム型 ネットワーク形態での利用を主に想定 • 分権/分散がメリットとなるような ユースケースでの活用がターゲット • Oracle Databaseの新機能として追加され た特殊なテーブル • 21c、19cバージョンで利用可能(パッチ要 • 標準機能に含まれ、追加ライセンス不要 • 中央集権型:単一組織で運用、管理 • 耐改ざん性、監査性、証跡性などの ニーズに対応 Oracleのブロックチェーン関連ソリューション Copyright © 2021 Oracle and/or its affiliates 22 BLOCKCHAIN Oracle Blockchain Platform Oracle Blockchain Table
  18. Hyperledger Fabricをベースにエンタープライズ利用向けPaaSとオンプレミスで提供 • GUI • • • Oracle • State

    DB Berkeley DB Hyperledger Fabric Phantom Read • REST API • RDB Oracle Blockchain Platform Copyright © 2021 Oracle and/or its affiliates DC
  19. エンタープライズ用途を目的として開発されたブロックチェーン Hyperledger : Linux財団がホストするオープンなコミュニティ • 世界で最も成功したOSS=Linuxでの成功実績に基づいた運営 • さまざまな業種の企業およびIT企業、研究機関が240以上参加 • Fabricをはじめ、複数ブロックチェーン/DLT基盤およびツール等をOSSとして開発

    Fabric : 汎用ビジネス利用のためのブロックチェーン基盤 • メンバー管理サービスを備えたパーミッションドブロックチェーンを実装 • セキュリティ、機密性/プライバシーを強化するための多様な機能 • スマートコントラクトによって業務を自動化 • 大量処理をサポートするためのスケーラブル、プラガブルな設計 • マイニングなどの大規模コンピューターパワー投入は不要&ファイナリティ有 Hyperledger Fabric Copyright © 2021 Oracle and/or its affiliates
  20. 使用ユーザー様、パートナー様からいただいたコメント一例 Oracle Blockchain Platform ・GUIベースや、豊富なAPIなど、非常に使いやすい ・最初のハードルが低い ・ブロックチェーン未経験者が2週間でPoC環境構築 ・環境構築から、メンバー追加などの拡張、設定変更な ど、自分たちでできる ・自分たちで理解できているので、システム構築会社に

    対して、依頼がしやすい ・Database連携、 Phantom Read問題対応、既存シス テムとの連携機能など、製品コンセプトがエンター プライズ活用を想定している ・PaaSとしての完成度が高い ・ロードマップや、実装機能含めて、他社クラウドベン ダーより進んだものを提供している ・使ってみたら、まじ「ネ申」だった ・これこそFull Managed ・簡単すぎて、エンジニアをだめにする ・ビジネス要件定義や、アプリ開発に専念できる ・エンジニアがアプリケーションの開発に専念できる ちゃんとしたPaaS ・ブロックチェーンプロジェクトで、本来工数をかける べきビジネス検討タスクに集中できる Copyright © 2021 Oracle and/or its affiliates 25 Copyright © 2021 Oracle and/or its affiliates
  21. • Oracle Blockchain Platformだけでなく、 他のHyperledger Fabricとのオープンなネットワーク構成が可能 • オンプレミスバージョンの提供: Oracle Blockchain

    Platform Enterprise Edition(OBPEE) • 自社データセンターやOracle以外のクラウド(IaaS)上にOBPを構築 • ブロックチェーン環境に必要な機能を事前定義、数クリックで環境構築 • サポートするVM基盤:Oracle VirtualBoxとVMware vSphere • Oracle Blockchain Platform Cloud Service (OBPCS) と同等の機能を提供 • APIは共通、アプリケーション移植性あり • アップデートもOBPCSと足並みを揃えて提供 Open:オープンで柔軟なネットワーク Copyright © 2021 Oracle and/or its affiliates
  22. オンプレミス、マルチクラウド、ハイブリッドクラウドでの構成が可能 Open:オープンで柔軟なネットワーク Copyright © 2021 Oracle and/or its affiliates 3rd

    Party Cloud 3rd Party Cloud 3rd Party Cloud Oracle Blockchain Platform Cloud Service Oracle Blockchain Platform EE Hyperledger Fabric
  23. State DB Berkeley DB パフォーマンス&ロジック表現力を強化 ・パフォーマンスの向上 • スマートコントラクトの同時実行性の強化 ・SQLリッチクエリのサポート •

    JSONの属性を指定してのSQL-Likeクエリが可能 • CouchDB形式のJSONクエリへの互換性も保持 ・CouchDB適用時の技術的な問題の解決/回避 • リッチクエリ使用時のPhantom Read問題を解消 • 大量レコード取得時のPagination指定が不要に Enterprise Grade:エンタープライズ要件を満たす Copyright © 2021 Oracle and/or its affiliates State DB World State Hyperledger Fabric Ledger ※通常のHyperledger Fabricでは、 State DBはLevelDBかCouchDB
  24. エンタープライズ活用で重要なシステム間の連携をサポートする機能を提供 Quick Integration:他システムとの連携を迅速に実現 Copyright © 2021 Oracle and/or its affiliates

    • REST APIでブロックチェーンが利用可能。 アプリケーション開発および既存システムと の連携が容易に • Oracle Integration Cloudの事前定義済アダプ ターを用いることで、ERPなどの基幹システ ムや各種SaaSとの連携を更に迅速に実現 • ブロックチェーン上のデータをデータベース に複製する機能が付属。複雑な集計、分析な ども高速かつ容易に開発可能 • ブロックチェーンのデータと他システムの データをデータベース上で統合することで、 より高度なデータ活用も可能に Blockchain Integration Database BI
  25. REST APIでのブロックチェーン利用でアプリケーション開発が容易に REST REST API Fabric SDK Quick Integration:他システムとの連携を迅速に実現 Copyright

    © 2021 Oracle and/or its affiliates Oracle Blockchain Platform Fabric Peer Fabric SDK Fabric Peer REST Fabric SDK gRPC REST API Fabric SDK ⇨ Fabric REST API ⇨Web OK
  26. リッチヒストリーデータベース:Oracleデータベースにブロックチェーンのデータを複製 • 台帳のデータをブロックチェーン外部のリレーショナルデータベースに複製 • ブロックチェーンが苦手とする複雑な参照処理(集計、分析)を、 データベース側で実装可能に • 多くの開発者が慣れ親しんでいるOracleデータベースでの開発 • Oracle

    Analytics Cloudをはじめとした多種多様なBIツールの利用 • 他システムとのデータ統合も一般的なツールとノウハウで容易に実現可能 • ERP、SCMなどの基幹システムとブロックチェーンのデータを 統合することで、データの価値を最大限に活用 Quick Integration:他システムとの連携を迅速に実現 Copyright © 2021 Oracle and/or its affiliates State DB World State 台帳(Ledger)
  27. ブロックチェーン台帳上のレコードをOracle Databaseのテーブルに複製 リッチヒストリーデータベース Copyright © 2021 Oracle and/or its affiliates

    ブロックチェーン 台帳 • State Key-Value ※ World State/State DB • History • Transaction Details Last alpha History alpha State beta State beta History alpha beta 複 製 beta Transaction Details alpha Transaction Details 詳細は以下のドキュメントを参照: https://docs.oracle.com/en/cloud/paas/blockchain-cloud/usingoci/create-rich-history-database.html
  28. 複製先テーブルとしてBlockchain Tableに対応&チャネルごとにDBを分けられるように • データベース上にデータを複製する際に、格納先と してBlockchain Tableを選択可能に • 複製データにも更新や削除をできない耐改ざん性、更 新や削除されていないデータとしての証跡性を付与 •

    複製データもブロックチェーン台帳上のデータと同 様、信頼に足る情報、証跡として扱うことが可能に • 対象は履歴を追記で蓄積していくHistoryおよび Transaction Details • 併せて、チャネルごとに複製先に別々のデータベー スを設定可能に • 分析用データベース、監査証跡蓄積用データベースな ど、チャネルのデータのタイプごとに用途別データ ベースを使い分けるなど リッチヒストリーデータベースの機能拡張(2021年2月Update) Copyright © 2021 Oracle and/or its affiliates ブロックチェーン 台帳 alpha beta Database A Database B History on Blockchain Table State State History on Blockchain Table Transaction Details on Blockchain Table Transaction Details on Blockchain Table 複 製 複 製
  29. Oracle Blockchain Platformデモ コンソール上で動作する サンプルインターフェース Peer Peer Channel REST プロキシ

    サンプル スマート コントラクト Ledger Ledger Founder Member REST クライアント (Postman) SQL Developer Oracle Blockchain Platform Autonomous Database REST API 複 製 Copyright © 2021 Oracle and/or its affiliates 34