こんにちは、yoshihiroです。短期集中ブロックチェーン講座も今回で折り返し、Part 4です!
Part 3では、ブロックチェーンの特徴として「データの改ざんが不可能」ということを解説しましたが、もう一つとても重要な特徴があるのを知っていますか?
それが、「ビザンチン将軍問題に対して耐性を持っている」ということです。
ちょっと聞きなれない言葉ですよね。それでは、まずはビザンチン将軍問題とはいったい何なのかから、始めていきましょう。
最初から読む >> Part 0:導入
前回の記事 >> Part 3:なぜブロックチェーン上のデータは改ざん不可能なのか
※本講座では、最も基本的なビットコインで使われるブロックチェーンを想定して解説しています
ビザンチンとは、歴史上の国の名前です。ビザンツ帝国、東ローマ帝国とも呼ばれ、西暦400年ごろから500年ごろまであったらしいです(歴史は苦手なのでよく知りません)。
そしてビザンチン将軍とは、ビザンツ帝国を攻め落とそうとしていた9人の将軍たちのことを言います。ビザンチン将軍という名前の将軍がいたわけではありません。
さて、9人の将軍はビザンツ帝国を攻め落とすためにそれぞれ軍隊を率い進行し、9方向から囲いこむことに成功しました。ビザンツ帝国はとても守りが固いので、9人全員の軍隊で一斉に攻め込まないと勝てません。
そこで9人の将軍たちは、今からビザンツ帝国に一斉に攻め込むかどうかを多数決で決めることにしました。しかし現代のような通信機器などありませんから、伝達係に自分の意見を託して情報交換します。
その結果、最後の一人を残して、攻める・やめとくが4対4という状態に。
しかし、なんと9人目の将軍はビザンツ帝国側に寝返っていた裏切り者だったのです!その裏切り者の将軍は、攻めるという意見の将軍には「自分も攻める」と伝え、やめとくという意見の将軍には「自分もやめとく」と嘘の情報を伝えました。
その結果、一斉に攻めると誤った情報を得た4人の将軍だけがビザンツ帝国に攻め込み、大敗を喫してしまったのです。
このビザンチン将軍問題は、複数の人で合意形成を行おうとするときに嘘の情報を流す人がいると、正しい合意がなされなくなってしまう問題の典型例としてよく取り上げられます。
従来までの中央集権的なシステムでは、このビザンチン将軍問題はあまり問題になりません。なぜなら、全ての意思決定は中央の管理者が行えば良いので、全体の合意をとる必要がないからです。
しかし、ALISが目指すような非中央集権的なシステムでは問題が顕著になってきます。管理者はおらず、みんな平等の役割しか持っていない中で、どう全体の合意を取るのか。
全員が全員完璧な良い人で、だれも嘘をつかない世界であれば簡単です。しかし、現実にはそうはいきません。ミスにより誤った情報を流す人が出てきますし、さらには故意に嘘の情報を流す人も現れます。
これは非中央集権的なシステムを構築する上で最も重要な課題となります。
ビットコインのブロックチェーンでは、取引データをみんなで確認し、「これで良いね」と合意する必要があります。もし嘘をつく人、つまり取引データを改ざんして申告する人がいたら、システムが破綻してしまいますよね。
そこで誰も嘘をつけないようにしたのが、PoW (= Proof of Work)というシステムです。
Proofは証明、Workは仕事なので、「仕事の証明」と訳されることもあります。一番仕事をした人が一番偉いから、その人に合意の決定権をあげましょう、というシステムです。
具体的には、マイニングをして条件に合ったナンスを一番初めに見つけた人(=一番仕事をした人)が、取引データを記載した新しいブロックを生成することができる、という仕組み全体のことをPoWと呼びます。(マイニングの仕組みはPart 2を読んでください)
このPoWにより、ブロックチェーンはビザンチン将軍問題を現実的に、合理的に解決してみせたのです。そして多くの人がこのPoWに魅了され、ビットコインの歴史が始まりました。
ということで、今回はここまでにしましょう。次回Part 5では、なぜPoWがビザンチン将軍問題を解決するのかについて、その課題とともに詳しく解説しますね。
↓この記事を書いた人↓