深度解读Solana共识机制:委托权益证明和历史证明

avatar
Block unicorn
6ヶ月前
本文は約3764字で,全文を読むには約5分かかります
Solana 高吞吐量背后的共识机制有何特点?

オリジナル著者: Cookies Research

オリジナルコンピレーション:ブロックユニコーン

ブロックチェーンのコンセンサス メカニズムは、トランザクションを検証し、正しい順序でブロックチェーンに追加する責任を負います。選択したコンセンサス メカニズムに応じて、検証プロセスと注文プロセスの効率が異なり、その結果、スループットのレベルも異なります。ブロックチェーンの世界では、Solana はブロック時間が 400 ミリ秒、1 秒あたりのトランザクション数 (TPS) が平均 2,000 ~ 3,000、理論上のピーク TPS が 65,000 である高性能チェーンです (参考までに、イーサリアムの TPS は約 12)。

この記事の目的は、Solana で重要な役割を果たし、高スループットに貢献する 2 つのアーキテクチャ、つまり Delegated Proof of Stake (DPoS) コンセンサス メカニズムと Proof of History (PoH) メカニズムに焦点を当てることです。

1. 従来のコンセンサスメカニズム

ブロックチェーンの主要なボトルネックであるスケーラビリティを理解することから始めましょう。

分散型ブロックチェーン ネットワーク内の各ノードは独自の内部クロックを持ち、このローカル システム クロックに従って動作します。トランザクションが発生すると、ノードはこのローカル システム クロックに基づいてトランザクションにタイムスタンプを付けます。

以下の図は、ノード内の時計を示しています。

深度解读Solana共识机制:委托权益证明和历史证明

トランザクションの最終確認または拒否のタイムスタンプも、このローカル システム ブロックに基づきます。従来のコンセンサス メカニズム (Proof of Work PoW や Proof of Stake PoS など) では、すべてのノードが相互に通信して互いのローカル クロックを調整し、トランザクション処理時に時刻を一貫して理解できるようにする必要があります。ノード間の通信は、ネットワーク全体で一貫した時間認識を確保するための共通の時間基準を確立するのに役立ち、それによってトランザクションの順序と確認を調整します。

深度解读Solana共识机制:委托权益证明和历史证明

世界中に何千ものノードが分散している分散型ブロックチェーンの場合、ノード間のローカル システム クロックの違いは避けられず、異なるノード間でトランザクションのタイムスタンプが不一致になります。これは、ブロック内でどのトランザクションが発生したか、およびそれらのトランザクションが発生した順序についてノードが合意する必要がある場合に問題になります。これはタイムスタンプ同期問題として知られており、ノード数が増加してネットワークの分散化が進むと、問題はさらに深刻かつ複雑になります。

深度解读Solana共识机制:委托权益证明和历史证明

最終的には、これにより悪意のある攻撃が行われる可能性があります。この時間の違いにより、悪意のある攻撃者は、ネットワークを乗っ取ろうとするために、実際のタイムスタンプに似た偽のトランザクションをブロードキャストすることができます。トランザクションの改ざんを防ぐには、タイムスタンプの正確性を検証するのにかなりの時間と処理能力が必要です。これにより、ブロックの確認が遅れたり、さらにはブロックが拒否されたりする可能性があります (タイムスタンプが異なるためにノードがブロックを無効と投票する可能性があるため)。

2. 履歴証明 (PoH) とは何ですか?

Solana では、トランザクションが正しく順序付けされたことを証明するために履歴証明 (PoH) が使用されており、これはネットワーク内のバリデーターによって簡単に検証できます。

各ノードが独自の独立したクロックを持つセクション 1 で述べた状況とは対照的に、PoH は 2 つのイベント間の時間の経過を検証するためにすべてのノードによって使用されるグローバル ブロックと考えることができます。このグローバル クロックを通じて、ノードは同じトランザクション履歴を調べ、トランザクションの順序に関して存在する可能性のある不一致を破棄します。これにより、迅速に合意に達することができ、トランザクションが検証されてブロックチェーンに追加されるまでにかかる時間を大幅に短縮できます。

PoH は暗号化手法を利用して、トランザクションの継続的な時系列記録を作成します。詳しく見てみましょう。

3. PoH テクノロジーに関する詳細な議論

各トランザクションは、SHA-256 を通じて処理されます。SHA-256 は、あらゆる入力を受け入れ、独自の予測不可能な出力を生成する機能で知られる暗号化ハッシュ関数です。トランザクションがハッシュされると、その出力が次のトランザクションのハッシュへの入力になります。このプロセスにより、ハッシュ出力に組み込まれたトランザクションの順序が確立され、長く連続したチェーンが形成されます。

