コンセプトから実装まで:ブロックチェーンの最終決定に関する包括的ガイド

上級10/15/2024, 10:45:14 AM
この記事では、ブロックチェーンにおける最終性の概念について、異なるブロックチェーンシステムが最終性を実現する方法、および関連する原則と課題について分析しています。

IRL ANALOGY

私の「WTF is…」記事では伝統的に、実生活のアナロジーから始めて、人々に要点を理解させ、基礎的な詳細に興味がない場合はそっと去ってもらうのが好きです。

このトピックでは、時間の経過とともにコンクリートが乾燥することを使用します:

これは、ブロックチェーンの文脈で「確定性」がどのような意味を持つかについての高レベルな説明です。コンクリートと同様に、注がれた時点(初期確認)から時間が経過するにつれて、初期のブロックが「真実」とは言えなくなることはますます困難になり、最終的に完全に硬化(確定化)されるまでの過程があります。その時点に達すると、ほぼ不可能になります。

まとめると、手順の順序を覚えておくだけです:

提出済み -> 確認済み -> 最終決定

もしそれがあなたにとって十分に良いと思われるなら、この件を閉じたと考えていただき、この記事にいいね!を押して日常に戻っていただくことをお勧めします。もし、Ethereumの文脈での最終性の方法、内容、理由について詳しく知りたい場合は、続けてください。

FINALITY NERD-OUT

よし、この概念について構造を構築し、理解を深めてみましょう。幸いなことに、時間の経過に伴ってすべてのコンポーネントが出現するため、私たちはそれを基に構築します。

まずは、定義を使って知識ベースをまとめましょう。

用語集

スロット(ブロックタイム):おそらくこれの別名を理解しているでしょう:ブロックタイム。スロットまたはブロックタイムとは、システムに新しいトランザクションのブロックを生成して現在の正規チェーンに追加するために与えられる時間の量です。

例のスロット/ブロック時間:

Ethereum - 12秒

ベース-2秒

  • ソラナ - 0.4秒
  • 確認:これは、トランザクションが現在のチェーンに追加されたブロックに正式に入ったときに行われることです。台帳の一部として「確認」され、ブロックが追加されると、追加の確認が蓄積されます。
  • エポック:32スロットの文字列。これは、役割と責任を定義するために使用されるブロックチェーン内の二次構造として作成されます。スロットはブロックの構築に使用され、エポックはデータの伝播、報酬の分配、バリデータの選択などに使用されます。
  • チェックポイントブロック:これは、特定のエポック内で作成された最初のブロックであり、チェーン履歴を固めるための参照ポイントとして使用されます。

最終性:取引が特定のチェーンの台帳に不可逆的に追加されたと見なされる地点。ただし、技術的な特性に関しては、この用語がすべてのコンテキストで均一に使用されるわけではないため、一様であるとは限らないのが最善です。Ethereumエコシステムでは、以下の条件が満たされた場合に使用されます:

Ethereum - 2エポックが経過すると(〜13分)

Optimistic L2 - フロードウィンドウが過ぎた後(約7日)

  • ZK L2 - 有効性の証明によって保証されるため、議論の余地のある2つのファイナリティモーメントがあります:ローカル(L2でプルーフが生成されたとき[~数分])とグローバルファイナリティ(プルーフがイーサリアムに投稿され、そこでフィニライズされたとき[~13分])
  • ブロック再編成("Reorg"):これは、かつて台帳の一部として確認されていたブロックが、何らかの理由でもはや有効とは見なされず、新しいチェーンが形成された場合のことです。通常、これにはペナルティが伴います。

そして、これらの用語をひとつのイメージで視覚化する試みがここにあります。これによって、少し理解しやすくなるでしょう。

最終性はどのようにしていますか?

さて、最終性を決定するために使用される要素があるので、それらはどのように組み合わされるのでしょうか?ルールは何ですか?

イーサリアムのために

  1. バリデータ投票 - 各エポック(32ブロックのウィンドウ)で、バリデータは現在および前のエポックのチェックポイントブロックに投票します。特定のチェックポイントブロックがステークの2/3以上の多数派に達するまで。$ETH
  2. 正当化されたチェックポイント - チェックポイントブロックが2/3の閾値に達すると、「正当化された」と見なされます
  3. 圧倒的多数決リンク - 後続の2つのチェックポイントブロックがa)両端揃えされ、b)互いにリンクされると、現在リンクされ、正当化されたエポックが最終的になる前に、エポックに含まれるブロック。単純な再編成では影響を受けなくなります。

ビジュアライズ

L2sについて

ええ、L2はEthereum上に構築されているので、基本的に同じですよね?

