見出し画像

次世代分散型アプリケーションプラットフォームのためのプロトコル開発支援システム

岡南 直哉(おかなみ なおや)
中村 龍矢(なかむら りゅうや)

 現在,Ethereum 2.0を始めとしてスケーラブルな分散ブロックチェーン技術の研究開発が行われている.中でも,シャードと呼ばれる複数のブロックチェーンに分割して性能を上げる研究が盛んである.シャーディングアルゴリズムのうち,特にクロスシャード(シャード間でやりとりが起こること)のユースケースについて十分な検証や議論が行われておらず,本番環境への実装提案まで持っていくことが非常に難しくなっている.岡南君と中村君は,Ethereum 2.0 data shardingのアプリケーション開発におけるローカルテスト用エミュレータMousseと,Ethereum 2.0 execution shardingでのユーザの行動を解析するトランザクションレベルのシミュレータShargri-Laの2つのソフトウェアを開発し,オープンソースソフトウェアとして公開した.

 Shargri-Laは,Ethereum 2.0 execution shardingにおけるユーザのシャード選択の行動を解析するためのシミュレータで,トランザクションレベルのシミュレーションが実行できる(図-1).Shargri-Laを使用することで, Execution shardingにおけるユーザの動作に対するテストが可能になり,研究者がシャーディングプロトコルを設計および改良するのに役立てることが期待できる.

岡南fig01

図-1 Shargri-Laのシミュレーションモデル

 Mousseは,Ethereum 2.0のアプリをローカルテストするためのエミュレータである.Ethereum 2.0のアプリは主にRollup(ブロックチェーンのプログラム実行をブロックチェーンの外で行って,計算負荷を下げ,スケーラビリティを上げること)を想定している.Mousseは次の3つのプログラムから構成されている.

・ Ethereum 2.0 data sharding のシミュレータ
・ Ethereum 2.0 data sharding における P2P クライアントを模倣する HTTP サーバ
・ ブロックやステートを可視化し・操作するためのダッシュボード(図-2

岡南02

図-2 Mousseのダッシュボード画面

 Ethereum 2.0 data shardingはまだ仕様策定段階であり本番環境への実装はまったく進んでいないため,Mousseは現時点でdata shardingのアプリのテスト環境としては唯一の手法となる.現状ドラフト段階の仕様に直接携わっているのはわずか10名前後であり,Ethereum 2.0開発チームですらまだ詳細を理解しているメンバの少ない中,仕様を再現しているMousseは貴重なソフトウェアであると言える.実際にシミュレータ上でSharded Blockchainを動作させることにより,負荷分散の偏り度合いやUXへの影響などを定量的に検証できるデータを取得し,世界最先端のブロックチェーンコミュニティに対して価値貢献していくことが期待できる.(竹迫良範PM担当)

[関連URL]
Mousseについては,https://github.com/ethereum-mousse
Shargri-La については,https://github.com/shargri-la

[統括PM追記] 改竄防止のために膨大な電力消費をするブロックチェーンから脱皮しようとしているEthereumにはたくさんの解決すべき技術課題がある.岡南,中村両君が開発したシステムは,開発者のためのテスト環境であり,門外漢には難しい話が多いのだが,結果のグラフなどを見ると,開発方針に分かりやすい指針を与えている.彼らがEthereumコミュニティの最前線にいることは間違いない.

(2021年6月30日受付)
(2021年8月15日note公開)