見出し画像

Hyperledger Fabricを学ぶ(12回目) サンプルネットワーク「Fabcar」の解説①「Fabcarのシステム構成」

こんにちは。

このブログでは、ブロックチェーン関連を中心としたテック系の情報の紹介をしております。

この連載では、オープンソースのブロックチェーンプラットフォーム「Hyperledger Fabric」について、少しずつ勉強を進めてゆきます。

自分なりに公式のドキュメントを噛み砕きながら、分かり易くまとめて行きたいと思います。

前回まで、サンプルネットワーク「Fabcar」の構築、台帳情報の参照や更新について説明してきました。

なんの説明もなく、取り敢えず動くところを見てもらいましたが、今回からはサンプルネットワーク「Fabcar」のシステム構成や、台帳の参照・更新に使用したチェーンコードについて、もう少し詳細に説明していこうと思います。

Fabcarのシステム構成

今回では、サンプルネットワーク「Fabcar」の全体的なシステム構成について説明して行きます。

サンプルネットワーク「Fabcar」は、自動車を台帳に登録して、自動車の色や所有者を変えたり、新しい車を追加したりできる、自動車管理台帳機能を提供します。

自動車の情報はFabcarネットワーク上のブロックチェーン台帳に保存され、チェーンコードを使ってブロックチェーン台帳にアクセスすることができます。

システムの全体的な構成を図式してみます。

画像1

相変わらずきたない絵で申し訳ありません、、、汗

Hyperledger Fabricを構成するPeer、CA、OrdererでFabcarのネットワークが構成され、それを利用するアプリケーションの中にユーザーと、ネットワーク上の台帳にアクセスするためのプログラムがあります。

ユーザーの登録

ネットワーク上の台帳情報を利用するためには、ネットワークにアクセスすることのできるユーザーの登録が必要になります。

画像2

前回の台帳の更新の回(こちら)では、「enrollAdmin.js」と「registerUser.js」というプログラムを使って、「admin」という管理者アカウントを登録し、そのアカウントを使って「user1」というユーザーを登録しています。

台帳情報の参照

ユーザーの登録後、台帳情報を参照するチェーンコードを呼び出すプログラムを実行して、台帳情報を参照します。

画像4

前々回の台帳情報の参照の回(こちら)では、「query.js」というプラグラムを実行することで、チェーンコード「queryAllCars()」を呼び出し、台帳の情報を読み取っています。

台帳情報の更新(追加)

台帳情報の更新のためには、台帳の参照の時と同様に、更新のためのチェーンコードを呼び出すプログラムを実行します

画像4

前回の台帳情報の更新の回(こちら)では、「invoke.js」というプログラムを実行することで、チェーンコード「createCar()」を呼び出し、台帳に新しい車の情報を登録しています。

今回は、サンプルネットワーク「Fabcar」の全体的なシステム構成と、台帳の参照・更新がどの様に行われているのか説明しました。

次回以降では、サンプルネットワーク「Fabcar」で扱われているチェーンコードについて、実際のプログラムコードを見ながら、もう少し詳しく説明していこうと思います。

おわり。

この記事が気に入ったらサポートをしてみませんか?