はいといいえ、親愛なる読者。私の投稿構造を思い出してください。ベースロールアップに関する前回の投稿. L2sは独自のブロックチェーンですが、最終的な決済にはEthereumに依存しています。つまり、答えもチェーン自体と同じくらいに多層化されています。

これらのレイヤーは2つの最終的なタイプに分解されます:

  1. ローカルファイナリティ - これは L2 自体のファイナリティであり、有効性証明を利用する L2 (別名 ZK ロールアップ) でのみ可能です。なぜなら、妥当性の証明は数学に裏打ちされており、証明の生成自体が正しいことを意味するからです。このため、ZK L2がプルーフを生成すると、プルーフがイーサリアムに投稿され、落ち着くのを待たずに、L2の状態が確定したと見なすことができます。これにはリスクと信頼の前提が伴いますが、リスク許容度によってはある程度の自信を持って行うことができます。
  2. グローバルファイナリティー - L2がローカルステートを確認し、証明を生成し(詐欺または妥当性)、その証明をEthereumに投稿し、Ethereumもまた、証明が投稿されたブロックを最終化した状態が達成された時点。それでも、L2の楽観的なサブセットにとっては、チャレンジ期間が過ぎるまで、逆戻りの可能性が残る。これは、証明の作成に必要な計算を削減するために行われるトレードオフである。

したがって、L2は特定のタイプである場合、ローカライズされた最終性を持つことができますが、それ以外の場合は、イーサリアムが投稿された有効性証明(ZK)を最終化するか、詐欺証明(楽観的なロールアップ)のチャレンジウィンドウが経過するまで待たなければなりません。

ビットコイン/プルーフオブワーク

これは実際にはかなり簡単です - Bitcoinの特定のPoW実装には最終性がありません。それにより、最も重いチェーンヘッド(つまり、十分なブロックを生成して「最も長い」チェーンとなる)を生成した者が正準台帳となります。これは、多くの理由から実用的ではないとはいえ、誰かが十分なハッシュを生成してBitcoinの過去の1日、1週間、1年を書き換えることができるということを意味します。

ただし、それには膨大なリソースと時間がかかるため、実用的ではありませんが、システムの重要な違いを示すものであり、実際には「長距離攻撃」と「ブロックの隠蔽」といういくつかの独自のMEVの種類を生み出し、鉱夫はブロックを生成して隠すか、連続したブロックを採掘してユニークな利益の機会を作り出し、捕らえることができます。

ビジュアライズされた:

なぜ最終性が必要なのか?

暗号通貨界最大のProof of Stakeチェーンで最終的な確定性に至る方法を知っていますが、それは非常に多くの作業のようです - なぜそれを行っているのでしょうか?

まあ、いくつかの利点があります:

  1. 経済的セキュリティー-システム(および私たち)が確信を持って変更されないと言えるポイントを持つことは、エコシステム参加者に「真実」に基づいて行動する自信を与えます。大口の送金や融資を考えてみてください。システムが極端でプロトコル外の介入なしに変更されないことが確実であるとわかれば、その真実に基づいて行動する自信が持てます。これが、通常、二次チェーン上で資金を解放する前にX回の確認または完全な最終性を待つ理由です。これが私を次の点に導いています...
  2. より速い決済-永続化されるポイントがあるため、エコシステム内で活動する当事者には、最終的に待機しなければならない最大決済時間があります。一方、PoWシステムではそのポイントが永遠に訪れず、純粋に個人の快適さの問題です。
  3. 攻撃ベクトルの削減 - PoWチェーンで可能になった数少ないMEVの機会について触れましたが、最終的には、それは単に「何も賭けない」という問題に対処しているだけであり、システムに悪意を持って行動する人にも損失が発生するようになっています。もしもあなたが検証者であり、最終的に確定したものを変更しようと試みる場合、プロトコルのルールを破る必要があり、その結果、あなたのステークが削減される可能性があります。

結論

なぜ私は最終性をカバーしたのですか? 実際の考えはない - 最近いくつかの人によって投げられているのを聞いただけで、それがよく使われているが、ブロックチェーンのメカニックとしては深く理解されていないことに気付きました。

Hope you enjoyed it and remember; it’s just your blocks hardening like concrete in the system and at some point they’re rock-solid.

免責事項:

  1. この記事は「」から転載されました。[BREAD]、オリジナルタイトルは[WTF is Finality?]、すべての著作権はオリジナルの著者に帰属[@0xBreadguy]. If there are objections to this reprint, please contact the Gate Learnチームが迅速に対応します。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 他の言語への記事の翻訳は、Gate Learnチームによって行われます。特に言及がない限り、翻訳された記事のコピー、配布、または盗用は禁止されています。

