Hyperledger Composer:エンタープライズブロックチェーンを構築する
今日、ほとんどのエンタープライズブロックチェーンプラットフォームは、内部ネットワークシステムをアップグレードするためにブロックチェーンを使用することに熱心です。そして、なぜ彼らはすべきではないのですか?プレゼントとしては最高の技術の1つです。この技術の展開を合理化するために、HyperledgerはHyperledgerComposerを提供してくれました.
このプロジェクトは、許可されたプラットフォームのより良い結果を保証するだけでなく、多くの時間を節約します。しかし、あなたの多くは、プロジェクトが実際に何であるかについて混乱しています.
それで、あなたを助けるために、私はHyperledgerコンポーザーのさまざまなコンポーネントについて話します.
はじめましょう!
第1章:HyperledgerComposerとは?
Hyperledger Composerは、エンタープライズブロックチェーン会社Hyperledgerのオープンソースプロジェクトの1つです。実際には、これはブロックチェーンフレームワークを実装するためのツールです。これは、問題なくシステムを既存のシステムに統合するのに役立つツールセットのコレクションと考えることができます。.
実際には、これは、既存のネットワークシステムがこの技術の助けを借りて新しい分散型プラットフォームと簡単に連携できることを意味します.
ユースケースをはるかに迅速に開発したい場合は、HyperledgerComposerを必ずチェックしてください。 ドキュメント. 彼らのドキュメントによると、彼らはより速い出力を提供し、数ヶ月待つのではなく、数週間以内に解決策を得ることができます.
ブロックチェーンの内部構造はそれほど単純ではないことをすでにご存知だと思います。そして多くの場合、あなたのほとんどはそれに適した開発チームを見つけるのに苦労しています.
したがって、問題を緩和するために、この技術は、開発者がコーディングプロセスを過度に複雑にすることなく理解できるシンプルなツールを提供します.
とにかく、現在、このプラットフォームはHyperledgerFabricインフラストラクチャのみをサポートしています。したがって、これを使用する場合は、ベースコンポーネントとしてFabricを選択する必要があります。しかし、Fabricは多くのプラグ可能なオプションをサポートしているように見えるので、HyperledgerComposerもサポートしています。.
Hyperledgerファブリックに適した他の検証プロセスもツールセットで利用できます.
ネットワークのモデリング
これは、ブロックチェーンの力を簡単に活用したい企業にとって素晴らしいニュースです。.
さらに、エンドユーザーは、ビジネスネットワーク用のこれらのブロックチェーンに直接接続されている制御されたシンプルなアクセスポイントにアクセスできます。だから、それは誰にとってもお互いに有利なシナリオです.
Hyperledger Composerのドキュメントによると、どの企業でも、特定の資産とトランザクションを割り当てるとともに、ビジネスネットワークを簡単に構成できます。.
明らかに、モデル化するときに、アセットをトランジションとどのように相互作用させるかはあなた次第です。また、もう1つの優れた部分は参加者であり、それぞれが固有のアイデンティティを持ちます。それでは、ガイドの次のセグメントに進みましょう。?
HyperledgerComposerの機能は何ですか?
そうですね、Composerには3つの主要な機能があります。彼らです –
シンプルなモデリング言語
ビジネスネットワークを展開するためのモデリング構造を定義する必要があることは承知しています。また、Hyperledger Composerのドキュメントを使用すると、簡単なドキュメントを入手できます。最良の部分は、世界で人気のある単純なプログラミング言語の1つであるJavaScriptを使用して構造化できることです。.
したがって、それに適した開発チームを見つけるのは簡単です。.
再利用可能な高速POC
あらゆる種類のユースケースについて、プラットフォームに追加する必要があります。そのために、概念実証モデルを再定義する必要があります。この点であなたを助けるために、プラットフォームは確かにあなたに莫大な時間を節約するであろう生産準備ができたPOCを提供します.
考えてみると、それらはすべて再利用可能であり、Web対応バージョンもカバーしています.
データ統合
既存のシステムを作成する新しいシステムに接続するのは本当に簡単だと言ったことを覚えていますか?実際には、Hyperledger Composerのドキュメントから、ループバック機能を使用してそれを正確に実行しています。したがって、既存のシステムの交換や相互接続に関して直面する可能性のある問題は、現在のところ問題にはなりません。.
開発者なら誰でも、このツールのデータ統合プロセスを気に入るはずです。.
HyperledgerComposerは実際のシナリオで実際にどのように機能しますか?
Hyperledgerの作成者のドキュメントによると、実際の作業に関しては特定のルールがあります。例を挙げて説明しましょう.
不動産業者が自分の業界に基づいてビジネスネットワークをモデル化していると仮定しましょう。したがって、そのために、彼/彼女は特定のタスクを実行できます–
- 参加者: 住宅所有者と購入者
- 資産: リスティングと住宅
- トランザクション: プラットフォームでの住宅の売買に加えて、リストの作成と終了
したがって、これは市場に出回っている不動産会社にとって完璧なモデルになることがわかります。明らかに、企業は他の関心のある参加者を追加する必要はありません.
さらに、Hyperledger Composerのドキュメントによると、参加者を役割に基づいて制限できます。たとえば、売り手として、あなたは潜在的な買い手にはアクセスできますが、他の売り手にはアクセスできません。一方、買い手は売り手が何を売っているのかを見ることができますが、他の買い手が何を買っているのかはわかりません。.
実際には、これは不動産業者にも当てはまる可能性があります。したがって、全米リアルター協会加入者は、リストを表示したり、それらにオファーをしたりできる売り手と買い手のための簡単なアプリケーションを作成できます.
さらに、新しい家が資産になる在庫とリンクすることもできます。一方、売却されたものは物件リストに含まれません。あなたの会社が他の関係者を必要とする場合、あなたはそれらを参加者として登録することもできます.
実際には、最良の部分は、あなたが望むとにかくネットワークを作ることができるということです。そのため、会社が何であれ、Composerを使用して分散型台帳テクノロジーをモデル化するのは比較的簡単です。.
第2章:HyperledgerComposerの重要な概念
Hyperledger Composerは、ビジネスネットワークを定義するためのモデリング言語とAPIが付属する一種のモデリングプログラムです。 Hyperledger Composerスマートコントラクトの助けを借りて、参加者に資産交換機能を提供するのは簡単です.
どうやら、彼らのプレイグラウンドの助けを借りて、あなたはツールが何であるかを簡単に体験することができます。さらに、単純化されたHyperledgerコンポーザーのスマートコントラクトにより、モデル化にかかる時間が確実に短縮されます。.
最良の部分は、ホストされているPlaygroundでHyperledgerComposerのスマートコントラクトを取得できることです。実際には、そのためにインストールする必要はありません。ただし、オフラインで試してみたい場合は、インストールする必要があります.
実際、オンラインではなくオフラインでビジネスモデルをテストまたは編集するのに適したオプションです。.
とにかく、すべての優れた開発機能を備えた開発ツールがあります。したがって、エンタープライズパラダイムのブロックチェーンに参加することを好む開発者にとっては完璧なソリューションです。.
とにかく、先に進む前に、Hyperledgercomposerの重要な概念のいくつかを確認する必要があります。彼らが何であるか見てみましょう!
HyperledgerComposerの重要な概念
-
資産
主に資産は、ネットワーク上の無形または有形の商品、資産、またはサービスのデジタル形式です。そして、これらはすべてレジストリに保存されます。実際には、ビジネスネットワークには、必要に応じてあらゆる種類の資産を含めることもできます。.
たとえば、金、住宅、土地、文書などです。ただし、すべての資産に一意の識別子が付いていることを確認して、それらを追跡できるようにする必要があります。さらに、自由に定義できます。.
言うまでもなく、資産はビジネスネットワークが機能するために不可欠です。そして、作曲家の助けを借りて、それを作成することは非常に簡単です.
-
参加者
ビジネスネットワークでは、参加者は単にそのシステムのメンバーです。実際には、彼らは自由に資産を所有し、取引の提出にも参加しています。さらに、資産のように、ネットワークのニーズに応じて参加者をモデル化できます.
したがって、識別子やその他の必要なプロパティも必要になります。したがって、参加者はHyperledgerComposerスマートコントラクトに参加するときに特定の機能を利用できます.
さらに、参加者を多くのネットワークの複数のIDにマップできます.
-
アイデンティティ
プラットフォームでは、すべてのIDは秘密鍵とデジタル認証の組み合わせです。実際には、ネットワーク上でのトランザクションとシステム上の参加ピアのマッピングには、すべてのIDが必要です。.
さらに、HyperledgerComposerのスマートコントラクトの重要な部分でもあります。とにかく、単一のアイデンティティは主に名刺にあります。さらに、そのIDが参加者にマップされている場合、参加者はそのビジネスネットワーク上でユーザーとして取引できます。.
-
トランザクション
Hyperledger Composerのスマートコントラクトには、トランザクションが絶対に必要です。これは、プラットフォーム上のアセットとやり取りするための媒体です。トランザクションの助けを借りて、支払いを送受信したり、資産の所有権をイベントで変更したりできます.
また、オークション資産に入札することもできます。ただし、これを行うには、適切なHyperledgerComposer認証が必要です。.
-
クエリ
実際には、クエリを使用すると、ワールドステート内のあらゆる種類のデータを返すことができます。実際には、ビジネスネットワークはクエリの定義を担当します。主に、多くのことを簡素化することで組織に利益をもたらします。.
さらに、カスタマイズするのに必要なパラメータの変更は簡単なので、非常に簡単です。また、HyperledgerComposer認証にもクエリを使用できます。これらの助けを借りて、データベースをすばやく検索し、必要に応じて結果を得ることができます.
ただし、クエリを送信するには、composerAPIを使用する必要があることを忘れないでください.
-
イベント
Hyperledger Composer認証のシステム内で、参加者や資産の場合と同じ方法で、ビジネスネットワークでイベントを定義します。.
イベントが定義された後、トランザクションプロセッサ機能は、ネットワーク上で非常に重要なことが起こったことを外部システムに返します。.
イベントが発生しているとき、他のピアは、composer-clientAPIを使用してそれらのイベントをサブスクライブできます。.
-
アクセス制御
さて、すべてのビジネスネットワークを維持するために、特定のアクセス制御ルールが必要です。実際には、これは誰が何にアクセスできるかを維持するのに役立ちます。さらに、ピアがそれらを使用できる特定の資産および条件へのアクセスを制御するのに役立ちます.
通常、アクセス制御言語は、あらゆる種類の条件を簡単に作成する方法です。たとえば、「家の所有者だけが家の所有権を譲渡できる」と言うことができます。
また、アクセス制御を外部化するために、ロジックを簡単に処理でき、保守、開発、デバッグ、および検査が簡単になります。.
-
ブロックチェーンステートストレージ
システムのすべてのトランザクションは、ブロックチェーン元帳に存在します。さらに、イベント参加者とアセットの現在の状態は、ブロックチェーン状態データベースに保持されます。実際には、コンセンサスを適切に維持するために、これらを保存しておくことが絶対に必要です。.
したがって、ブロックチェーンは状態データベースとともに元帳をノード間で分散します。したがって、ネットワーク上の元帳やその他の状態データベースも更新されます。さらに、コンセンサスプロトコルを積極的に使用しているすべてのピアは、主にコンセンサスプロトコルの更新を担当します。.
-
ビジネスネットワークカード
Hyperledger Composerの認証には、ビジネスネットワークカードが絶対に必要です。どうして?基本的に、これらはメタデータ、ID、および接続プロファイルの組み合わせであるためです。実際には、これらの名刺の助けを借りて、あなたは簡単にビジネスネットワークに接続することができます.
さらに、ネットワーク外のIDの機能を特定のIDウォレットに拡張することもできます。さらに、ここでは、すべてのIDが特定の接続プロファイルとビジネスネットワークに接続します.
-
接続プロファイル
Hyperledger Composer認証では、主に接続プロファイルを使用して、接続する必要のあるシステムを定義します。実際には、接続プロファイルは実際にはJSONドキュメントであり、ビジネスネットワークカードの一部です。.
さらに、すべてのプロファイルは、接続先のシステムの開発者からのものです。とにかく、あなたはビジネスネットワークカードを作るのにそしてそれらと通信する方法を説明するのにこれらを使う必要があるだけでしょう.
-
歴史家登録
成功したトランザクションレコードがどこに保存されているのか疑問に思ったことはありませんか?さて、歴史家のレジストリの助けを借りて、成功したトランザクションのすべての記録は元帳に記録されます。実際には、それを特殊なレジストリシステムと考えてください.
さらに、トランザクションに添付された、それを送信したIDと参加者も含まれます。明らかに、Hyperledger Composer認証を持たない人は、トランザクションを送信したり、トランザクションに参加させたりすることはできません。とにかく、システムはトランザクションをHistorianRecordアセットとして保存します.
実際には、システムの名前空間がこの形式の資産を定義します.
第3章:HyperledgerComposerアーキテクチャ
Hyperledger Composerサンプルアプリケーションの助けを借りて、開発者やアーキテクトは、完全に機能するブロックチェーンネットワークを簡単に作成できます。.
たとえば、モバイルまたはWebアプリケーションを任意のブロックチェーンビジネスロジック、ブロックチェーン上で実行されるあらゆる種類のビジネスロジック、既存のエンタープライズデータベースと新しい分散型ソリューションの統合などに接続するためのREST API.
Hyperledger Composerアーキテクチャには、知っておく必要のある高レベルのコンポーネントが合計8つあります。それらが何であるか見てみましょう–
- 実行ランタイム
- RESTサーバー
- コマンドラインインターフェイス
- JavaScript SDK
- VSCodeおよびAtomエディタープラグイン
- Yeomanコードジェネレーター
- PlaygroundWebユーザーインターフェイス
- ループバックコネクタ
実行ランタイム
Hyperledger Composerサンプルアプリケーションでは、さまざまなプラグイン可能なランタイムを提供します。さらに、現在、主にランタイムの3つの実装があります–
HyperledgerFabricv1.2。ここでは、状態ストレージは分散型台帳にあります.
組み込みランタイム実装。ここで、ランタイムはNode.jsプロセス内で実行されます。ただし、これは主にビジネスロジックの単体テストに適しています。さらに、状態はメモリ内のKey-Valueストアにあります.
Webランタイムの実装。ここでは、Webページで実行され、主にPlaygroundで機能します。さらに、ここでは、状態はローカルブラウザの履歴にあります.
接続プロファイル
実際には、接続プロファイルは主に実行ランタイムとのリンク方法を決定するのに役立ちます。さらに、実行ランタイムのすべてのタイプに対して多くの構成があります.
たとえば、Hyperledger Fabricと1.2ランタイムを使用する場合、TCP / IPポートとFabricピアのアドレスが含まれます。さらに、暗号化証明書などもあります.
すでにご存知のとおり、接続プロファイルはビジネスネットワークカードとHyperledgerComposerサンプルアプリケーションの一部です。.
JavaScript SDK
Hyperledger Composerサンプルアプリケーション内には、JavaScriptSDKがあります。実際には、JavaScriptSDKはさまざまなNode.jsAPIのセットです。これらのAPIは、開発者が作成されたビジネスネットワークと対話および管理できる新しいアプリケーションを作成するのに役立ちます.
APIは通常、2つのnpmモジュールに分割されます–
- 作曲家-管理者: ここでは、アップグレード、起動、インストールなどのビジネスネットワークを管理します.
- 作曲家-クライアント: これは主に、参加者とアセットの読み取り、削除、作成、および更新操作を実行します。さらに、ビジネスネットワーク上でトランザクションを送信します.
HyperledgerComposerサンプルアプリケーションのこれらのコンポーネントの詳細を確認しましょう.
作曲家-クライアント
実際には、このモジュールは基本的に任意のアプリケーションのローカル依存関係にインストールされます。その助けを借りて、参加者、資産に接続したり、ビジネスネットワークのトランザクションを送信したりできます。したがって、このモジュールは非常に必要です.
ネットワークが本番環境にある場合、そのアプリケーションの直接の依存関係を追加するには、このモジュールが必要になります.
作曲家-管理者
とにかく、管理モジュールはクライアントモジュールと同じ足跡をたどりますが、ここでは管理アプリケーションにインストールされます。このモジュールを使用すると、誰でもビジネスネットワークを作成または展開したり、定義を変更したりできます。.
コマンドラインインターフェイス
コマンドラインツールは、管理者または開発者がビジネスネットワーク定義を管理または展開するのに役立ちます。したがって、これはHyperledgerComposerサンプルアプリケーションの重要な部分でもあります。.
RESTサーバー
そうですね、RESTサーバーは基本的にビジネスネットワーク用のOpenAPIまたはSwaggerRESTAPIを生成します。それを生成するプロセス全体が自動的に行われます。さらに、RESTサーバーは、OpenAPI定義を使用してビジネスネットワークのコンポーザーモデルを変換します。.
とにかく、ランタイムは主に参加者とアセットを読み取り、削除、更新、作成します。これにより、トランザクションを処理または送信できます。.
ループバックコネクタ
基本的に、RESTサーバーはLoopBackコネクタを使用します。ただし、スタンドアロンで使用できる多くの統合ツールは、LoopBackをネイティブにサポートしています。さらに、LoopBackツールは、RESTAPIのより高度なレベルのカスタマイズにも使用できます。.
PlaygroundWebユーザーインターフェイス
これはアーキテクチャにおいて比較的重要です。実際には、これはビジネスネットワークをテストおよび定義するためのWebユーザーインターフェイスです。さらに、ビジネスアナリストがFabricランタイムまたはWebで実行されるビジネスロジックのプロトタイプを作成またはサンプリングすることを保証します。.
ヨーマンコードジェネレーター
Yeomanコードジェネレーターは、次のようなプロジェクトのスケルトンを生成するオープンソースフレームワークです。
- jsアプリケーション
- AngularWebアプリケーション
- スケルトンビジネスネットワーク
VSCodeおよびAtomエディター拡張機能
VSCodeとAtomのエディター拡張機能は、実際には広大なComposerコミュニティの貢献です。とにかく、VSCodeはACLファイルまたはComposerモデルを検証できる非常に強力な拡張機能です。また、構文の強調表示、スニペットのサポート、およびエラー検出も提供できます。.
一方、Atomプラグインはより基本的なレベルであり、構文のみを強調表示できます。.
第4章:HyperledgerComposerのインストールプロセス
ツールを実行するには、Composerをネットワークにインストールする必要があります。とにかく、Hyperledger Composerのインストール 主に2つの部分に分かれています。これらは –
- 前提条件
- 開発環境
正しく実行するには、最初に前提条件をインストールしてから、開発環境をインストールする必要があります。とにかく、それがどのように行われるか見てみましょう!
前提条件のインストール
Hyperledger Composerをインストールするには、PCにmacOSまたはUbuntuがインストールされている必要があります。したがって、移動する前に、これら2つのオペレーティングシステムのいずれかがあることを確認してください。それぞれのインストール方法を説明します.
Ubuntu
実際には、PCでFabricとComposerを実行するには、少なくとも4GBのRAMが必要です。.
これらは、開発ツールに必要な次のコンポーネントです–
- オペレーティングシステム:Ubuntu 16.04LTSまたはLinux14.04。ここでは、両方とも64ビットである必要があります。さらに、Mac OS10.12を使用できます.
- Docker-Compose:バージョン1.8以降
- Docker-Engine:バージョン17.03以降
- npm:v5.x
- Python:2.7.x
- ノード:8.9以上(ノートバージョン9以降はサポートされていません)
- git:2.9.x以上
選択に応じて任意のコードエディターを使用できますが、開発者はVSCodeを推奨しています.
Linuxを使用してインストールする場合は、必ず次の手順に従ってください–
- rootを使用せず、通常のユーザーとしてログインします.
- sudoでnpmを使用しないでください.
- 前提条件をインストールするときは、最初にcurlを使用してから、sudoで解凍します。.
- prereqs-ubuntu.shを実行するときは、通常のユーザーとして実行してください。ただし、インストールプロセスの一部でrootを使用する必要があるため、rootパスワードを要求される場合があります。.
- ルートにスーしないでください.
- rootとしてグローバルにノードをインストールしないでください.
あなたは彼らをチェックすることができます ドキュメントファイル HyperledgerComposerのインストールの前提条件をダウンロードする方法の詳細を取得するには.
マックOS
macOS Hyperledger Composerをインストールするには、Composerを使用する前に、これらのツールのいくつかをインストールする必要があります。これらは –
- AppleXcodeとnvm.
- macOSバージョン10.12.
まず、異なるバージョンのNode.js内でインストール、切り替え、更新できるようになるため、nvmをインストールする必要があります。.
さらに、Node、Docker、VSCodeをインストールする必要があります。とにかく、あなたは彼らをチェックすることができます doc HyperledgerComposerのインストールで実行するコードを完全に理解する.
開発環境のインストール
Hyperledger Composerの開発ツールをインストールするには、これらの手順のいくつかに従う必要があります。それで、彼らが何であるか見てみましょう.
インストールする必要のあるコンポーネント
まず、CLIツールから始めます。基本的に、便利なCLIツールがいくつかありますが、composer-cliが最善の方法です。次に、Yeoman、composer-rest-server、およびgenerator-hyperledger-composerを取得します。これら3つはシステムの中核部分ではありませんが、それでも役に立ちます.
その後、Playgroundをインストールする必要があります。このためには、ブラウザアプリをダウンロードしてインストールし、ローカルマシンでテストおよび編集する必要があります。.
さらに、IDEを設定する必要があります。ビジネスネットワークプログラミングに取り組むための遊び場がありますが、多くの人はIDEで働きたいと思っています。.
最後に、Hyperledger Fabricをインストールする必要があります。これにより、ビジネスネットワークの基盤が得られます。あなたがそれについてのより多くの情報を必要とするならば、あなたは間違いなく彼らをチェックするべきです ドキュメント.
第5章:遊び場の使い方
Hyperledger Composer Playgroundは、ビジネスネットワークを展開、構成、またはテストすることができる堅牢なユーザーインターフェイスです。さらに、高度な機能を利用して、他の参加者をネットワークに簡単に招待できます.
さらに、ネットワークのセキュリティレベルを変更したり、他のビジネスネットワークに接続したりできるようになります.
Hyperledger Composer Playgroundを比較的使用したことがない場合は、Playgroundチュートリアルを確認することをお勧めします。これは、チュートリアルがビジネスネットワークの展開、構成、さらにはテストの方法を学ぶのに確実に役立つためです。そして、あなたはビジネスネットワークカードとの相互作用を始める前にそれについて知る必要があります.
サイドノート: あなたと別のユーザーがHyperledgerComposer Playgroundを使用してFabricの同じインスタンスに接続している場合は、編集後にブラウザーを更新してください。そうしないと、編集内容が保存されなかった可能性があります。ブラウザを更新すると、ネットワークに加えた変更が受け入れられます。実際には、他のユーザーの変更を受け入れずにビジネスネットワークを変更すると、変更は永久に失われます。.
HyperledgerComposerプレイグラウンドでナビゲートする方法
ビジネスネットワークページ
Playgroundを起動すると、最初は明らかにこのページが表示されます。これは、このツールのデフォルトのランディングページです。さらに、ここから、使用するビジネスネットワークカードを確認できます。実際には、各ビジネスネットワークカードは、有効なネットワークに接続するために必要なすべての情報を提供します。.
ビジネスネットワークを選択したら、[定義]ページに移動します.
つまり、このページから、さまざまなことができるようになります。これらは –
-
既存のビジネスネットワークへの接続:
たぶん、あなたはすでにビジネスネットワークを展開していて、そのためのカードを持っています。だから、あなたはただカードをクリックしてそのビジネスネットワークに接続することができます.
-
新しいビジネスネットワークの展開:
Hyperledger Composer Playgroundを初めて使用し、まったく新しいビジネスネットワークを展開したいと考えているかもしれません。実際には、独自のシステムをモデル化するのに役立つサンプルビジネスネットワークがいくつかあります。または、最初からシステムを作成することもできます。.
-
ビジネスネットワークカードとのやり取り:
名刺がビジネスネットワークに接続するための媒体であることはすでにご存知でしょう。通常、これはIDとプロファイルの組み合わせです。通常、カードには、Hyperledger Composer Playground上の別のビジネスシステムに接続するために、カードを削除またはエクスポートするオプションがあります。.
-
BNCのインポート:
Playgroundから名刺をエクスポートして、別の名刺にインポートしたいと思うかもしれません。したがって、必要なのは前のPCの.cardファイルだけで、「ビジネスネットワークカードを追加」オプションを使用してインポートします。.
-
ユーザーシークレットとユーザーIDを使用した接続:
実際には、これは、ネットワーク管理者からのユーザーシークレットまたはユーザーIDを既に持っている場合に機能します。したがって、そのためには、「資格情報を使用して接続」オプションを使用してタブに入り、必要に応じて必要なカードを生成します.
-
遊び場チュートリアルをチェックしてください:
プラットフォームを初めて使用する場合は、そのコツをつかむためにチュートリアルを確認する必要があります。さらに、チュートリアルでは、ビジネスネットワークを最初から作成する方法や、その他の基本的な操作を実行する方法を確実に知ることができます。.
ビジネスネットワークオプション
ネットワークに接続すると、[定義]タブと[テスト]タブの2つのオプションが表示されます.
この2つでは、複数の操作を実行できます。ビジネスネットワーク名を変更しない場合は、basic-sample-networkになります.
これらの2つのタブがあなたのために何を持っているか見てみましょう.
[定義]タブ
[定義]タブのヘルプを使用して、ビジネスネットワークをアップグレード、編集、または作成することもできます。実際には、ページの左隅に、ビジネスネットワークを定義したファイルのリストが表示されます。.
これらのファイルの内容を表示するには、ファイルをクリックする必要があります。そうすると、編集して表示できるエディターのビューが開きます。さらに、ファイルを追加したい場合は、[ファイルの追加]ボタンをクリックするだけです。実際には、スクリプトファイル、モデルファイル、クエリファイル、およびアクセス制御ファイルをネットワークに追加できます。.
ファイルを変更および追加した後、Hyperledger ComposerPlaygroundの[DeployChanges]ボタンを使用して変更を展開できます。.
変更をデプロイした後、[テスト]タブで変更をテストできます。さらに、ビジネスネットワークを.bnaファイルとしてエクスポートすることもできます.
ただし、前に言ったことを覚えておいてください。変更を保存するために更新することを忘れないでください.
[テスト]タブ
[テスト]タブの助けを借りて、参加者のタイプの動作やアセットの動作、さらにはトランザクションプロセスなど、展開されたネットワークを簡単にテストできます。タブの左端に、すべてのアセットと参加者がリストに含まれていることがわかります.
さらに、それらのいずれかを選択すると、レジストリが開き、そこからすべてのアクティブなインスタンスを確認できます。プラットフォームに参加者またはアセットがまだない場合、レジストリは空になります.
一方、レジストリから対応するトランザクション、アセット、または参加者を作成することもできます.
また、すべてのトランザクションレジストリから、ネットワーク上で発生したすべてのトランザクションを確認できます。さらに、新しいアセットや参加者を作成するときに発生したトランザクションも表示されます.
さらに、正しく機能しているかどうかを確認するには、トランザクションを送信して、レコードから何が起こったかを確認するだけです。これは、障害のあるトランザクションやコードエラーを特定するための優れたアプローチです。.
第6章:ビジネスブロックチェーンネットワークの開発
ビジネスネットワークの定義
ビジネスネットワーク定義は、HyperledgerComposerの複数組織のプログラミングスキームの主要な概念の1つです。実際には、BusinessNetworkDefinitionクラスからそれらを知ることができます。さらに、それらは通常、composer-common-moduleで定義され、管理者とクライアントの両方がそれをエクスポートできます.
基本的に、3種類のファイルがあります–
- モデルファイル
- JavaScriptファイル
- アクセス制御ファイル
実際には、モデルファイルを使用してネットワークのドメインを定義できます。一方、JavaScriptファイルには、主にトランザクション用のプロセッサ関数が含まれています。さらに、トランザクションプロセッサ機能はFabricで実行され、アセットレジストリにアクセスできます。.
あらゆる種類のHyperledgerComposerの複数の組織のアナリストは、会社の構造そのものを定義するため、モデルファイルを作成できます。.
一方、JavaScriptファイルは、ビジネスアナリストからの要件を中継するため、開発者の最優先事項になります。.
一方、アクセス制御ファイルは、ネットワークのさまざまなファイルや機能への参加者の正しいアクセスを制御します。.
ビジネスネットワークの開発
ビジネスネットワークの開発は、複数のステップからなるプロセスです。それらが下から何であるかをチェックしてください.
-
モデル
Hyperledger Composerの複数の組織の開発者は、ビジネスアナリストと協力してドメインをモデル化します。さらに、Composer Modeling Languageがあり、アセットやその他のリソースの基本構造を提供します。.
-
アクセス制御
モデル、Hyperledger Composerのテクニカルアナリストまたは開発者と並行して、複数の組織がアクセス制御ルールに取り組んでいます。実際には、ノードには複数の条件と複数のレベル形式のエントリポイントがあります。.
-
デプロイ
スクリプト作成、パッケージ化、およびアクセス制御の後、開発者はネットワークを展開し、コマンドラインツールを使用してテストすることができます。.
-
テスト
さて、テストには、理想的なモデルが必要です。したがって、開発者はフレームワークChaiまたはMochaを使用して比較できます。また、この理由でファブリックを使用することもできます.
-
統合する
すべてのテストの後、フロントエンドアプリケーションが機能します。そのため、RESTサーバーを使用してフロントエンドアプリケーション用のRESTAPIを生成できます。.
アプリケーションの開発
Hyperledger Composerの複数の組織は、モバイル、Web、またはNode.jsにアクセスする必要があります アプリケーションの開発. そのため、ツールはフレームワークでのこれらの作成をサポートしています.
-
Node.jsアプリケーションを作成する
まず、HyperledgerComposerの複数組織プラットフォームを操作するためのNode.jsアプリケーションを開発する必要があります。さらに、ネットワークへの接続、ネットワークの更新、アセットの削除、レジストリの読み取りなどを行うことができます。.
-
Webアプリケーションを作成する
ネットワークに接続するWebアプリケーションがRESTAPI呼び出しを実行できることを確認する必要があります。実際には、RESTサーバーを使用してアプリケーションのAPIを生成するのが最善の方法です。.
-
イベントを購読する
Node.jsアプリケーションがシステム上のイベントをサブスクライブできることを確認してください。すでにご存知のように、イベントは事前に定義し、指定されたトランザクションがプラットフォームで発生したときに発行されます.
既存のシステムの統合
あなたは任意を統合することができます 既存のシステム HyperledgerComposerの例のLoopbackAPIを使用します。 HyperledgerComposerの例でどのように行われるかを見てみましょう.
- RESTサーバーを使用してRESTAPIを生成する.
- 必ずRESTサーバーからイベントを公開してください.
- RESTサーバーの認証プロセスを追加します.
- マルチユーザーモードでRESTサーバーを有効にする.
- HTTPSとTLSは、RESTサーバーのセキュリティを保証します。したがって、それらを追加するか、適切に構成してください.
- また、RESTサーバーをデプロイして、既存のネットワークソリューションを新しいシステムと統合することもできます。.
- ビジネスネットワークからRSTサーバーをカスタマイズして、アプリケーションにカスタムRESTAPIを実装できます。.
- Node-REDを使用すると、トランザクションの送信、読み取り、アセットの更新または削除、イベントのサブスクライブが可能になります.
- トランザクションプロセッサを使用して、ブロックチェーンから複雑な計算を削除するための外部HTTPまたはRESTサービスを呼び出すことができます.
第7章:問題の管理と診断
ソリューションの管理
Hyperledger Composerの例の管理は、主にIDと参加者の管理を参照しています。さらに、これら2つの要素は、エンタープライズブロックチェーンシステムのコアコンセプトです。.
-
参加者の合計
Hyperledger Composerの例でトランザクションを実行する前に、参加者をネットワークに追加する必要があります。したがって、参加者はアセットを作成し、システム上の他の参加者と交換することもできます.
-
BNCのインポート、エクスポート、作成
Hyperledger Composerツールの助けを借りて、ビジネスネットワークカードの作成は簡単です。そのために必要なのは、ID、証明書、接続プロファイルの組み合わせだけです。さらに、ツールは他のBNCのエクスポート、インポートにも役立ちます.
-
参加者のIDを発行する
Hyperledger ComposerツールのコマンドラインまたはAPIを使用して、参加者のIDを発行できます。したがって、新しいIDを発行すると、参加者はシステムと対話する権限を持ちます。.
-
参加者を既存のIDにバインドする
HyperledgerComposerツールを使用してすでにIDを作成している可能性があります。したがって、参加者を接続するだけで済みます。そのためには、コマンドラインまたはAPIを使用できます。これは、IDを作成するための同じ手順です。.
-
すべてのIDのリスト
適切なID管理システムを維持するには、すべての参加者をIDとともにマッピングする必要があります。したがって、リストを取得し、IDに対してそれらを確認して、それが発生することを確認します.
-
IDからの参加者の取り消し
ルールに違反した場合は、参加者のIDをキャンセルできます。したがって、参加者はビジネスネットワークに入ることができなくなり、ビジネスネットワークと対話することもできなくなります。.
問題の診断
Hyperledger ComposerツールはWinstonロギングモジュールを使用し、さらに、Configモジュールを使用して構成情報もチェックアウトします。実際には、何も見つからない場合は、デフォルト設定が使用されます.
ただし、構成ファイルが見つからない場合は、警告メッセージが表示されることを知っておく必要があります。基本的に、ディレクトリ内に構成が見つからなかったと表示されます。一方、デフォルトに満足している場合は、環境変数を使用してメッセージを抑制することができます.
問題の診断
Hyperledger Composerツールの助けを借りて、システムのエラーを簡単に診断できます。アプリケーションに問題がある場合は、診断を受けることができます。ただし、診断を取得するにはロギングフレームワークが必要になることを覚えておく必要があります.
基本的に、ロギング用のコンテナは2種類あります–
- アプリケーションが実行されているコンテナ
- トランザクションが実行されるチェーンコードコンテナ
デフォルト設定
フレームワークでは、次のすべてのレベルでログに記録された情報が表示されます–
- 警告
- エラー
- 詳細
- 情報
- デバッグ
とにかく、終了ログまたは入力ログは、主に関数の最後または最初に生成されます。したがって、デバッグレベルでそれらを取得します.
生産されるものを制御する方法?
Hyperledger Composerツールで診断した後に生成される情報の場所またはタイプを制御する場合は、単純なJSON構成を使用できます。したがって、Configモジュールを使用すると、JSONファイルを簡単に構造化できます。.
このコントロールを使用すると、次のことができます–
- メッセージが生成するレベル?
- メッセージはどこに行きますか?
第8章:HyperledgerComposerチュートリアル
遊び場チュートリアル
あなたを助けるために、彼らは完全なPlayground HyperledgerComposerチュートリアルを提供しています。このプロセスを使用すると、プラットフォームの使用方法を簡単に知ることができます。ここで簡単に説明します.
-
ステップ1:ComposerPlaygroundを起動します
まず、Hyperledger Composerチュートリアルで、Playgroundを開始する必要があります。実際には、開いたらビジネスネットワーク画面にアクセスできます.
-
ステップ2:ビジネスネットワークを作成する
次に、ビジネスネットワークを作成する必要があります。したがって、そのために、テンプレートを選択するか、独自のテンプレートをインポートすることもできます.
-
ステップ3:ビジネスネットワークに接続する
作成後、ビジネスネットワークカードが表示されます。したがって、ネットワークに接続するには、キットをクリックする必要があります。ウォレットのリンクオプションについては、HyperledgerComposerのチュートリアルもここにあります。.
-
ステップ4:モデルファイルを追加する
入ったら、[定義]タブに移動してモデルファイルを作成するか、必要に応じて編集します。また、チェックアウトするためのテンプレートがあります.
-
ステップ5:トランザクションプロセッサスクリプトファイルを追加する
モデルファイルを定義したら、ネットワークのトランザクションロジックファイルに進むことができます。実際には、主にJavaScript関数を使用します。トランザクションが処理されるときに、すべての関数が実行されます.
-
ステップ6:アクセスの制御
アクセス制御ファイルの助けを借りて、ルールを定義し、ネットワークの特定の部分へのアクセスを制限することができます.
-
ステップ7:ビジネスネットワークを展開する
すべてのアクセス制御ファイル、モデルファイル、およびスクリプトの準備ができたら、ネットワークを展開してテストできます。.
-
ステップ8:ネットワーク定義をテストする
まず、参加者、アセットを作成し、オンラインで取引して、ネットワーク定義をテストします.
-
ステップ9:参加者を作成する
実際には、ネットワークに2人の参加者をすばやく追加して、これら2人の間でアセットを共有し、結果を確認できるようにします。.
-
ステップ10:アセットを作成する
その後、アセットを作成し、参加者の1人をそのアセットの所有者にして、ノードがアセットを処理できるようにします。.
-
ステップ11:資産の譲渡
さらに、一部のアセットを他の参加者に転送し、結果を確認します。あなたはそれを繰り返すことができます逆もまた同様です.
この後、あなたは最終的にあなたのプラットフォームが最もよく機能するかどうかを知るでしょう.
調べるための他のチュートリアル
ソリューションの技術的側面について知る必要がある開発者向けのHyperledgerComposerチュートリアルもあります。これらの助けを借りて チュートリアル, 開発者はそれを微調整して好きなように作ることさえできます.
これ以外にもあります クエリ HyperledgerComposerチュートリアル。これでは、RESTAPIまたはComposerクエリ言語の使用方法を学習します.
実際には、クエリ言語は任意の基準の結果をフィルタリングでき、特定の遷移を呼び出すこともできます。たとえば、アセットを削除したり、結果セットを更新したりする操作を呼び出します。.
クエリファイルは親ディレクトリにあり、ビジネスネットワーク上で.qryというファイル拡張子が付いています。したがって、クエリ関数を完全に処理するために、HyperledgerComposerチュートリアルをガイドとして使用できます。.
第9章:エンディングノート
HyperledgerComposerガイドのエンドポイントに到達したようです。実際には、Hyperledger Composerの例は、ブロックチェーンネットワークをすばやく起動したい場合に最適なオプションです。.
ご覧のとおり、Playgroundを利用すれば、ブロックチェーンネットワークの立ち上げは比較的簡単です。したがって、新しいHyperledger Composerの例をテストすることは、ここでの優れたオプションです。全体を構成できるだけでなく、メンテナンスサポートも受けられます.
あなたを助けるために、私はあなたが最後の電話をかけるのに必要なすべての情報をすでに与えました。また、Hyperledger Composerチュートリアルの助けを借りて、使い方を学ぶのは簡単な作業です。.
残念ながら、彼らは最近、Composeの開発を一時停止すると発表しました。しかし、なぜ? Hyperledger Composerは堅牢なツールですが、機能を追加し続けると、複雑になります。.
このツールを使用するという全体的なアイデアは、ビジネスネットワークを展開するプロセスを簡素化することでした。しかし、機能を追加することがそれと矛盾する場合、それは最良のツールではありませんね。?
したがって、確実に、ネットワークの展開を継続するために引き続き使用できます。HyperledgerFabricに機能が追加されます。 Composerは、Fabricが機能するためにファブリックを必要とするため、Composerからもファブリックにアクセスできます。ただし、ツール自体に気を散らす要素は含まれません。.
しかし、彼らの投稿によると、誰かが機能を追加したい場合は、開発したバージョンをコミュニティに送信できます.
とにかく、うまくいけば、ガイドは何らかの形であなたを助けました、そして今あなたはそれが実際にどのように機能するかを知っています.