ファイナリティとは何ですか?イーサリアムPoSはどのようにファイナリティを実現しますか?

Carlos Howard
Carlos Howard
Blockchain architect with 8 years' Ethereum experience; 8年以太坊开发经验的区块链架构师。

はい、承知いたしました。「ファイナリティ(Finality)」という概念について、できるだけ分かりやすくご説明させていただきます。


ファイナリティ(Finality)とは?

ファイナリティ(Finality)とは、裁判官が法廷で木槌を叩き、「本件の判決はこれにて確定、控訴は認められない!」と宣言するようなものだと想像してみてください。

ブロックチェーンの世界では、あるトランザクションやブロックが「ファイナリティ」に達したということは、それが台帳に恒久的に、不可逆的に記録されたことを意味します。マイナー、バリデーター、さらにはネットワークの大部分の参加者を含む誰もが、それを変更したり取り消したりすることはできません。このブロックとその中に含まれるすべてのトランザクションは、まるで石に刻まれたかのように、永遠に固定されます。

比較すると、より理解しやすくなります:

ビットコインの取引には「6ブロックの承認」が必要だと聞いたことがあるかもしれません。なぜでしょうか?

ビットコイン(および初期のイーサリアムPoW)は、**「確率的ファイナリティ(Probabilistic Finality)」**を採用しているからです。

  • 確率的ファイナリティ:鉛筆で紙に字を書くようなものです。書き立ては簡単に消しゴムで消せます。誰かがあなたの字の上にさらに層を重ねて書けば、消すのはさらに難しくなります。書かれた層が多ければ多いほど(つまり、承認されたブロックが多ければ多いほど)、あなたの字が消される(取引が覆される)可能性は低くなりますが、理論的にはその可能性は決してゼロではありません。それは「ほぼ不可能」に変更されるだけです。

  • (確定論的)ファイナリティ:一方、今日私たちが議論しているイーサリアムPoSが追求するのは、**「確定論的ファイナリティ(Deterministic Finality)」です。これは、金属板に直接活字を打ち込むようなものです。一度打ち込まれたら、それは完了であり、「ほぼ不可能」に変更されるのではなく、「絶対に変更不可能」**なのです。

一言でまとめると: ファイナリティとは、あなたの取引が一度承認されれば、永遠に「消えたり」または「無効になったり」しないことを保証するものです。

イーサリアムPoSはどのようにファイナリティを実現するのか?

イーサリアムは、プルーフ・オブ・ワーク(PoW)からプルーフ・オブ・ステーク(PoS)に移行した後、Gasperと呼ばれる全く新しいコンセンサス・メカニズムを導入しました。これは2つのアルゴリズムを組み合わせており、その中でファイナリティの実現を担う部分がCasper FFGと呼ばれています。

複雑に聞こえるかもしれませんが、**「委員会による投票」**プロセスだと考えると分かりやすいでしょう。

イーサリアムネットワークには、数万人の**バリデーター(Validators)**がいます。彼らは皆、保証金として最低32ETHをステーク(預け入れ)し、この「委員会」のメンバーとなっています。彼らの仕事は、トランザクションを検証し、ブロックを生成し、チェーンの状態に投票することです。

ファイナリティを実現するプロセスは、大まかに以下のステップに分かれます:

1. 時間単位:Slot と Epoch

  • Slot(スロット):これは「秒」のように理解でき、約12秒で新しいブロックが生成される時間単位です。
  • Epoch(エポック):これは「分」のように理解でき、32個のスロットで構成されます(約6.4分)。各エポックは投票期間となります。

2. コア概念:チェックポイント(Checkpoint)

各エポックの最初のブロックは、**チェックポイント(Checkpoint)**と呼ばれます。これをこの「投票期間」における最も重要なマイルストーンだと考えることができます。バリデーターの主な任務は、これらのチェックポイントに投票することです。

3. 投票プロセス:Justification と Finalization

このプロセスは、議会の立法に少し似ており、最終的に決定するには2回の投票が必要です。

  • ステップ1:正当化(Justification) あるチェックポイント(例えばA点としましょう)が、2/3以上のバリデーター(ステークされたETHの加重平均で計算)から投票支持を得ると、このA点は**「正当化された」(Justified)**と見なされます。

    これは、法案が一次審査を通過したようなものです。一般的に問題ないとされていますが、まだ最終的な法律ではありません。

  • ステップ2:ファイナライズ(Finalization) **「正当化された」チェックポイントAの直後のチェックポイントB「正当化」された(つまりBも2/3以上の投票を得た)場合、前のチェックポイントAは正式に「ファイナライズされた」(Finalized)**とマークされます。

    これは、法案が二次審査を通過し、大統領によって署名され、発効したようなものです。この時点で、法案は正式に法律となり、確固たるものとして変更することはできません。

通常、ブロックが生成されてからファイナライズされるまでには、2つのエポック、つまり約13分間待つ必要があります。一度あるブロックがファイナライズされると、それ以前のすべてのブロックもファイナライズされたと見なされます。

4. 抑止メカニズム:スラッシング(Slashing)

バリデーターが無作為に投票したり、悪意ある投票をしたりしたらどうなるのか、疑問に思うかもしれません。

ここがPoSの最も強力な点です。それは、経済的な罰則です。

もしバリデーターが悪意を持って行動しようとした場合、例えば同時に異なる2つのチェーンに投票しようとした場合(フォークを作成しようとする場合)、その行為はシステムによって検出されます。一度発見されると、彼がステークしているETHの一部、あるいはすべてが**没収(Slashing)**されます。

この罰則は非常に厳しく、32ETHを保有するバリデーターにとっては、数万ドルの損失になる可能性があります。したがって、バリデーターにとって、正直に投票することが最も経済的に合理的な選択となります。

これは例えるなら:「委員会メンバー」全員が誓約書に署名し、投票で嘘をついたり、不正行為をしたりすれば、委員会から追放されるだけでなく、担保として預けた全財産が没収されるようなものです。このような巨大な抑止力の下では、誰も悪事を働くことはほとんどありません。

まとめ

イーサリアムPoSは、**「2段階投票(正当化 -> ファイナライズ)」のメカニズムを通じてファイナリティを実現します。このプロセスには数万人のバリデーターが共同で参加し、厳格な「スラッシング(没収)」**制度によって安全性が確保されています。

あるブロックがファイナリティに達すると、それはネットワークの2/3を超えるバリデーターが、彼ら自身のリアルマネー(ステークされたETH)をもってその正しさを保証し、「このブロックは正しく、変更不可能である」と宣言したことを意味します。これこそが、イーサリアムPoSファイナリティの核心です。