コンセプトから実装まで:ブロックチェーンの最終決定に関する包括的ガイド

上級10/15/2024, 10:45:14 AM
この記事では、ブロックチェーンにおける最終性の概念について、異なるブロックチェーンシステムが最終性を実現する方法、および関連する原則と課題について分析しています。

IRL ANALOGY

私の「WTF is…」記事では伝統的に、実生活のアナロジーから始めて、人々に要点を理解させ、基礎的な詳細に興味がない場合はそっと去ってもらうのが好きです。

このトピックでは、時間の経過とともにコンクリートが乾燥することを使用します:

これは、ブロックチェーンの文脈で「確定性」がどのような意味を持つかについての高レベルな説明です。コンクリートと同様に、注がれた時点(初期確認)から時間が経過するにつれて、初期のブロックが「真実」とは言えなくなることはますます困難になり、最終的に完全に硬化(確定化)されるまでの過程があります。その時点に達すると、ほぼ不可能になります。

まとめると、手順の順序を覚えておくだけです:

提出済み -> 確認済み -> 最終決定

もしそれがあなたにとって十分に良いと思われるなら、この件を閉じたと考えていただき、この記事にいいね!を押して日常に戻っていただくことをお勧めします。もし、Ethereumの文脈での最終性の方法、内容、理由について詳しく知りたい場合は、続けてください。

FINALITY NERD-OUT

よし、この概念について構造を構築し、理解を深めてみましょう。幸いなことに、時間の経過に伴ってすべてのコンポーネントが出現するため、私たちはそれを基に構築します。

まずは、定義を使って知識ベースをまとめましょう。

用語集

スロット(ブロックタイム):おそらくこれの別名を理解しているでしょう:ブロックタイム。スロットまたはブロックタイムとは、システムに新しいトランザクションのブロックを生成して現在の正規チェーンに追加するために与えられる時間の量です。

例のスロット/ブロック時間:

Ethereum - 12秒

ベース-2秒

  • ソラナ - 0.4秒
  • 確認:これは、トランザクションが現在のチェーンに追加されたブロックに正式に入ったときに行われることです。台帳の一部として「確認」され、ブロックが追加されると、追加の確認が蓄積されます。
  • エポック:32スロットの文字列。これは、役割と責任を定義するために使用されるブロックチェーン内の二次構造として作成されます。スロットはブロックの構築に使用され、エポックはデータの伝播、報酬の分配、バリデータの選択などに使用されます。
  • チェックポイントブロック:これは、特定のエポック内で作成された最初のブロックであり、チェーン履歴を固めるための参照ポイントとして使用されます。

最終性:取引が特定のチェーンの台帳に不可逆的に追加されたと見なされる地点。ただし、技術的な特性に関しては、この用語がすべてのコンテキストで均一に使用されるわけではないため、一様であるとは限らないのが最善です。Ethereumエコシステムでは、以下の条件が満たされた場合に使用されます:

Ethereum - 2エポックが経過すると(〜13分)

Optimistic L2 - フロードウィンドウが過ぎた後(約7日)

  • ZK L2 - 有効性の証明によって保証されるため、議論の余地のある2つのファイナリティモーメントがあります:ローカル(L2でプルーフが生成されたとき[~数分])とグローバルファイナリティ(プルーフがイーサリアムに投稿され、そこでフィニライズされたとき[~13分])
  • ブロック再編成("Reorg"):これは、かつて台帳の一部として確認されていたブロックが、何らかの理由でもはや有効とは見なされず、新しいチェーンが形成された場合のことです。通常、これにはペナルティが伴います。

そして、これらの用語をひとつのイメージで視覚化する試みがここにあります。これによって、少し理解しやすくなるでしょう。

最終性はどのようにしていますか?

さて、最終性を決定するために使用される要素があるので、それらはどのように組み合わされるのでしょうか?ルールは何ですか?

イーサリアムのために

  1. バリデータ投票 - 各エポック(32ブロックのウィンドウ)で、バリデータは現在および前のエポックのチェックポイントブロックに投票します。特定のチェックポイントブロックがステークの2/3以上の多数派に達するまで。$ETH
  2. 正当化されたチェックポイント - チェックポイントブロックが2/3の閾値に達すると、「正当化された」と見なされます
  3. 圧倒的多数決リンク - 後続の2つのチェックポイントブロックがa)両端揃えされ、b)互いにリンクされると、現在リンクされ、正当化されたエポックが最終的になる前に、エポックに含まれるブロック。単純な再編成では影響を受けなくなります。

ビジュアライズ

L2sについて

ええ、L2はEthereum上に構築されているので、基本的に同じですよね?

