本文へスキップします。

【参】モーダルJS:読み込み
書籍DB:詳細

Hyperledger Iroha入門 ―ブロックチェーンの導入と運営管理―

まずは、動かしてみよう!

 現代は、あらゆる場面でデジタル化が瞬く間に拡大浸透するようになりました。その反面、情報の複製や改ざんが簡単に行えるようになりました。そのため、情報の真偽のみならず、情報の正確性・原本性を担保する必要が生じています。
 そういったなか、ブロックチェーンは、情報の正確性や普遍性を担保する仕組みとして注目を浴びています。仮想通貨を実現するための基礎技術から発展して、より信頼性を求められる場面で正確性や普遍性(=改ざんされない性質)を担保する機能として期待されています。
 本書では、日本発のオープンソース ブロックチェーンフレームワーク「Hyperledger Iroha」(2019.5.6発表)を使用して、ブロックチェーンを構築し、プログラミングやオペレーション、改ざん検知などを、実現するものです。
 なお、本書ではHyperledger IrohaをOracle VM VirtualBox内にUbuntu&Dockerを利用し、構築しました。短時間の作業で実際のブロックチェーン環境を利用できるようになります。本格導入はもちろん、予備導入、各種実験等に活用できます。
はじめに
本書の全体の流れ

第1章 Hyperledger Irohaが実現するブロックチェーン
1.1 ロックチェーンとは
1.1.1 ブロックチェーンとニーズ
1.1.2 ブロックチェーンが使用している暗号化技術
1.1.3 ブロックチェーンの仕組み
1.1.4 Peer to Peerネットワークと分散システム
1.1.5 ブロックチェーンの適用事例
1.1.6 スマートコントラクト(手軽でスピーディーな契約)
1.2 Hyperledger Iroha概要
1.2.1 Hyperledgerプロジェクトの全体像
1.2.2 オープンソースの利点
1.2.3 Hyperledger Irohaをおすすめする理由
1.2.4 既存のデータベースシステムの比較

第2章 ブロックチェーン環境構築
2.1 Hyperledger Irohaで構築するブロックチェーン環境の概要
2.1.1 本書が構築する環境の全体像
2.1.2 VirtualBox環境の概要

2.2 Hyperledger Irohaによるブロックチェーン構築
2.2.1 ① VirtualBoxの準備
2.2.2 ② Ubuntuの準備
2.2.3 ③ Dockerのインストール
2.2.4 ④ Dockerコンテナの作成

2.3 起動と動作確認と停止
2.3.1 起動手順
2.3.2 各プロセスの動作確認
2.3.3 停止手順
2.3.4 誤ってDockerコンテナを作成した場合の削除手順

第3章 Hyperledger Iroha操作
3.1 Hyperledger Irohaの用語ならびに概念
3.1.1 Hyperledger Irohaの世界
3.1.2 セキュリティ機能
3.1.3 PeerとHyperledger Irohaネットワーク
3.1.4 irohaコンテナ
3.1.5 some-postgresコンテナPostgreSQLデータベース World State View
3.1.6 Hyperledger Irohaの操作方法

3.2 ターミナルによる操作(iroha-cliコマンド)
3.2.1 iroha-cliコマンドの概要
3.2.2 情報確認(New queryサブメニュー①)
3.2.3 ドメインの作成(New transactionサブメニュー①)とトランザクションの確認(New transaction status requestサブメニュー)
3.2.4 アカウントの作成(New transactionサブメニュー②)
3.2.5 アセット作成(New transactionサブメニュー③)
3.2.6 アセットの加算(New transactionサブメニュー④)と残高確認(New queryサブメニュー②)
3.2.7 アセットの転送(New transactionサブメニュー⑤)と残高確認
3.2.8 トランザクションの内容確認(New queryサブメニュー③)

3.3 Hyperledger Iroha環境の再構築とターミナルによる操作(iroha-cliコマンド)
3.3.1 Hyperledger Iroha環境の再構築方法
3.3.2 ロールの作成と権限の確認
3.3.3 アセットの減算

第4章 Hyperledger Irohaプログラミング
4.1 JavaScriptによるHyperledger Iroha API使用の基礎知識
4.1.1 JavaScriptの実行環境の概要
4.1.2 JavaScript実行環境の構築
4.1.3 Hyperledger Iroha APIの解説

4.2 JavaScriptクライアントライブラリを使用したシンプルなプログラム例
4.2.1 例題のファイル構成と格納ディレクトリ
4.2.2 アカウント情報&残高情報の表示
4.2.3 キーペア作成(ed25519_keygen.js)およびキーファイル作成(keycreate.js)
4.2.4 アカウント作成
4.2.5 アセット加算処理
4.2.6 アセット転送処理&アセット加算処理
4.2.7 ブロック内容表示(ブロック位置指定)
4.2.8 トランザクション内容表示(アカウント指定)

第5章 Webアプリケーションベースの例題
5.1 JavaScriptクライアントライブラリを使用したWebアプリケーション
5.1.1 例題「コワーキングスペース日本」のシチュエーション
5.1.2 例題「コワーキングスペース日本」構築作業
5.1.3 例題「コワーキングスペース日本」の操作
5.1.4 例題「コワーキングスペース日本」ソースコード

付録 Hyperledger Iroha活用テクニック
A.1 ブロックチェーンの改ざん検知
A.1.1 ブロックチェーンの欠損
A.1.2 ブロックチェーンの改ざん①(トランザクションの作成者変更)
A.1.3 ブロックチェーンの改ざん②(処理内容)

A.2 Ubuntuのインストール手順
A.2.1 Ubuntuのインストール概要

A.3 複数Peer構成の構築
A.3.1 構築する複数Peer構成の概要
A.3.2 複数Peer構成の構築手順
A.3.3 複数Peer構成の設定フィル変更
A.3.4 複数Peer構成の起動手順
A.3.5 複数Peer構成の動作確認
A.3.6 複数Peer 構成で同期しない場合の対処
A.3.7 複数Peer構成のブロックチェーンの同期確認
A.3.8 複数Peer構成の停止手順

A.4 Hyperledger Irohaのバージョンについて
A.4.1 互換性の維持
A.4.2 バージョン1.1.0の変化
A.4.3 異なるバージョンが混在するHyperledger Irohaネットワーク
A.4.4 Hyperledger Irohaのリリース状況の確認

A.5 各種ソースコード解説
A.5.1 アカウント作成
A.5.2 アセット加算処理
A.5.3 アセット転送処理&アセット加算処理
A.5.4 ブロック内容表示(ブロック位置指定)
A.5.5 トランザクション内容表示(アカウント指定)
A.5.6 例題「コワーキングスペース日本」のコード解説
参考文献
索引

ここでは、本書に沿った作業の際に入力する文字・内容をまとめたテキストファイルや筆者が作成したサンプルプログラム等を圧縮ファイル(zip形式)で提供しています。圧縮ファイル(Iroha_Sample.zip:約775KB)をダウンロードし、ご解凍してご利用ください。

sha256: 7371a37b6b6512afeb970c191cb553411c4264895d9cd3dda9b0816c7941c94c