Block Chain根本課題の研究
研究の背景と狙い
ブロックチェーンとは,世界で初めて実現された,集中サーバが不要で不正が困難な多数のノード間の合意形成技術です.電子マネーとして実用化されたbitcoinやEthereumが有名ですが,電子マネーにとどまらず,電子投票,IoTリソース管理,スマート契約など,様々なサービスの基盤となる技術として,世界中から大きく期待されています.「インターネットに匹敵する発明」との評価もあります[1].
しかしながら,低消費電力化とセキュリティとの両立や,処理性能などの重要な課題が未解決であり,日々改善が進められています.
小川研では,任意のユーザが参加できるパブリック型ブロックチェーンを対象として,それら問題を抜本的に解決し下記を実現することを目標に研究を進めています.
・最大ノード数:1チェーンあたり合意形成に参加するフルノードは1万個,取引に参加できるライトノードは100万個
・安全性:一部の特権を持つノードに頼らずに1/3 (1チェーンあたり最大3,333個)のフルノードがビザンチンノードでも安定した合意形成を保証
・承認性能(TPS):レイヤ1で1チェーンあたり1万TPS以上
・想定する通信環境:世界の95〜99%をカバーできるノード間の最大通信遅延時間と最小通信帯域
(1) 低消費電力化と安定した合意形成の両立
ブロックチェーンでは,当選率の制御が出来ない公平なくじにより定期的に選ばれる検証者が,トランザクション(取引データ,以下Txと表記)を束ねたブロックを作成します.各ブロックは,そのブロックを構成する全bit列からハッシュ計算により求められた値(ハッシュ値)をそのブロックのID(識別子)として使用し,一つ前のブロックのIDを含んで構成されます.各ブロックがIDで連なることで,ブロックのチェーンを構成します.ドミノゲームで,端の数字が同じドミノをつないでいくルールに少し似ています.1本の分岐がないチェーン構造を作ることで,Txを台帳に反映する順序についてノード間の合意を形成します.各ノードはブロックを受信すると当該ブロックで指定されたTxを台帳(ノード毎の口座情報を管理するDBなどの任意の状態マシン)に反映します.「当選率の制御が困難」で「チェーンの分岐を防げる」くじは,「必要な計算量が予測できない計算問題を早く解いたノードを勝ち」とするProof of Work (PoW)のみが知られています.ところが,ブロック作成の報酬を狙ってノードの計算性能を拡大する競争が続いた結果,PoWの計算に必要な消費電力がオーストリアなどの1国の消費電力を超過する事態に陥いりました.このため,Ethereumで採用しているBLS RANDAOや,Algorandで採用しているVRFなど,当選率の制御などの不正が困難でかつ計算量が極めて少ないくじが複数提案され,PoWに変わるくじとして使用が進んでいます.ただし,チェーンが分岐時に一つの枝のみ伸び続ける特徴のあるくじは見つかっていません.このため,消費電力の抑止と引き換えにチェーンが分岐時にどちらの枝を有効とみなすか全ノードの合意を形成する手法が改めて必要になりました.
(2) 処理性能問題
ブロックチェーンはチェーンの分岐があると,合意形成が不安定になる特徴があります.ブロックの最大サイズを大きくする(含められるTx数を増やす),または,ブロックの発生間隔を短くするとチェーンが分岐する確率が高くなります.bitcoinの場合,1つのブロックに最大で約4,000個のTxを格納できます.ブロックの発生間隔は平均で約10分なので,1秒あたりで平均して最大毎秒7Tx(7TPS)の合意形成が可能です.一方,クレジット会社の決済処理性能は数1,000TPS程度必要とされていると言われています.ブロックチェーン技術が期待通り様々なサービスの基盤となるためには100-1,000倍程度性能を向上させる必要があると考えています.
(3) ブロックデータ量の増大問題
従来のブロックチェーン技術では,全てのノードがブロックチェーン全体を保持する必要があり,データ量の削減が重要な課題のひとつです.既存研究で,ブロックチェーンをブロック群に分割しブロックデータをノード間で分散保持させることで,1ノードあたりで保持する必要があるデータ量を削減する手法が提案されています.ただし,各ブロックのヘッダ情報については全てのノードが保持する必要があり,大幅なデータ量の削減は実現できていません.またノードの離脱や結託があってもブロックデータがネットワークから消失しない仕組みが必要ですが,実現されていないと考えています,
提案技術の概要
(1) シングルチェーンの処理性能向上技術
Tx処理性能の向上などを目標とした技術にIoTAがあります.IoTAはTx生成時に,先行する2つのTxのID(ハッシュ値)を含めることで当該2つのTxを承認したことを表明します.ブロックは生成せず,Tx自身による有向非巡回グラフ構造(Directed Acyclic Graph: DAG)(以下,Txグラフ)を形成します.これにより,ブロックサイズや間隔による処理性能(TPS)の上限を回避しています.ところが,矛盾するTxが複数発行された場合,どのTxを有効とみなすかについてのノード間の合意形成が困難なため,現状では特権のあるサーバー(コーディネータ)が指定したTxについて,全ノードが有効とみなすプロトコルを採用しています.すなわち,集中制御型の合意形成システムとなっています.
小川研の提案技術は,Txグラフとブロックチェーンを組み合わせることで,特権のある(trustfulな)ノードを必要とせずに,安定した合意形成を保持しつつTx処理性能を大幅に向上しました[2][3].
(2) チェーンの分岐を防ぐ合意形成技術
EthereumやAlgorand, SUIなどの主要なパブリックブロックチェーン技術では,いずれも少数(50〜100程度)の特権のあるノード(Validator)間の投票により周期ごとに有効なブロック(枝)を1つ決定する手法を採用しています.それぞれ,投票に必要な専用メッセージ数の削減やデジタル署名検証の計算量を削減するための独自の工夫を重ねていますが,プロトコルが複雑化する要因になっていると考えています.投票に参加するノードの数が多いほど結託攻撃が成功する確率を小さくできますが,投票に必要な専用メッセージ数がValidatorの数に比例またはその自乗に比例して増大してしまうため,従来,Validatorの数を増やすことは困難とされていました.このため全ノードが合意形成に参加できるPoWに比べてValidator間の結託による不正がしやすくその影響が懸念されています.またブロックの送信を遅延させることで多数決を成立させず合意形成を遅延させる攻撃が可能です[4].小川研ではTxグラフを活用し,投票の情報をTxに便乗させることで,全てのアクティブなノード間(最大1万程度)で投票を実施できる手法を検討中です[5].代表ノードの選定が不要であり,また,専用メッセージ数の削減やデジタル署名検証の計算量を削減するための独自の工夫なども不要になります.このため競合技術に比べて単純で方式上のバグも少なくなると期待しています.また,投票では有効なブロックを1つ選ぶのではなく,各ブロックのそれぞれについて締め切りまでに受信できたかどうかの多数決を取ります[6].このためブロック送信の遅延による合意形成の遅延も防げると考えています.
なお,小川研はRANDAOに先行して「公知の情報に対する複数のディジタル署名と自ノードの署名を入力としたハッシュ計算の結果が閾値以下であれば勝ち」とするくじ,Proof Of Lucky ID(PoL)を2018年に提案しています[7].PoLはRANDAOやVRFと同様PoWに比べ大幅に消費電力を削減します.ただしRANDAOと異なりブロック生成者が事前に公開されないためブロック生成者へのDoS攻撃ができない特徴があります[8].またブロック間でDAGを構成しくじ(乱数)のseedを更新することで,RANDAOやVRFと異なり,多数のノードが結託しても未来の当選確率を予見できない,という特徴もあります.このため,PoLを組み合わせることで,特定の取引の承認を遅延させたり承認する順番を意図的に入れ替えて不正に利益を得る攻撃もし難くできると考えています.
(3) 1ノードあたりのブロックデータ削減技術
提案手法では,一定個数(1,000個を想定)の連続するブロックで構成するブロック群内のブロックヘッダを要約したブロック群ヘッダを新しく定義し,各ノードはブロックヘッダの代わりにブロック群ヘッダを使用してブロックデータの管理を行うことで大幅なデータ量の削減を可能としました[9].特にブロックデータ自体は保持せずブロックヘッダだけを保持するライトノードの場合,保持が必要なデータ量を約1/1,000に削減します.ブロックデータを保持する役割のフルノードの離脱や結託があってもブロックデータがネットワークから消失しない仕組みについては詳細検討中ですが,現状のアイデアを信学会NS研究会で報告しています[10].
その他課題の検討状況と今後の予定
p2p型マルチチェーンの研究
複数のブロックチェーンを並行実行し,各チェーンの合意確定の判断やチェーン間通信を特別な中継用ブロックチェーンが集中管理することで全体のTx処理性能を改善する手法(HUB型マルチチェーン)が,PolkadotやAvalanche(subnet),Cosmos(cosmos HUB)などで採用されています.ただし,処理が複雑でありまた中継チェーンが性能と信頼性のネックとなる懸念があると考えています.HUB型マルチチェーンについてはEthereumコミュニティでも活発に研究され,Tx処理性能の改善を目的に最大64分散(シャーディング)を狙っていましたが,2023年秋以降検討を停止しています.一方で,特別な役割を持つ中継チェーンを必要とせず、2つのブロックチェーン間の直接通信で合意形成を行う手法(p2p型マルチチェーン)がCosmos IBCとして運用されています.本手法では、各ノードは通信する可能性のある全ての他ブロックチェーンのライトノードとして動作し、それらのブロックヘッダを常時受信し検証しておきます.2つのブロックチェーンに跨ったTxが発行された場合、各ノードは両方のチェーンのフルノードまたはライトノードとして当該Txが双方のチェーンで承認されたことを確認してから台帳を更新します.p2p型の手法ではHUBとなるチェーンが不要なため,それによるボトルネックを避けられると期待しています.ただし,チェーン間で複数回のメッセージ交換が必要であり,スケーラビリティの確保のためには,それらの処理量の削減や通信遅延時間の短縮が課題と考えています.今後,本質的な課題の抽出に取り組む予定です.
参考文献
- 総務省, 分散戦略WG中間とりまとめ, 2016年11月.
- Toshiki Shimazu, Takeshi Ogawa, "Proposal of Transaction Processing Performance Improvement Technology of Blockchain," IEICE International Conference ICETC2020, Dec. 2020.
- 島津俊輝,小川猛志, "ブロックチェーンにおけるトランザクション処理性能向上技術," 電子情報通信学会論文誌, Vol.J104-B,No.7,pp.613-618,Jul. 2021.
- Y. Gilad, et al., "Algorand: Scaling Byzantine Agreements for Cryptocurrencies," SOSP’17, Oc. 28–31, 2017, Shanghai, China.
- 矢澤倫己, 小川猛志, "Stakeと代表者選定及び投票専用メッセージが不要なブロックチェーン合意形成方法の検討," 信学技報, vol. 123, no. 397, NS2023-197, pp. 148-153, 2024年2月.
- 児玉純良, 小川猛志, "公衆ブロックチェーンへのDoS攻撃防止方法の検討", 信学総大, B-7-32, 広島, 2024年3月
- Takeshi Ogawa, Hayato Kima, and Noriharu Miyaho,"Proposal of Proof-of-Lucky-ID (PoL) to Solve the Problems of PoW and PoS," IEEE International Conference on Bitcoin 2018, pp. 1212-1218, Jul.2018.
- EThereum Secret leader election
- Masaki Obayashi, Takeshi Ogawa, "Reduction methods of the amount of data in blockchain node," IEICE International Conference ICETC2022, Nov. 2022.
- 脇中郁弥, 小川猛志, "ブロックチェーンにおける永続性を確保したブロック群分散手法," 信学技報, vol. 123, no. 397, NS2023-196, pp. 143-147, 2024年2月.