おはようございます。
web3リサーチャーのmitsuiです。
毎週土日の昼には基礎単語解説記事をお届けします。各記事をサクッと読めるような文量にして、改めて振り返れる、また勉強できるような記事を目指していきます。
本日は「ビザンチン将軍問題」です。
ぜひ最後までご覧ください!
1. ビザンチン将軍問題とは何か
この問題は1982年、コンピュータ科学者のLeslie Lamportらによって提唱されました。
たとえ話で考えてみましょう。
ビザンチン帝国の複数の将軍が、ある都市を包囲しています。将軍たちは離れた場所に陣を構えており、伝令を使ってメッセージをやり取りします。彼らは「全員で攻撃する」か「全員で撤退する」か、統一した行動を取らなければなりません。
問題は、将軍の中に裏切り者がいるかもしれないということです。
裏切り者は、ある将軍には「攻撃しろ」と伝え、別の将軍には「撤退しろ」と伝えるかもしれません。全員がバラバラの判断をすれば、軍は壊滅します。
つまり、この問題の本質はこうです。
参加者の中に嘘つきがいる可能性がある状況で、全員が同じ正しい判断にたどり着けるか。
これがビザンチン将軍問題です。
2. なぜこの問題は難しいのか
一見シンプルに思えます。多数決を取ればいいのではないか、と。
しかし、分散環境にはいくつかの根本的な困難があります。
メッセージが信用できない。 伝令(通信経路)が途中で改ざんされる可能性があります。受け取ったメッセージが本当に送り主の意図を反映しているか、確認する手段がありません。
誰が正直か分からない。 ネットワーク上では、参加者の身元や意図を事前に検証することが難しいです。裏切り者は正直者のふりをすることができます。
中央管理者がいない。 もし全員が信頼する「司令官」がいれば、その人の指示に従えばよいでしょう。しかし分散システムには、そのような特権的な存在がいません。誰もが対等であり、誰もが潜在的な裏切り者でもあります。
この3つの条件が重なると、正しい合意に至ることは極めて難しくなります。
3. 分散システムにおける「ビザンチン耐性」
この問題に対処する能力を「ビザンチン耐性(Byzantine Fault Tolerance, BFT)」と呼びます。
BFTとは、ネットワーク参加者の一部が故障したり、悪意を持って行動したりしても、システム全体として正しい合意を維持できる性質のことです。
古典的なBFT研究では、重要な閾値が示されています。
正直な参加者が全体の2/3を超えていれば、正しい合意は可能です。
逆に言えば、裏切り者が全体の1/3以上を占めると、合意形成は保証されなくなります。
例えば参加者が10人いる場合、3人までの裏切り者には耐えられますが、4人以上になると合意が崩壊する可能性があります。
この「2/3ルール」は、多くのblockchainプロトコルの設計思想の根底にあります。
4. Bitcoinはどう解決したのか
2008年、Satoshi NakamotoはBitcoinのホワイトペーパーを公開しました。 これはビザンチン将軍問題に対する、実用的かつ画期的な解を提示するものでした。
Bitcoinが採用したのはProof of Work(PoW)という仕組みです。
PoWの肝は「コスト付き投票」にあります。
ネットワーク参加者(マイナー)は、膨大な計算を行って新しいブロックを生成します。この計算には現実のコスト(電力、ハードウェア)がかかります。正しい台帳に貢献すれば報酬を得られますが、嘘の台帳を作ろうとすれば、そのコストが無駄になります。
つまり、Bitcoinは信頼の問題を経済的インセンティブに置き換えました。
嘘をつくことが「割に合わない」状況を作ることで、正直な行動を促しています。
これは「2/3の正直者」を前提とした古典的BFTとは異なるアプローチです。参加者の善意を信じるのではなく、合理的な経済行動を利用します。計算資源の過半数(51%以上)が正直であれば、ネットワークは正しく機能します。
5. Ethereum(PoS)はどう違うのか
Ethereumは2022年のThe Merge以降、Proof of Stake(PoS)に移行しました。
PoSでは、計算ではなく「ステーク(担保金)」が投票の裏付けとなります。
バリデーターはETHを預け入れることでネットワークに参加します。正しい検証を行えば報酬を受け取り、不正を行えば預けたETHが没収されます。この没収の仕組みをスラッシング(Slashing)と呼びます。
PoWとPoSの違いを整理してみましょう。
PoWでは、電力と計算資源を消費して正しさを証明します。「嘘をついたら計算コストが無駄になる」という構造です。
PoSでは、資産を担保に入れて正しさを保証します。「嘘をついたら資産が没収される」という構造です。
どちらも本質は同じです。経済的な合理性によって、裏切りを抑止しています。
PoSはBFTの古典的な2/3ルールにより忠実で、ステークの2/3以上が正直であればファイナリティ(合意の確定)が保証されます。
6. ビザンチン問題が示すweb3の本質
ビザンチン将軍問題を理解すると、web3の設計思想がより鮮明に見えてきます。
人を信じない設計。 blockchainは、特定の個人や組織を信頼しなくてもよいように設計されています。参加者が善人か悪人かは問いません。仕組みそのものが正しさを担保します。
正しさは多数派で決まる。 blockchainにおける「正しい台帳」とは、多数派の合意によって選ばれたものです。絶対的な真実があるのではなく、参加者の集合的な判断がルールとなります。
完全な安全は存在しない。 ビザンチン耐性にも限界があります。参加者の過半数やステークの2/3が悪意を持てば、システムは破綻しえます。blockchainは「魔法の安全装置」ではなく、特定の前提条件のもとで機能する合意システムです。
まとめ
blockchainは「改ざんできない魔法の帳簿」ではありません。 それは、嘘つきがいる世界でも機能するように設計された合意装置と言えます。
ビザンチン将軍問題は、この設計の出発点です。 信用できない相手がいる環境でどう合意を取るか。その問いに対して、Bitcoinは計算コストで、Ethereumはステークで、それぞれの解を示しました。
web3を理解するとは、「信用できない前提で協調する」という前提を受け入れることでもあります。
免責事項:リサーチした情報を精査して書いていますが、個人運営&ソースが英語の部分も多いので、意訳したり、一部誤った情報がある場合があります。ご了承ください。また、記事中にDapps、NFT、トークンを紹介することがありますが、勧誘目的は一切ありません。全て自己責任で購入、ご利用ください。
About us:「web3 for everyone」をコンセプトに、web3の注目トレンドやプロジェクトの解説、最新ニュース紹介などのリサーチ記事を毎日配信しています。
Author:mitsui @web3リサーチャー
「web3 Research」を運営し、web3リサーチャーとして活動。
Contact:法人向けのリサーチコンテンツの納品や共同制作、リサーチ力を武器にしたweb3コンサルティングや勉強会なども受付中です。詳しくは以下の窓口よりお気軽にお問い合わせください。(📩 X / HP)
→お問い合わせ先はこちら



