ニュース

東工大の首藤准教授ら、パブリックブロックチェーンのシミュレータSimBlockを開発

テストネットで試す前にPC上で実験

SimBlockはブロックチェーンネットワークの可視化機能を備える

東京工業大学の首藤一幸准教授の研究グループおよびサイバーセキュリティ研究センターは、パブリックブロックチェーンのネットワークの挙動をPC上で実験し性能や安全性を検証できるシミュレータ「SimBlock」を開発した(プレスリリース)。オープンソースソフトウェアとして公開する。

SimBlockを使うと、1台のPC上で、多数のノードがインターネット上で地理分散して動作するパブリックブロックチェーンの動作のシミュレーション(模擬実験)を実施できる。インターネット上のテスト用途のネットワーク(テストネット)で試すより、はるかに手軽かつ素早いサイクルで実験できる。

現状のSimBlockは、Bitcoin、Litecoin、Dogecoinの各プロトコルのシミュレーション機能が組み込まれていて、ブロックチェーンの規模、ブロック生成間隔、インターネットを経由するノード間通信時間の各パラメーターを変更してシミュレーションを実施できる。Java言語で記述したSimBlockのコードに変更を加えることで、プロトコル変更(ノードの挙動の変更)によって何が起きるかをシミュレーションにより確認できる。ノード間通信とブロック高をアニメーション表示する可視化の機能を備える。

研究成果を国際学会で発表済み

国際会議IEEE ICBC 2019でのデモ展示

SimBlockの当初の利用目的は、学術研究への適用だ。首藤准教授らの研究グループでは、すでにこのシミュレータをブロックチェーン研究に応用し、その成果を国際学会IEEE ICBC2019、CryBlock 2019、IEEE Blockchain 2019などで論文を発表している。

最近はブロックチェーンに関する国際会議が複数立ち上がっている。ただし、ブロックチェーンに関する新手法の提案を実際に試すことはほぼ不可能に近かった。例えばBitcoinのプロトコルの改良を提案したとしても、実際のネットワークの多数のノードを一斉に更新して実験することは難しい。SimBlockにより、このような研究が加速すると期待できる。

研究成果として、次のような例がある。ブロックチェーンの各ノードがネットワーク的に近いノードと優先的に接続する「隣接ノード選択」技法の導入によって、ブロックの伝搬時間を短縮し、安全性やトランザクション処理性能を向上できることを示した。

このほか、ブロックチェーンネットワークとは別のネットワークでブロックとトランザクションを高速に配付する「リレーネットワーク」という手法のメリットが新たに判明した。今まで同手法はマイニング成功率を高めると言われていたが、首藤准教授の研究グループは実際にはマイニング成功率が上がることは確認できなかった。その代わり、リレーネットワークの利用により、マイニングで生成したブロックが孤立ブロック(一度生成されるが、ブロックチェーン分岐により無効化されてしまうブロック)となる確率が大幅に下がり、マイナーが報酬を失う確率が下がることが分かった。

首藤准教授の研究グループは、今後SimBlockを応用して、ブロックチェーンの性能を向上させる研究を続ける予定だ。さらに、ブロックチェーンへの攻撃手法とその対策のシミュレーションを実施することで安全性を向上させる研究にも取り組む。Ethereumのような他のブロックチェーン技術への対応、インターネットの通信時間などのパラメーターをより現状に近づける対応なども進める予定だ。

首藤准教授は、2006年にP2P(Peer-to-Peer)の各種ルーティングプロトコル(DHT、分散ハッシュテーブルの各手法)のシミュレーションを実施できる「Overlay Weaver」を開発、公開。P2P分野(あるいはオーバレイ・ネットワーク分野)の研究で使われた実績を持つ。今回発表のSimBlockも、ブロックチェーン技術に対して、科学的なアプローチで性能向上や安全性向上などの改良を加える研究にとって有効なツールとなるだろう。