2008 年にピアツーピアの電子キャッシュ システムとしてビットコインが誕生して以来、それぞれ独自のメカニズムを持つ多くの暗号通貨が開発されました。しかし、ほぼすべての暗号通貨に共通しているのは、そのアーキテクチャの中核となる要素としてのブロックチェーンです。
いくつかの例外を除き、ブロックチェーンは意図的に分散化するように設計されており、分散型コンピュータ ノードのネットワークによって維持されるデジタル台帳として機能します。このため、ブロックチェーン技術により、仲介者を必要とせずに透明で信頼性の高い金融取引を実行できる、トラストレスな経済システムの作成が可能になりました。暗号通貨は、信頼に大きく依存する従来の銀行および支払いシステムの現実的な代替手段として採用されています。
ほとんどの分散コンピューティング システムと同様に、暗号通貨ネットワークの参加者は、ブロックチェーンの現在の状態について定期的に合意する必要があります。これをコンセンサス達成と呼びます。ただし、分散ネットワーク上で安全かつ効率的にコンセンサスに達することは、決して簡単な作業ではありません。
では、一部のノードが故障したり不正行為をしたりする可能性がある場合、分散型コンピュータ ノード ネットワークはどのようにして決定に同意できるのでしょうか。これは、ビザンチン フォールト トレランスの概念を生み出した、いわゆるビザンチン将軍問題の基本的な問題です。
ビザンチン将軍の問題とは何ですか?
簡単に言うと、ビザンチン将軍問題とは、ビザンチン将軍のグループが次の行動について合意しようとするときに、どのようにコミュニケーションの問題が発生するかを示す論理的なジレンマとして 1982 年に考案されました。
このジレンマは、各将軍が独自の軍隊を持ち、各グループが攻撃しようとしている都市の周囲のさまざまな場所に配置されていることを前提としています。将軍たちは攻撃するか撤退するかに同意する必要があります。攻撃するか撤退するかは問題ではなく、すべての将軍が合意に達し、つまり、協調して実行するために共通の決定に同意する限りです。
したがって、次の要件を考慮する必要があります。
各将軍は攻撃するか撤退するか(はい、いいえ)を決定する必要があります。
決定後は変更できません。
すべての将軍が同じ決定に同意し、それを同期して実行する必要があります。
前述のコミュニケーションの問題は、将軍同士が通信できるのは伝言メッセージのみであり、伝言メッセージは伝令によって転送されるという事実に関係しています。したがって、ビザンチン将軍問題の中心的な課題は、メッセージが何らかの理由で遅延、破損、または紛失する可能性があることです。
さらに、メッセージが正常に配信されたとしても、1 人以上の将軍が (何らかの理由で) 悪意を持って行動し、他の将軍を混乱させるために不正なメッセージを送信し、完全な失敗につながる可能性があります。
このジレンマをブロックチェーンのコンテキストに当てはめると、各ジェネラルはネットワーク ノードを表し、ノードはシステムの現在の状態について合意に達する必要があります。言い換えれば、完全な失敗を回避するには、分散ネットワーク内の参加者の大多数が同意して同じアクションを実行する必要があります。
したがって、このような分散システムで合意を得る唯一の方法は、少なくとも 2/3 以上の信頼性が高く誠実なネットワーク ノードを持つことです。つまり、ネットワークの過半数が悪意を持って行動すると、システムは障害や攻撃 (51% 攻撃など) の影響を受けやすくなります。
ビザンチンフォールトトレランス (BFT)
簡単に言えば、ビザンチンフォールトトレランス (BFT) とは、ビザンチン将軍問題から派生した障害のクラスに耐えることができるシステムの特性です。つまり、BFT システムは、一部のノードに障害が発生したり、悪意のある動作をしたりしても、動作を継続できます。
ビザンチン将軍問題には複数の解決策があり、したがって BFT システムを構築する方法も複数あります。同様に、ブロックチェーンがビザンチンフォールトトレランスを実現するためのさまざまなアプローチがあり、これがいわゆるコンセンサスアルゴリズムにつながります。
ブロックチェーンのコンセンサスアルゴリズム
コンセンサス アルゴリズムは、ブロックチェーン ネットワークがコンセンサスに達するためのメカニズムとして定義できます。最も一般的な実装は、プルーフ オブ ワーク (PoW) とプルーフ オブ ステーク (PoS) です。ただし、ビットコインのケースを例に挙げてみましょう。
Bitcoin プロトコルはシステムの基本ルールを規定しますが、PoW コンセンサス アルゴリズムは、コンセンサスに達するためにこれらのルールがどのように遵守されるかを定義します (たとえば、トランザクションの検証および検証中)。
プルーフ・オブ・ワークの概念は暗号通貨よりも古いものですが、サトシ・ナカモトは、BFT システムとしてビットコインの作成を可能にするアルゴリズムとして、その修正版を開発しました。
PoW アルゴリズムはビザンチン障害に対して 100% 耐性があるわけではありませんが、コストのかかるマイニング プロセスと基礎となる暗号化技術により、PoW はブロックチェーン ネットワークの最も安全で信頼性の高い実装の 1 つであることが証明されています。その意味で、サトシ ナカモトが設計したプルーフ オブ ワーク コンセンサス アルゴリズムは、ビザンチン障害に対する最も優れたソリューションの 1 つであると多くの人に考えられています。
最終的な考え
ビザンチン将軍問題は、最終的にさまざまなシナリオで広く適用されている BFT システムを生み出した興味深いジレンマです。ブロックチェーン業界以外では、航空、宇宙、原子力産業など、BFT システムの使用例がいくつかあります。
暗号通貨のコンテキストでは、効率的なネットワーク通信と優れたコンセンサス メカニズムを持つことが、あらゆるブロックチェーン エコシステムにとって不可欠です。これらのシステムのセキュリティ保護は継続的な取り組みであり、既存のコンセンサス アルゴリズムはいくつかの制限 (スケーラビリティなど) を克服する必要があります。とはいえ、PoW と PoS は BFT システムとして非常に興味深いアプローチであり、潜在的なアプリケーションは間違いなく幅広いイノベーションを刺激しています。