PoH (Proof of History) は、ブロックチェーン内の時間の経過の重要性を検証する Verifiable Delay Function (VDF) を利用します。 VDF は、以前のハッシュだけでなく経過時間にも依存する、計算量が多い関数です。このメカニズムにより、Solana は実際の経過時間を暗号化して表示し、継続的な出力を生成できます。その結果、明確で検証可能な一連のトランザクションが存在し、イベントの一貫したタイムラインが保証されます。したがって、バリデーターは経過時間を簡単に確認できるため、ネットワークの信頼性がさらに高まります。

Solana で PoH (Proof of History) を使用すると、セキュリティと整合性の強力な層が追加されます。ハッシュ チェーンの一部を改ざんするには、後続のすべてのハッシュを再計算する必要があり、変更からネットワークを保護するために多大な労力がかかります。

PoH (Proof of History) は、バリデーターがブロックごとに処理する必要がある情報の量を大幅に削減します。トランザクションの最新状態のハッシュされたバージョンを使用することにより、ブロック確認時間が大幅に短縮されます。バリデーター (または複製ノード) がブロックを受け取ると、PoH (履歴証明) シーケンスによって、再検証なしで信頼できる、暗号的に信頼できるトランザクションの順序が提供されます。ネットワークがブロック検証のために次のバリデータを迅速に選択して移動できるため、この効率はコンセンサス メカニズムの高速化にとって重要です。

4. 委任されたプルーフ・オブ・ステーク (DPoS)

このセクションでは、PoH についての理解を深めることに基づいて、Solana のコンセンサス メカニズム (DPoS) で PoH がどのように適用されるかを説明します。

深度解读Solana共识机制:委托权益证明和历史证明

DPoS では、$SOL をステークするすべてのバリデーターはネットワーク ガバナンスに参加でき、ブロックの有効性について投票し、ブロックチェーンにブロックを追加するかどうかを決定します。プルーフ・オブ・ステークのプロセスに直接参加したくない $SOL 保有者 (あなたと私を含む) は、自分のトークンを他のバリデーターに委任して、事実上委任者にすることができます。この委任プロセスは、委任者の投票権 (所有する $SOL の額に比例) をこれらのバリデーターに分配します。 $SOL をステーキングする代わりに、委任者はブロック報酬の一部を受け取ります。

DPoS システムは、より大きなステークを持つノードがトランザクションを検証してブロックチェーンに追加するために選択される可能性が高いという原則に基づいて動作し、ブロック報酬を獲得する機会により、ノードが高レベルのパフォーマンスと整合性を維持することが促進されます。

DPoS と PoH の両方を理解したので、この知識を組み合わせて、Solana での典型的なブロック確認がどのようなものであるかの概要を説明しましょう。

5. Solana コンセンサスメカニズムの概要

1. リーダー ノードの選択: リーダー ノードは、PoH シーケンス (履歴証明トランザクション) の生成とブロックの作成を担当します。

この選択プロセスは、ノードのステーク ウェイトに基づいており、トークン所有者がノードに委任することによって増加します。リーダーシップの役割はバリデータ間で交代します。

2. トランザクションにタイムスタンプを追加する: リーダー ノードはトランザクションを受信し、PoH を使用してトランザクション シーケンスを形成するためにタイムスタンプを付けます。

3. ブロックの作成: PoH からのシーケンスを通じて、リーダー ノードはブロックの作成を開始します。

4. ブロックの伝播: 新しく作成されたブロックはレプリカ ノード (分散ネットワーク内の他のバリデータ) に送信されます。

5. トランザクションの有効性検証では、レプリカ ノードは次の 2 つのコンポーネントを検証します。

a. トランザクション シーケンス: PoH シーケンスを使用して、トランザクションが正しい順序で配置されているかどうかを確認します。これはグローバル クロックであるため、この検証にはノード間の往復通信は必要ありません (PoW や PoS などの一般的なコンセンサス メカニズムとは異なります)。

b. トランザクションの有効性: トランザクションがネットワーク ルールに準拠しており、有効であるかどうかを確認します。

6. ブロックの終了: トランザクションの順序と有効性を確認した後、ブロックがブロックチェーンに追加されます。次に、次のリーダー ノードが選択され、プロセス全体が最初から始まります。

結論は

Solana はブロックチェーン アーキテクチャの改善に精力的に取り組んでおり、最近では QUIC、ステーク重視の QoS、地域化された料金市場などの開発が行われています。さらに、エコシステムは Firedancer のリリースにより効率が大幅に向上することを期待しています。 Solana の独自のアーキテクチャである OPOS (Solana のみ) が新しいユースケースをもたらす可能性があることは注目に値します。

オリジナル記事、著者:Block unicorn。転載/コンテンツ連携/記事探しはご連絡ください report@odaily.email;法に違反して転載するには必ず追究しなければならない

ODAILYは、多くの読者が正しい貨幣観念と投資理念を確立し、ブロックチェーンを理性的に見て、リスク意識を確実に高めてください、発見された違法犯罪の手がかりについては、積極的に関係部門に通報することができる。

おすすめの読み物
編集者の選択