web-dev-qa-db-ja.com

Hyperledger FabricとSawtoothの違いは何ですか?

Hyperledger FabricHyperledger Sawtooth は両方とも、分散型台帳アプリケーションを構築し、プラグ可能なコンセンサスメカニズムとスマートコントラクト(チェーンコード)をサポートするプラットフォームです。

そのときの主な違いは何ですか?ブロックチェーンソリューションを実装するためにいつ他を選択するのですか?

30

Hyperledger FabricとHyperledger Sawtoothを選択する際に考慮すべき重要な違いは次のとおりです。

  • 許可/許可なし

    • Hyperledger Sawtoothは、許可されたブロックチェーンネットワークと許可されていないブロックチェーンネットワークの両方をサポートします。 Sawtoothには、ロールと権限を使用した柔軟なアプローチがあります。

    • Hyperledger Fabricは、許可されたブロックチェーンネットワークのみをサポートします。 Fabricには、プラガブルなメンバーシップサービスプロバイダー(MSP)による規範的/明確なアプローチがあり、より緊密なガバナンスフレームワークを実現します。

  • コンセンサスアルゴリズム

    • SawtoothはIntelのSoftware Guard Extensions(SGX)に基づくProof of Elapsed Time(PoET)を使用して、ランダムな待機時間に基づいてブロックをカットするリーダーを選出します。

    • Fabricは、プラグイン可能なコンセンサスアルゴリズムをサポートしており、トランザクションをブロックに並べることができます。Kafkaバージョンv1.0以降のサポート、および開発中のRaftおよびBFT実装。

  • スマートコントラクト言語

    • Hyperledger Sawtoothは、Go、JavaScript、Java、Python、Rust、およびEthereum Solidityベースのコントラクトをサポートしています。

    • Hyperledger Fabricは、Go、JavaScript、Java、およびEthereum Solidityベースの契約をサポートしています。

  • プライバシー

    • Hyperledger Sawtoothでは、ピアはすべてのトランザクションデータにアクセスできます。

    • Hyperledger Fabricには、複数のレベルのプライバシーがあります。参加者のセット間で完全にデータを分離するための「チャネル」を定義できます。各チャネルは基本的に独自のプライベートブロックチェーンです。または、参加者が同じブロックチェーンで取引する必要があるが、取引者のサブセット(および潜在的に規制者/監査人)に対してデータをプライベートに保つ必要がある場合は、「プライベートデータコレクション」を使用できます。プライベートデータはピアツーピアで共有され、すべてのピアがトランザクションを検証できるように、ハッシュがブロックチェーンに証拠として保存されます。さらに、Identity Mixerを使用して、トランザクション送信者の匿名性を保持できます。

  • トランザクションフロー

    • Hyperledger Sawtoothは、Order-Execute-Commitの従来のブロックチェーンフローをサポートしています。

    • Hyperledger Fabricは、一連のピアでトランザクションが最初に実行され、Execute-Order-Commitモデルに従う独自の承認モデルをサポートします。必要な承認者のセットは、契約レベルまたはデータレベルで定義できます。このアプローチにより、スケーラビリティが向上し、契約コードの非決定性が防止され、上記のように一連のトランザクション間でプライベートにトランザクションを実行できます。

  • その他

    • Hyperledger Sawtoothは、トランザクションバッチを作業単位としてサポートします。つまり、バッチ内のすべてのトランザクションがコミットされるか、コミットされないトランザクションのいずれかです。

    • Hyperledger Sawtoothには、(汎用)REST APIサーバー

    • Hyperledger Fabricは、キー範囲クエリまたはJSONクエリのいずれかを使用して、スマートコントラクトチェーンコードからのクエリをサポートします(状態データベースとしてCouchDBを使用する場合)

50
Naveen Sachdeva

Hyperledger Sawtoothは許可されたブロックチェーン実装と許可されていないブロックチェーン実装の両方をサポートしますが、Hyperledger Fabricは許可されたブロックチェーン実装のみをサポートします。

2
kots

2番目の質問:

When to choose one over the other to implement a blockchain solution?

私の意見では、ビジネスの明確な違いは、Hyperledger Fabricを使用すると、データのサブセットを参加者のサブセットに対してプライベートに保つことができるということです。

現実のビジネスネットワークでは、最終的にこれが必要になると思います。

0
Ytsen de Boer