はいといいえ、親愛なる読者。私の投稿構造を思い出してください。ベースロールアップに関する前回の投稿. L2sは独自のブロックチェーンですが、最終的な決済にはEthereumに依存しています。つまり、答えもチェーン自体と同じくらいに多層化されています。

これらのレイヤーは2つの最終的なタイプに分解されます:

  1. ローカルファイナリティ - これは L2 自体のファイナリティであり、有効性証明を利用する L2 (別名 ZK ロールアップ) でのみ可能です。なぜなら、妥当性の証明は数学に裏打ちされており、証明の生成自体が正しいことを意味するからです。このため、ZK L2がプルーフを生成すると、プルーフがイーサリアムに投稿され、落ち着くのを待たずに、L2の状態が確定したと見なすことができます。これにはリスクと信頼の前提が伴いますが、リスク許容度によってはある程度の自信を持って行うことができます。
  2. グローバルファイナリティー - L2がローカルステートを確認し、証明を生成し(詐欺または妥当性)、その証明をEthereumに投稿し、Ethereumもまた、証明が投稿されたブロックを最終化した状態が達成された時点。それでも、L2の楽観的なサブセットにとっては、チャレンジ期間が過ぎるまで、逆戻りの可能性が残る。これは、証明の作成に必要な計算を削減するために行われるトレードオフである。

したがって、L2は特定のタイプである場合、ローカライズされた最終性を持つことができますが、それ以外の場合は、イーサリアムが投稿された有効性証明(ZK)を最終化するか、詐欺証明(楽観的なロールアップ)のチャレンジウィンドウが経過するまで待たなければなりません。

ビットコイン/プルーフオブワーク

これは実際にはかなり簡単です - Bitcoinの特定のPoW実装には最終性がありません。それにより、最も重いチェーンヘッド(つまり、十分なブロックを生成して「最も長い」チェーンとなる)を生成した者が正準台帳となります。これは、多くの理由から実用的ではないとはいえ、誰かが十分なハッシュを生成してBitcoinの過去の1日、1週間、1年を書き換えることができるということを意味します。

ただし、それには膨大なリソースと時間がかかるため、実用的ではありませんが、システムの重要な違いを示すものであり、実際には「長距離攻撃」と「ブロックの隠蔽」といういくつかの独自のMEVの種類を生み出し、鉱夫はブロックを生成して隠すか、連続したブロックを採掘してユニークな利益の機会を作り出し、捕らえることができます。

ビジュアライズされた:

なぜ最終性が必要なのか?

暗号通貨界最大のProof of Stakeチェーンで最終的な確定性に至る方法を知っていますが、それは非常に多くの作業のようです - なぜそれを行っているのでしょうか?

まあ、いくつかの利点があります:

  1. 経済的セキュリティー-システム(および私たち)が確信を持って変更されないと言えるポイントを持つことは、エコシステム参加者に「真実」に基づいて行動する自信を与えます。大口の送金や融資を考えてみてください。システムが極端でプロトコル外の介入なしに変更されないことが確実であるとわかれば、その真実に基づいて行動する自信が持てます。これが、通常、二次チェーン上で資金を解放する前にX回の確認または完全な最終性を待つ理由です。これが私を次の点に導いています...
  2. より速い決済-永続化されるポイントがあるため、エコシステム内で活動する当事者には、最終的に待機しなければならない最大決済時間があります。一方、PoWシステムではそのポイントが永遠に訪れず、純粋に個人の快適さの問題です。
  3. 攻撃ベクトルの削減 - PoWチェーンで可能になった数少ないMEVの機会について触れましたが、最終的には、それは単に「何も賭けない」という問題に対処しているだけであり、システムに悪意を持って行動する人にも損失が発生するようになっています。もしもあなたが検証者であり、最終的に確定したものを変更しようと試みる場合、プロトコルのルールを破る必要があり、その結果、あなたのステークが削減される可能性があります。

結論

なぜ私は最終性をカバーしたのですか? 実際の考えはない - 最近いくつかの人によって投げられているのを聞いただけで、それがよく使われているが、ブロックチェーンのメカニックとしては深く理解されていないことに気付きました。

Hope you enjoyed it and remember; it’s just your blocks hardening like concrete in the system and at some point they’re rock-solid.

免責事項:

  1. この記事は「」から転載されました。[BREAD]、オリジナルタイトルは[WTF is Finality?]、すべての著作権はオリジナルの著者に帰属[@0xBreadguy]. If there are objections to this reprint, please contact the Gate Learnチームが迅速に対応します。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 他の言語への記事の翻訳は、Gate Learnチームによって行われます。特に言及がない限り、翻訳された記事のコピー、配布、または盗用は禁止されています。
今すぐ始める
登録して、
$100
のボーナスを獲得しよう!