web-dev-qa-db-ja.com

ブロックはHyperLedgerファブリックでマイニングされていますか?

HyperLedger FabricのプロジェクトがオープンソースのBlockChainソリューションをどのように実装しているかについてのドキュメントを読んでいます: https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md

PBFTコンセンサスアルゴリズムが使用されていることは確認しましたが、BlockChainネットワーク内のすべての検証ピア間でブロックがマイニングおよび共有される方法がわかりません。

11

Hyperledger Validating Peers(VP)はブロックをマイニングせず、ブロック間でブロックを共有しません。仕組みは次のとおりです。

  1. トランザクションは1人の信頼できるVPに送信されます。
  2. VPは、トランザクションを他のすべてのVPにブロードキャストします。
  3. すべてのVPは、トランザクションを実行するために従う順序で(PBFTアルゴリズムを使用して)コンセンサスに達します。
  4. すべてのVPは、全順序に従って「独自に」トランザクションを実行し、実行されたトランザクションでブロックを構築します(主にハッシュを計算します)。

トランザクションの実行は決定論的であり(そうである必要があります)、ブロック内のtxの数が固定されているため、すべてのブロックは同じになります。

30

Hyperledger Fabric 1.Xによると

  1. クライアントSDKを介したユーザーは、トランザクション提案を承認ピアに送信します。
  2. 承認ピアはトランザクションをチェックし、トランザクションの承認提案を行い(読み取り/書き込みセット(前の値/変更された値))、クライアントSDKに再度送信します。
  3. クライアントSDKは、すべての承認を待ちます。すべての承認提案を取得すると、1回の呼び出し要求を行い、Ordererに送信します。
  4. 注文者は、定義されたポリシー(コンセンサス)をチェックしてクライアントSDKによる呼び出し要求のレンタルを確認し、トランザクションを確認してブロックに追加します。
  5. ブロックに定義された構成によれば、指定された時間またはトランザクション数の後に、トランザクションハッシュ、メタデータ、および前のブロックハッシュを使用してブロックのハッシュを形成します。
  6. トランザクションのブロックは、注文者によってチャネル上のすべてのピアに「配信」されます。
  7. すべてのコミットピアは、承認ポリシーを検証し、読み取りセットがトランザクションの実行によって生成されてから、読み取りセット変数の元帳状態に変更がないことを確認します。この後、ブロック内のすべてのトランザクションと元帳を新しいブロックと資産の現在の状態で更新します。

元帳に含まれるもの

  • 1)現在の状態のデータベース(レベルBDまたはCouch DB)
  • 2)ブロックチェーン(ファイル)(リンクされたブロック)

ハイパーレジャーファブリックのトランザクションフローを読み取る

参照用の画像を確認してください Hyperledger Fabric Transaction Flow

8
PAVAN

Hyperledgerは、ブロックチェーンテクノロジーの傘です。上記のHyperledgerFabricはその1つです。 Hyperledger Sawtoothもマイニングを使用せず、次のコンセンサスアルゴリズムを追加します。

  • PoET経過時間の証明(Sawtoothに使用されるオプションのNakamotoスタイルのコンセンサスアルゴリズム)。 SGXを使用したPoETにはBFTがあります。 PoETシミュレータにはCFTがあります。 PoWスタイルのアルゴリズムのようにCPUを集中的に使用することはありませんが、フォークして古いブロックを含めることができます。 https://sawtooth.hyperledger.org/docs/core/release s/latest/architecture/poet.htmlでPoET仕様を参照してください。
  • [〜#〜] raft [〜#〜]任意の期間のリーダーを選出するコンセンサスアルゴリズム。タイムアウトした場合はリーダーを交換しました。ラフトはPoETより高速ですが、BFTではありません(ラフトはCFTです)。また、いかだはフォークしません。
  • unpluggable consensusを使用すると、ブロックチェーンを再初期化したり、ソフトウェアを再起動したりすることなく、別のコンセンサスアルゴリズムを変更できます。

完全を期すために、ビットコインを使用した元のコンセンサスアルゴリズム(およびマイニングを使用します)は次のとおりです。

  • PoWプルーフオブワーク。作業の完了(CPUを集中的に使用する中本式のコンセンサスアルゴリズム)。通常、許可のないブロックチェーンで使用されます
1
Dan Anderson