![見出し画像](https://assets.st-note.com/production/uploads/images/15982246/rectangle_large_type_2_cf90fd0c115e120f44067acc028e4d19.png?width=1200)
Hyperledger Fabricを学ぶ(3回目) トランザクションの流れ
こんにちは。
このブログでは、ブロックチェーン関連を中心としたテック系の情報の紹介をしております。
この連載では、オープンソースのブロックチェーンプラットフォーム「Hyperledger Fabric」について、少しずつ勉強を進めてゆきます。
自分なりに公式のドキュメントを噛み砕きながら、分かり易くまとめて行きたいと思います。
今回は3回目ということで。
Hyperledger Fabric上のブロックチェーンに、実際に情報が書き込まれるまでに、「Peer」「CA」「Orderer」がどの様に機能するのか、その流れについて話していこうと思います。
1.証明書の申請
まず、アプリケーションはHyperledger Fabricのネットワークに参加するために、CAに証明書の発行申請をします。
CAはアプリケーションのID情報を確認し、証明書を発行します。
2.トランザクションの発行
アプリケーションはCAから証明書を受け取ると、トランザクションを発行し、証明書と一緒にPeerに送付します。
ここで言うトランザクションとは、「AさんからBさんへ○○コイン送金」といった様な、ブロックチェーンに書き込みたい情報のことを指しています。
Peerはアプリケーションからトランザクションを受け取ると、そのトランザクションが不正な内容でないか、Endosement Policyと呼ばれるルールを基に検証を行います。
Peerは検証が済むと検証結果と署名をアプリケーションに送信します。
3.トランザクションのブロードキャスト
アプリケーションはPeerから検証結果を受け取ると、Ordererへトランザクションを送付します。
Ordererはアプリケーションから送付されたトランザクションの順序付けを行い、複数のトランザクションを1つのブロックにパッケージして、Peerに送信します。
OrdererからPeerへのブロック化されたトランザクションの送信をブロードキャストと呼びます。
そしてPeerはOrdererから受け取ったブロックを検証し、台帳へ書き込みます。
前回(こちら)と今回で、Hyperledger Fabricを構成する「Peer」「CA」「Orderer」という要素と、実際に台帳にブロックが書き込まれるまでにどの様な流れになるのか、簡単に説明してみましたが、なんとなく理解いただけたでしょうか?
次回以降では、「Peer」「CA」「Orderer」の3つの要素について、その役割と構造について、もう少し詳細に説明してきたいと思います。
おわり。