Hyperledger Fabric とは何か?仕組みから利点をブロックチェーン開発エキスパートが解説します🐕

Hyperledger Fabric とは何か?仕組みから利点をブロックチェーン開発エキスパートが解説します🐕

2023.03.28
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!

今回は、 企業向けのモジュール式ブロックチェーンフレームワークである Hyperledger Fabric についてまとめてみました!その基本構造やメリット、活用方法について解説しているので、ぜひお役立てください。

想定する読者

はじめに

Hyperledger Fabric はモジュール型アーキテクチャをベースとしたフレームワークであり、分散型台帳アプリケーションに高い機密性や堅牢性、適応性、拡張性を与えます。さまざまなコンポーネントをプラグイン式にインストールできるほか、金融エコシステムの奥深さ・繊細さも取り扱えるよう構築されています。

Hyperledger のブロックチェーンプロジェクトは、2015年12月に Linux Foundation ( Linux オペレーティングシステムを制作したのと同じ団体)によって立ち上げられました。このプロジェクトは、完全にパブリックなブロックチェーン技術や分散型台帳を開発するためのハブとして構築されました。

Digital Asset と IBM によって設立された Hyperledger Fabric は、その後 Linux Foundation がスポンサーとなった業界横断型の共同事業へと発展してきました。 Hyperledger Fabric は、2017年3月に Hyperledger プロジェクトとして初めて「インキュベーション」の段階を通過し、「アクティブ」な段階に突入しました。

Hyperledger Fabricの仕組み

Hyperledger Fabric はオープンかつテストが完了した、大企業での利用にも適した分散型台帳プラットフォームです。高度なプライバシー保護機能により、意図した情報のみがネットワーク内の「許可された」(既知の)参加者と共有されることを保証しています。 Hyperledger Fabric のネットワークは、互いに交流する独立した組織(またはメンバー)で構成されています。

例えば、金融機関システムにおける銀行や、サプライチェーンネットワークにおける物流会社といった組織です。各組織は Hyperledger Fabric の認証権限に加え、 Hyperledger Fabric コンポーネントにおける1つかそれ以上のピアノードを持ちます。

Hyperledger Fabricのシステム構造

Hyperledger Fabric にはネットワークの概念があり、メンバー企業は参加・交流することが可能です。チャネルは、ある組織が同じチャネルに参加している他の組織と密かに交流するためのものです。該当するチャネルに参加していないその他の組織は、チャネル内の取引やデータに一切アクセスできません。

Hyperledger Fabric システムにおける重要なコンポーネントは以下の通りです。

アセット

アセットは有形・無形どちらも存在します。 Hyperledger Fabric では、チェーンコードを用いた取引手続きによってユーザーがアセットの保有高を変更できます。

Hyperledger Fabric のシステムにおいて、アセットはキーと値のペアによるシーケンスで表され、取引履歴は台帳ルートに記録されます。アセットはバイナリーフォーマットとJSONフォーマットで表記されます。

チェーンコード

チェーンコードの動作は取引コンセプト(取引記録の登録)から始まり、その後台帳の現存データに対してテストされます。さらに、チェーンコードの実行によって、ブロックチェーンのアセットに対しキーと値のエントリーセットが提供されます。そのセットはネットワークに送信され、すべてのユーザーログに適用される可能性があります。

台帳

Hyperledger Fabric のアセットは、生成、変更、削除といったすべての操作に対し、アセットのキーと値のペアが作られます。

セキュリティ

Hyperledger Fabric は、ネットワークに参加するすべての参加者が分散型取引処理システムを支えます。アセットの登録等で使用される暗号ライセンスは、パブリックキーインフラストラクチャを用いて企業やネットワーク機器、アプリ開発者、またはクライアントアプリケーションに関連付けられます。その結果、データのアクセス制御が管理・監視されるため安全です。

コンセンサス

コンセンサスは、単にトランザクション(取引)の実行に対応するだけではありません。要求、承認からスケジューリング、検証、誓約に至るまで、 Hyperledger Fabric の全体オペレーションにおいて重要な役割とワークロードを担っています。

※ コンセンサスとはブロックの整合性を完全に検証すること

Hyperledger Fabricのメリット

Hyperledger Fabric を使うメリットは以下のとおりです。

認証付きネットワーク

パブリックチェーンのような匿名参加者によるオープンなネットワークの代わりに、ウェブにおいて既知のメンバーによる分散型の信用を確立します。つまり、Hyperledger Fabric はプライベートチェーンの側面を持っています。

プライベートな取引

例えば企業内の特定メンバーのみで、必要な情報をシェア・取引し合います。

プラグイン可能なアーキテクチャ

1つの仕様ですべてをカバーするのではなく、業界ニーズに合わせたプラグインインストールによりブロックチェーンを自由にカスタマイズできます。OSSのような思想で、多種多様なプラグインが存在します。

