技術情報

Hyperledger Composerのチュートリアルをやってみる

Blockchain 技術情報 Hyperledger Composer

はじめに

PoCが一段落し、さらにブロックチェーンを使って実装の知識を深めるにあたり、Hyperledger ComposerというものがあることをPoCチームメンバに教えてもらいました。
Hyperledger Composerとは何か?についてはこちらに記載がありますので、ご参照ください。
ざっくり言うと、「ブロックチェーンアプリケーションを素早く作成するための開発フレームワーク」です。

おおまかな流れとしては、以下のようなイメージでアプリを作成できるようです。

  1. Hyperledger Composerを使用して、モデル、スクリプト、アクセス制御、クエリファイルで構成されたビジネスネットワーク定義を作成する。
  2. 1.のビジネスネットワーク定義をパッケージ化し、アーカイブとしてエクスポートしたものを、Hyperledger Fabricなどに展開する。

上記についてチュートリアルを進めて理解を深めていきます。

環境構築

前提条件として、開発環境を構築しておく必要があります。こちらを参照して、環境構築を行います。
Mac の場合はこちらも参考に構築します。

「Step 1: Installing Hyperledger Composer development tools」まで進めておきます。
最終的に、自分の環境は以下のようになりました。

– Operating Systems: macOS Sierra Version 10.12.6
– Docker Engine: Version 17.0.9.0-ce-mac35(19611)
– Docker-Compose: Version 1.11.2
– Node: v6.9.5
– npm: v3.10.10
– git: 2.11.0
– Python: 3.5.0
– VSCode: 1.18.0(Hyperleger Composerの拡張: 0.15.0)

Hyperledger Fabricの起動

Step 2: Starting Hyperledger Fabricを参考に、先に展開先のHyperledger Fabricを起動しておきます。

・必要なファイルのダウンロードと解凍

・起動

チュートリアル

チュートリアルはいくつかありますが、今回はDeveloper Tutorial for creating a Hyperledger Composer solutionをやってみます。

ステップ1:ビジネスネットワーク構造の作成

環境構築が完了したら、ステップ1から進めていきます。
Yeomanを使用して、スケルトンのビジネスネットワークを作成します。
以下のコマンドを実行し、対話形式で必要な情報を設定していきます。

以上でスケルトン完成です。
「tutorial-network」というディレクトリができているので、これをVSCodeで開いておきます。

ステップ2:ビジネスネットワークの定義

・モデルの定義
「models」ディレクトリ下にある「org.acme.biznet.cto」ファイルを開き、以下のように書き換えます。
言語の説明はHyperledger Composer Modeling Languageが参考になります。

・スクリプト追加
続いて、「lib」ディレクトリ下にある「logic.js」ファイルを開き、以下のように書き換えます。

・アクセス制御
「tutorial-network」ディレクトリ下に「permissions.acl」ファイルを作成し、アクセス制御のルールを追加します。

ステップ3:アーカイブ作成

ここからはコマンドライン操作に戻ります。
コマンドラインで「tutorial-network」ディレクトリへ移動し、以下のコマンドを実行します。

成功すると、同ディレクトリに「tutorial-network@0.0.1.bna」ができあがります。

ステップ4:デプロイ

こちらで起動したHyperledger Fabricにデプロイします。以下のコマンドを順に実行していくだけです。

1. composer runtimeをインストールする。

2. ビジネスネットワークを展開する。

3. ネットワーク管理者IDをインポートする。

4. 正常に展開されたか確認する。

ステップ5:RESTサーバ生成

以下のコマンドを実行するだけです。

「http://localhost:3000」にブラウザでアクセスしてみると、このような画面が出てきます。

それぞれのAPIにある「Try it out!」ボタンをクリックすると、APIを実行することができます。

Hyperledger Fabricの終了

起動したHyperledger Fabricを終了するには、以下のコマンドを実行します。

まとめ

以上で一通りチュートリアルが完了しました。
思ったよりも簡単にブロックチェーンアプリが作成できました。

ブロックチェーンを使って何か作ってみたいけど敷居が高そう…と敬遠されている方も、Hyperleger Composerなら簡単に作成することができるので一度試してみることをオススメします。

The following two tabs change content below.
Blockchain Online 編集部
「北海道をブロックチェーン技術の集積地とし、ブロックチェーン技術を活用した新しいビジネスを創出する」をビジョンに掲げる一般社団法人ブロックチェーンイノベーションプログラム(BHIP)が本サイトを運営しています。 https://blockchain-jp.com/bhip

Pickup post

  1. ブロックチェーンの基本的な仕組み
  2. 【満席御礼】2018年3月1日開催 無料セミナー 《ブロックチェーンフェスティ…
  3. ブロックチェーンを活用した医薬品のデッドストック販売プラットフォーム PoC […
  4. ブロックチェーンの技術:公開鍵暗号

Related post

  1. Fabric × Raspberry Pi

    技術情報

    Hyperledger Fabric 1.0.6 を Raspberry Pi で実行する環境の構築…

    はじめに以前の記事で Ethereum をRaspberry …

  2. 技術情報

    超簡単なBlockchainプロトタイプを Golang で構築

    はじめにBlockchainの使い道や可能性として様々なユースケー…

  3. Blockchain 技術情報

    技術情報

    IBM bluemixで HyperLedger Fabricの環境を構築してみる

    6月上旬となり一年ですごしやすい日々が続くはずの北海道ですが、日々シラ…

  4. Ethereum

    ブロックチェーンとは

    Ethereum入門:5分でわかるEthereum(イーサリアム)とは?

    昨年よりメディア等でよく話題に上がるブロックチェーン技術。暗号通貨を含…

  5. Blockchain 技術情報

    技術情報

    勉強会「初めてでもここまでできるブロックチェーン」第2部の内容紹介

    こんにちは。先日、6月30日に株式会社INDETAILにて勉強会「…

  6. Blockchain 技術情報

    技術情報

    JSON-RPC API で geth を便利に使う

    ブロックチェーンは、今後多くのサービス・システムに利用されることが期待…

Comment

  1. 本記事に対するコメントはまだありません

  1. 本記事に対するトラックバックはまだありません

最近の記事

おすすめ記事

  1. ブロックチェーンの基本的な仕組み
  2. ブロックチェーンの技術:公開鍵暗号
  3. ブロックチェーンを活用した医薬品のデッドストック販売プラット…
  1. 日本経済新聞 2017年2月8日

    トピックス/業界動向

    日本経済新聞さんでご紹介いただきました
  2. イベント情報

    【受付終了】ブロックチェーンプラットフォーム「Corda」を学ぶ –…
  3. 公開鍵暗号方式

    ブロックチェーンとは

    ブロックチェーンの技術:公開鍵暗号
  4. hash function

    ブロックチェーンとは

    ブロックチェーンの技術:ハッシュ関数
  5. トピックス/業界動向

    ブロックチェーンを活用した医薬品のデッドストック販売プラットフォームPoC[Ph…
PAGE TOP