ビザンチン将軍問題とは

編集:
安藤 啓明 (Hiroaki Ando)

ビザンチン将軍問題とは、中央管理者が存在しないP2Pの分散型ネットワークにおいて、一部のノードが虚偽の情報を流したり故障したりして不正となった場合、どのようにネットワーク全体で正しい合意形成を行うかを議論する問題です。ビザンチン将軍問題は、分散型ネットワークが直面する最もよく知られた古典的な問題のひとつです。

この問題はしばしば、中世ヨーロッパにおける包囲戦に例えられます。たとえば、複数の将軍が一斉に攻撃か撤退を選択しなければならない場合に、将軍の中に裏切り者が存在することによって、軍全体が二分されてしまうといったケースです。ここでの「将軍」とは、ネットワークにおけるノードを指します。

ビットコインをはじめとする仮想通貨のネットワークにも、ビザンチン将軍問題と呼べる問題が存在します。その最も顕著な例が「二重支払」です。これを解決するためにビットコインに採用されたのがプルーフ・オブ・ワーク (PoW) と呼ばれるコンセンサスアルゴリズムで、マイナーに経済的なインセンティブを支払って大量の計算を行わせることにより、合意を形成します。このプルーフ・オブ・ワークによって、ビットコインは送金や取引のデータを正しく処理し続けることができるのです。