簡単な立ち上げ

言語やアーキテクチャを新たに学ぶことなく、チームが使っている言語でスマートプログラムコントラクトを作成できます。(提供されるAPI通信をコールするだけ)

フレームワーク的な側面を持ち、コンフィグを調整するだけで最低限の要件を実現できます。

アクセス、コントロール、ガバナンス

Hyperledger Fabric のネットワークは、ウェブ上の異なるユーザー、あるいは特定ユーザーによる通信のプライベートな「サブネット」チャネルで構成されており、安全かつ秘密の交流を可能にします。

例えばブロックチェーンネットワークでは、各取引はチャネル上で発生し、すべての取引相手は認証とそのチャネル上での取引許可を得る必要があります。これによりさらに高いレベルのセキュリティが実現され、特に競合となる他社や、機密情報を扱う社内の部署などが同じネットワークにいるときなどに役立ちます。

Hyperledger Fabricの使用例

あるお菓子メーカーが、日本内の特定の店舗やマーケットにお菓子をある価格で流通させたいとします。しかし、他国の小売業者などほかのマーケットには価格設定を明かしたくありません。税関、輸送会社、融資銀行など複数の取引相手が商品の輸送に関わる可能性があるため、この取引においてブロックチェーン技術の初歩的な様式を採用した場合、価格がすべての関係者に公開されるかもしれません。

Hyperledger Fabric では、プライベートな取引をネットワーク上で秘密にすることで、この問題を解決できます。ブロックチェーン上でデータを分割することで、必要な相手だけが特定のデータを利用できる状態にします。

Hyperledger Fabricに対する懐疑の声

2018年にビットコインが急落する前、暗号資産のマーケットは過熱状態にありました(2017年12月17日にピークを迎えました)。ブロックチェーンという新興技術に対する過度な期待に代わって懐疑論が台頭したことで、 Hyperledger などの類似技術も批判を受け、苦戦を強いられることとなりました。

Hyperledger FabricとHyperledger Sawtoothの比較

専門家の間では、 Hyperledger FabricHyperledger Sawtooth の比較について多くの議論がなされています。2つは同じように見えますが、実はいくつか重要な違いがあります。

認可のレベル

Hyperledger SawtoothHyperledger Fabric では、認可レベルに大きな違いがあります。 Hyperledger Sawtooth は実際のところ、パーミッションあり・なし両方のネットワークで動作します。そのため、制限がありません。

一方 Hyperledger Fabric は、パーミッションありのブロックチェーン接続のみが可能です。そのため、ビジネス用途にのみ適しています。 Hyperledger Sawtooth はビジネス用途においても Hyperledger Fabric の代わりになりえます。

コンセンサスのプロトコル

Hyperledger Sawtooth には現在、多数のコンセンサスアルゴリズムがあります。 Evidence of Elapsed Time や Practical Byzantine Fault Tolerance 、 Devmode 、 Raft 、 PoET CFT などがその一例です。一方 Hyperledger Fabric は、 Kafka と Solo 、 Raft のみをサポートしています。

Byzantine Fault Toleranceに対するサポート

Hyperledger Sawtooth では、 Byzantine Fault Tolerance によってあらゆる攻撃からネットワークを保護します。

一方 Hyperledger Fabric アーキテクチャでは、 Crash Fault Tolerance のみが提供されています。つまり、 Hyperledger Fabric は最高レベルのフォールトトレランス(耐障害性)を提供できていません。したがって、CFT(Crash Fault Tolerance)が順調に稼働するとしても、 Hyperledger SawtoothHyperledger Fabric よりはるかに進んでいるといえます。

スマートコントラクトの技術

スマートコントラクトは、本質的にはインターネットを通じて企業の契約を整理し、デジタル化するものです。 Hyperledger Sawtooth では、取引グループがこの機能を担います。

一方、 Hyperledger Fabric では Chaincode が用意されています。 Chaincode によって、あらゆるタイプのリーズニング・アセットが管理および実行されます。

Hyperledger Fabricの可能性

Hyperledger Fabric のアプリケーションは企業向けに開発されているため、様々な分野への応用が可能です。例えば、教育サービスの改善に適用することも可能です。2017・2018年度において、 IBM はいくつかの大学と協力しています。学習者は業務を効率的に管理したり、どこからでもアクセスできる証明書を取得したりするために Hyperledger Fabric を活用できるのです。

まとめ

今回は、企業向けのモジュール式ブロックチェーンフレームワークである Hyperledger Fabric について、基本的な仕組みやメリットを解説しました。 Hyperledger Fabric アーキテクチャとブロックチェーン技術は、世界中のさまざまな業界に大きな変革をもたらす可能性があるといえるでしょう。

ブロックチェーン技術は今後もさまざまな形での活用が予想されます。ブロックチェーン / サーバーレスに関する開発相談は、お気軽にお問い合わせください。