Hyperledger Fabricのワークフローについて簡単に説明してください

昨年の夏、寮だけでHyperledger Fabricについて学んだというのも偶然です。その後、さまざまな理由でこの方向をあきらめて、教師との履歴書を作成し始めました。今度は、ブロックをもう一度見始めました。チェーン関連のもの。
昨年ブロックチェーンを習い始めたとき、PKIや暗号化など、まだ習得できていないことが多く、当時はコンピューターネットワークも混乱していたため、かなりのエネルギーを浪費していました。PKI証明書については、ずっと頭を悩ませてきたことを覚えています。ただ理解する。当時、私は12件のブログの記録についても書いていましたが、今は長い間振り返っていませんし、エラーの数もわかりません。
3年生のときは、PKIや暗号などの講座をもう一度受講したのですが、当時はこの分野に入らなかったのではないかと思い、回り道をたくさんしました。考えてみるのも悪くないことですが、試行錯誤して色々と学びました。
数日前、講師はいくつかの論文を閲覧用に提供しました。そのうちの1つは「ブロックチェーンとデータベースシステムの間の線をぼかす:Hyperledger Fabricのケース」でした。これは昨日読んだ後、特にHyperledger Fabricのワークフローが紙にあったときに突然明るくなりました。セクション。もちろん中盤もとてもエキサイティングで読みやすく、アルゴリズム部は細かい例を挙げて説明してくれているので、すぐに仕上げるのに苦労しませんでした。これから、私は数日前に見たSBFTについて思います、それは本当に読みにくいです= _ = ||

アーキテクチャー

Fabricこれは1つですpermissioned blockchain system。つまり、ブロックチェーンネットワーク全体で、時間の経過peerとともに他者peerの存在を知ることができます。その他のpeer構成が可能organizationで、organization内部peersの信頼互いの間で、それぞれがpeer都維持ledgerコピーがledger有効と無効が含まtransactionに加えて、peerまた、データベースの状態の形で現在の状態を維持します。これに加えpeerて、ランク付けにordering service使用される別の重要な役割がありtransactionます。

ワークフロー

Fabric基本的なプロセス、すなわち4つの段階からなる模拟(simulate)排序(order)验证(validata)提交(commit)以下に示すように、。
ワークフロー

シミュレーション

その名前が示すように、このステージはトレーディングのシミュレーションにすぎず、実際にはlを更新しませんedger

clientトランザクション要求を開始し、要求が送信されますendorsersendorsement peer、これらpeerはに従ってendorsement policy選択されます)。これらのトランザクションはendorsers現在のローカルledger状态並列シミュレーションに従って実行されますが、元帳の状態は変更されませんが、このトランザクションの影響に関するread set1つと1つのwrite setレコードがあります。シミュレーションが完了すると、合計に署名しendorser一緒に返します。read setwrite setclient

場合はclient受信read setwrite set(悪意の裏書またはインテリジェント契約が矛盾につながる不確実なアルゴリズムが存在する可能性)と一致している、そしてclientそれは、実際のトランザクション要求を生成含まれていますread setwrite setそして対応する署名、およびに要求を送信しますordering service

並べ替え

ordering serviceからclientトランザクションソートします。トランザクションの内容はここではチェックされないことに注意してください。デフォルトでは、トランザクションが到着した順序でソートされます(この単純なソートは、多数のトランザクションの競合を引き起こし、特定の順序に従うとパフォーマンスが低下する可能性があります)並べ替えにより、トランザクションの競合が大幅に減少し、スループットが向上します。これは、このホワイトペーパーで提案されている最も重要な作業でもあり、ここでは詳しく説明しません)。

ordering serviceトランザクションがソートおよびパッケージ化された後、blockネットワークに送信されますpeers。すべてのトランザクションがpeer同時にこれを受信する保証はありませんblockblock受信の順序は一貫している(使用されているgossip协议ことが保証されています

確認する

ときにpeer受信block、検証フェーズが始まりました。

検証フェーズには、主に2つのチェックが含まれます。

  • Endorsement Policyチェック
    トランザクションが満たされendorsement policyているかどうか、および有効な署名が含まれているかどうかをチェックします。そうでない場合、トランザクションが改ざんされclientたり、悪意を持ってpeer直接破棄されたりする可能性があります
  • トランザクションの競合チェック
    ダーティデータの読み出しかどうかの問題(トランザクションで読み込んでチェックトランザクション間の競合、があるかどうかledgerの前にledgerトランザクションを破棄することがある場合は、契約前に変更されています)。

両方のチェックに合格すると、commitステージに入ることができます

提出する

peerされblock、ここで注目すべきは、(有効および無効)すべてのトランザクションは、すべてのミックスに追加することで、チェーンに追加。次に、有効なトランザクションに従って現在のledger状態を変更します


実際、Hyperledger Fabricのワークフローを説明する詳細な例がこのペーパーの付録にあります。これは本当に良心のペーパーです。それを理解していない学生は、トランザクションの例を見るためにペーパーに行くことをお勧めします〜

74件のオリジナル記事を公開 11のよう 30,000以上の訪問

おすすめ

転載: blog.csdn.net/yijiull/article/details/94966044