MENU

投票システムを試作し、FabricとEthereumを検証

処理性能と可用性を比較し、検証結果を考察

JGS研究プロジェクト IA-017チームの実装・検証

 

 

投票の電子化に関わる
課題・懸念への解決策

2017年JGS研究プロジェクトのIA-017チームは、ブロックチェーンのユースケースとして「投票」を取り上げ、2種類のブロックチェーン基盤上で実装を行い、個々の性能を検証した。同チームはその成果をまとめた論文で、JGS「優秀論文賞」を受賞している。

投票を選定したことについて提案者の相良恭三子氏(みずほ情報総研)は、「当初は、医療データやカーリースなどさまざまなユースケースが提案されましたが、投票の電子化におけるシステムダウンやデータ改竄の懸念に対してブロックチェーン技術が有効な解決策になるのではないかとの意見が大勢を占め、選択しました」と説明する(図表1)。

 

【図表1】投票システムの概要

検証の基盤として選定したのは、Ethereum、Hyperledger Fabric(以下、Fabric)、Hyperledger Iroha(以下、Iroha)の3つである。「数あるブロックチェーン基盤のなかからアプリケーションの拡張性に着目して、机上でふるいにかけました」と、サブリーダーの川口大輝氏(ニッセイ情報テクノロジー)は話す。ただしIrohaは、検証環境を構築する段階でIrohaプロジェクトからの情報入手が困難となったため、実装・検証を断念した。論文は、EthereumとFabricを対象に考察したものである。

Ethereumは、スマートコントラクトと呼ぶアプリケーションをブロックチェーン上の個々のノードで実行できるのが特徴である。ビットコインがブロックチェーン上の個々のノードで取引記録のみを管理するのと比べて、大きな違いだ。そしてスマートコントラクトは、Ethereum Virtual Machineという仮想マシン上で稼働する(図表2)。

 

【図表2】投票システムを実装したEthereum

 

これに対してFabric(検証したのはv0.6)は、4つのノード(Validating Peer)と1つの認証ノード(CA)を最小単位として構成され、すべてのノードで同一のプログラム(チェーンコード)が実行されるのが特徴である(図表3)。

 

【図表3】投票システムを実装したHyperledger Fabric

 

ネットワーク/セキュリティなど
総合的な知識が実装時に求められる

実装は、リーダーの川島貴司氏(フジミック)が投票システム用のスマートコントラクトとチェーンコードを開発してAWS上に環境構築し、川口氏がノードの増設などの設定を行うという分担方式で進めた。川島氏は、「研究プロジェクトに参加するまでブロックチェーンの知識をまったくもっていなかったので、開発に関する文献が少ないなか、苦労しつつ何とかプログラムを動かすところまでもっていきました」と感想をもらす。

投票システムには、ID/パスワードによるログイン、候補者の選択、投票、投票結果の集計の各機能と、有権者に投票権を付与するためのアカウント追加機能を実装した。

そして検証の対象としたのは、「基盤構築からアプリケーション実装まで」と「処理性能」「可用性」の2つの非機能要件である。

基盤構築とアプリケーション実装の検証結果について川口氏は、「各基盤の構成技術は共通しているものの、開発言語やノードの仕様、アカウント管理などが違うので、実装は基盤ごとに異なります。また基盤構築の難易度はそれほど高くありませんが、アプリケーションの実装では、プログラム開発やネットワーク、セキュリティなどの総合的な知識が必須であることが確認できました」と述べる。

処理性能は図表4のような4つのケースを想定し、負荷をかけて検証した。結果は、Fabricがいずれのケースでも優位で、トランザクション量の増加につれてCPUの使用率が上がることが確認できた。Ethereumは、「トランザクションとマイニングが同一Peerで行われているため」(論文)、Fabricよりも応答時間を要し、CPUの使用率は常時100%だった(図表5)。

 

【図表4】処理性能の検証条件(ケース1 ケース4)

【図表5】処理性能の検証結果

また可用性の検証では、EthereumとFabricとも、稼働ノードが減少してもサービスの継続が可能であった。

図表6は、検証内容の考察と課題のまとめである。

 

【図表6】検証内容の考察

「アクセスカウント」は、ブロックチェーン技術とは別機能であるため、法令遵守や利用環境、運用などを考慮する必要があること、「システム開発の難易度」は、EthereumとFabricともに文献が少なく、今後の充実が望まれること、また性能維持のための筐体数やPeer数などに関する「キャパシティプランニング」情報が今後必要になることなどを指摘している。

 

ブロックチェーンが身近になり
さらに関心が高まる

研究プロジェクトを振り返って塩川知子氏(DTS)は、「世間一般ではブロックチェーンの豊かな可能性が大きく喧伝されていますが、実際に構築してみると意外に大変なことがわかりました。ブロックチェーンを身近に感じられたのは大きな成果でした」と話す。また、佐川知孝氏(アコム)と鷲北 真嘉氏(JIEC)は、「ブロックチェーンは最先端の技術でありながら、最新の成果をダウンロードして手軽に試せるのが面白いところです。ブロックチェーンと仮想通貨に対する関心がさらに高まりました」(佐川氏)、「研究プロジェクトではハードウェアを意識することはありませんでしたが、業務の延長で、メインフレーム上での展開に強く関心をもちました。継続してブロックチェーンの研究を続けるつもりです」(鷲北氏)と期待と抱負を語る。

研究プロジェクトに伴走してきたアドバイザーの貝塚元彦 氏(日本IBM)の感想は、次のとおりである。「ブロックチェーン基盤を使ってビジネスレイヤで何ができるのか。メンバーたちは、ほとんど知識のないところから研究を進め、手応えのある結果を残せたと感じています」

・・・・・・・・

JGS研究プロジェクト・メンバー

◎リーダー

川島 貴司氏

株式会社フジミック
ソリューションセンター
デジタルメディア推進部
マネージャー

・・・・・・・・

◎サブリーダー

川口 大輝氏

ニッセイ情報テクノロジー株式会社
保険ソリューション事業部
インフラスペシャリスト

・・・・・・・・

相良 恭三子氏

みずほ情報総研株式会社
グループIT第3部
システムエンジニア

・・・・・・・・

佐川 知孝氏

アコム株式会社
システム統括部 システム開発室
システム開発第二チーム 係長

・・・・・・・・

塩川 知子氏

株式会社DTS
金融事業本部
第三金融事業部
開発第一担当

・・・・・・・・

鷲北 真嘉氏

株式会社JIEC
基盤エンジニアリング事業部
第3システム部

・・・・・・・・

◎アドバイザー

貝塚 元彦氏

日本アイ・ビー・エム株式会社
インダストリー・ソリューション事業開発
ブロックチェーン・ソリューションズ
部長 インダストリー・コンサルタント

・・・・・・・・

新着