ビザンチン将軍問題

ビザンチン将軍問題とは?

ビザンチン将軍問題とは、ビザンチン帝国の将軍達が都市攻撃計画として、将軍同士で攻撃に投票するか、撤退に投票するかで過半数を取る問題としてたとえら得ました。主にコンピューターの世界で使われる用語です。

相互に通信しあう何らかのオブジェクト群において、通信および個々のオブジェクトが故障または故意によって偽の情報を伝達する可能性がある場合に、全体として正しい合意を形成できるかを問う問題です。

この問題は、インターネットというネットワーク上で相手とどの様にして嘘をつかず、信頼を築く事が出来るのかが焦点です。

たとえば、あるコンピュータが一方に「将軍Aに5BTC送った」と通知し、他方には「B将軍に5BTC送った」と通知したケースを考えてみましょう。この場合、5BTC送ったという情報が二重に記録されてしまった場合、ビットコインの残高情報にも不整合が発生します。これを、ビザンチン将軍問題といいます。

そして、ビザンチン将軍問題を解決する為使われるアルゴリズムがプルーフ・オブ・ワーク(Proof of Work、PoW)です。Proof of Workでは取引データをブロックチェーンに書き込んでいく際に、そのデータの正しさを仕事量によって証明します。