現代は、あらゆる場面でデジタル化が瞬く間に拡大浸透するようになりました。その反面、情報の複製や改ざんが簡単に行えるようになりました。そのため、情報の真偽のみならず、情報の正確性・原本性を担保する必要が生じています。
そういったなか、ブロックチェーンは、情報の正確性や普遍性を担保する仕組みとして注目を浴びています。仮想通貨を実現するための基礎技術から発展して、より信頼性を求められる場面で正確性や普遍性(=改ざんされない性質)を担保する機能として期待されています。
本書では、日本発のオープンソース ブロックチェーンフレームワーク「Hyperledger Iroha」(2019.5.6発表)を使用して、ブロックチェーンを構築し、プログラミングやオペレーション、改ざん検知などを、実現するものです。
なお、本書ではHyperledger IrohaをOracle VM VirtualBox内にUbuntu&Dockerを利用し、構築しました。短時間の作業で実際のブロックチェーン環境を利用できるようになります。本格導入はもちろん、予備導入、各種実験等に活用できます。
※デジタル地域通貨「Byacco/白虎」(HyperledgerIrohaベース)が2020年7月より、(有)スチューデントライフサポートが運営する会津大学内の売店やカフェテリア等にて運用開始。
※端末作業を容易にするため、以下のようなことを記述したテキストファイルもダウンロードできます。端末等にコピペして利用してください。
[2.2.1 ①VirtualBoxの準備] (Windowsで実行)
VirtualBoxインストールファイルのダウンロードサイト(オラクル・コーポレーション:USサイト)
https://www.oracle.com/virtualization/technologies/vm/downloads/virtualbox-downloads.html
または
https://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html
[2.2.2 ②Ubuntuの準備] (Windowsで実行)
Ubuntuのインストールイメージ(Canonical Ltd.サイト)
https://jp.ubuntu.com/download
[2.2.3 ③Dockerのインストール]
Dockerインストール(Terminal 2-2-1:Ubuntuのターミナルで実行)
sudo apt install curl
sudo curl -fsSL get.docker.com -o get-docker.sh
ls
sudo sh get-docker.sh
sudo docker -v
*アドバイス:Dockerインストール終了時点で仮想PCをクローンするなど現在の状態を保存することをお薦めします。
付録の「A.3 複数Peer構成の構築」は、この時点からスタートすることを想定しています。
[2.2.4 ④Dockerコンテナの作成]
Dockerコンテナ作成(Terminal 2-2-2:Ubuntuのターミナルで実行)
cd ~/
sudo docker network create iroha-network
sudo docker network list
sudo docker volume create blockstore
sudo docker volume list
some-postgresコンテナを作成(Terminal 2-2-3:Ubuntuのターミナルで実行)
sudo docker run -it -d --name some-postgres \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=mysecretpassword \
-p 5432:5432 \
--network=iroha-network \
postgres:9.5
irohaコンテナの作成準備(Terminal 2-2-4/Terminal 2-2-5:Ubuntuのターミナルで実行)
sudo apt install git
sudo git clone -b master https://github.com/hyperledger/iroha --depth=1
試し読みをする
主要目次
第1章 Hyperledger Irohaが実現するブロックチェーン
第2章 ブロックチェーン環境構築
第3章 Hyperledger Iroha操作
第4章 Hyperledger Irohaプログラミング
第5章 Webアプリケーションベースの例題
付録 Hyperledger Iroha活用テクニック
A.1 ブロックチェーンの改ざん検知
A.1.1 ブロックチェーンの欠損
A.1.2 ブロックチェーンの改ざん①(トランザクションの作成者変更)
A.1.3 ブロックチェーンの改ざん②(処理内容)
A.2 Ubuntuのインストール手順
A.3 複数Peer構成の構築
A.4 Hyperledger Irohaのバージョンについて
A.5 各種ソースコード解説