page icon

Snowmanコンセンサスとは by Avalaunch

目次

AvalancheのSnowmanコンセンサスプロトコルは、Avalancheネットワークを動かす基本的なメカニズムであり、その驚くべきスピードとセキュリティにとって極めて重要です。このレポートでは、ブロックチェーンの検証プロセスにおけるコンセンサスプロトコルの役割を分解し、Snowmanがこれほど画期的なブレイクスルーとなった理由を掘り下げます。Snowmanの内部構造を見ることで、Avalancheとブロックチェーン技術の未来に与える影響をより深く理解することができます。

バリデータの役割

ブロックチェーンの機能とセキュリティにおけるバリデータの役割を理解するためには、まずブロックチェーンの定義を分解する必要があります。非常に簡単に言うと、ブロックはブロックチェーンの中核的な構成要素であり、トランザクションのグループやその他のあらゆる種類の関連情報を含んでいます。文字通りブロックの連鎖として、各ブロックは前のブロックの情報を暗号化して保存します。つまり、すべてのブロックは一意であり、中の情報は変更できません。
ブロックには、以下のようなさまざまな情報を含めることができます:
  • 金融取引データ
  • スマートコントラクトの実行
  • データの保存要求
ブロックチェーンは分散型システムであり、世界中にあるコンピュータ(ノード)のネットワーク上で動作することを意味します。この分散型という性質が、ブロックチェーン技術の分散型という特徴を支えており、制御と意思決定が単一のエンティティによって制御されるのではなく、多くのノードに分散されます。ノードのネットワークが共有台帳を管理・検証することで、この構造は透明性、セキュリティ、中央集権的な当事者に対する耐性を提供します。
 
この非中央集権的な構造の中心にあるのがバリデーターのネットワークで、バリデーターはトランザクションの有効性を判断してから次のブロックに含める役割を担っています。コンセンサスプロトコルは、バリデーターがネットワークの現在の状態について多数決で合意できるようにするためのルールセットを提供します。
 
Avalancheでは、コンセンサスプロセスの一部として照会されるバリデータノードが、ネットワークに影響を与える重要な役割を果たします。この影響力を得るためには、AVAXをステークする必要があり、ノードがボンドしたAVAXの量が多いほど、他のノードからクエリーを受ける頻度が高くなります。バリデーターは、コンセンサスプロセスへの誠実さと積極的な参加に対して報酬が支払われるため、参加し、応答するインセンティブが与えられます。
 
コンセンサスの目的は、バリデータが集合的にネットワーク全体で単一の真実の情報源を確立できるようにすることです。バリデータと彼らが従うコンセンサスプロトコルの有効性は、ネットワークのスピード、セキュリティ、スケーラビリティを保証するために非常に重要です。

コンセンサスメカニズムの歴史

"どのようにしてマシンの集合間でコンセンサスを達成するのか?"
これは、1970年代にコンピュータ科学者のLeslie LamportとBarbara Liskovが抱いた疑問で、彼らの先駆的な研究論文につながりました: ビザンチン将軍問題。コンセンサスを得るという課題は、次のような例えで説明されます:
 
ビザンチンの将軍たちが、ある都市を攻撃する統一計画に合意しなければなりません。中心的な問題は、他の将兵の忠誠心が不確かなときに、忠誠心の高い将兵がどのようにしてコンセンサスを確実に達成できるかということです。この問題は、ネットワークノードが状態について合意しなければならない分散システムのアルゴリズムを理解し設計する上で基本的なものです。
 
この論文では、将軍の3分の2が忠実である限り、コンセンサスを達成できることを実証しています。この概念は、様々なフォールトトレラント分散システムの基礎を形成しています。

クラシカルコンセンサス

コンセンサス問題に対する最初の解決策は、LamportとLiskovによって考案されたクラシカルコンセンサスです。これは全対全投票という重要な性質を含んでいます。つまり、すべての検証ノードはトランザクションを受け入れるか拒否するかについて投票しなければなりません。参加ノード数が少ないうちは、取引は非常に迅速に確認されます。しかし、ネットワークが大きくなると、各ノードが他のノードと通信しなければならない数が増え、スケーラビリティが難しくなります。また、古典的コンセンサスは、各ノードが他のすべての参加ノードについて知っている必要があります。

ナカモトコンセンサス

コンセンサスプロトコルの次の主要な開発は、ビットコインのホワイトペーパーでサトシ・ナカモトによって紹介されました。ナカモトコンセンサスとして知られるこの新しいアプローチは、コンセンサスを達成するためにノードが他のノードを識別する必要がないという、根本的に異なる原理の下で動作します。これは確率的安全性保証に基づいており、ノードはネットワークの規模に関係なく同じ数のメッセージを送信します。
 
中本コンセンサスは、すべての参加者の知識を必要とせずにコンセンサスを達成できるため、分散型環境において大きな利点を提供します。しかし、このアプローチには欠点があります。これらのプロトコルは非常に時間がかかり、トランザクションが確定するまでに最大1時間かかります。ノードは次のブロックを生成するために複雑な暗号パズルを解かなければならず、実行に非常にエネルギー集約的な計算能力を必要とします。
 
このような課題にもかかわらず、ナカモトコンセンサスは、信頼性のないデジタルシステムを実現する上で極めて重要な変化を示しています。

Avalancheコンセンサス

Avalancheコンセンサス(Avalanche Consensus)ファミリーは、クラシカルデザインとナカモトデザインの最も強力な要素を組み合わせ、コンセンサスプロトコルの機能を再定義します。ゴシップアルゴリズムにインスパイアされたこのプロトコルは、確率的な性質により、スピード、スケーラビリティ、セキュリティに妥協しない軽量なプロトコルを実現しています。Avalancheコンセンサスは、すべてのノードにトランザクションに対する投票を求めるのではなく、少数のノードのランダムなサブサンプリングを繰り返し使用します。この技術革新により、集中的な計算作業を必要とすることなく、光速のコンセンサスを達成することができます。
 
Snowmanコンセンサスは、Avalancheコンセンサスを実装したもので、スマートコントラクトの実行のために構築されたものなど、線形で順序付けられたコンセンサスを必要とするブロックチェーン向けに特別に調整されています。
 
Avalancheコンセンサスは、コンセンサプロトコルの進化における画期的なマイルストーンであり、新世代のブロックチェーン・ネットワークへの道を開きました。
 

Snowmanコンセンサスプロトコルの分解

Snowmanコンセンサスの特徴は、サブサンプル投票プロセスを採用していることです。この意思決定プロセスは、効率的にコンセンサスを達成するためにあらかじめ決められたパラメータを持つスノーボールコンセンサスアルゴリズムによって実現されます:
  • ネットワークの参加者数
  • サンプルサイズ - バリデータが問い合わせるノード数
  • 定足数サイズ - 過半数回答に達するために必要な数
  • 決定しきい値 - 最終的な決定を下すために多数決を連続して受信する必要がある回数

検証プロセス

Avalancheのコンセンサス形成プロセス
Avalancheのコンセンサス形成プロセス
バリデータはブロードキャストされたトランザクションを受信すると、コンセンサスを開始する前に、まずトランザクションの妥当性を判断しなければなりません。
 
例:アリスは自分のウォレットに2AVAXを持っています。アリスはウォレットに十分なAVAXを持っていないので、この取引は明らかに無効です。
 
トランザクションが有効と判断されると、コンセンサスプロセスが開始されます。
 
トランザクションを受け入れるかどうかを決定するために、ノードはランダムに選ばれた少数のバリデータノードに優先順位を尋ねます。その後、問い合わせを受けた各ノードが希望する取引を返信し、定数の大きさによって過半数の返信が決定されます。最終的な決定を下すために、サブサンプリングプロセスは異なるノードのセットで、あらかじめ決められた回数の連続ラウンドで多数決の返答を受け取るまで繰り返されます。
 
競合がなければ、トランザクションは迅速に確定されます。競合が発生した場合、誠実な検証者は競合しているトランザクションの周りに素早く集まります。これにより、コンセンサスの各ラウンドが、全員が合意に達するまで、彼らの選好をますます一致させるという、強化されたフィードバックループが形成されます。
 
ノードが行うサブサンプリングは完全なランダムではないことに注意することが重要です - 選択はステーク量によって重み付けされ、より多くのステークAVAXを持つノードが照会される可能性が高いことを意味します。
 
サブサンプリングプロセスを通じて、バリデーターは自分の好みを積極的に調整し、ネットワークを統一された集団的決定へと導きます。
 

Snowmanコンセンサスの利点

スケーラビリティ - サブサンプリングプロセスにより、Snowman コンセンサスは、ネットワークが100ノードで構成されていても100,000ノードで構成されていても、各ノードが送信するメッセージの数が変わらないことを保証します。
 
スピード - ネットワーク上のすべてのノードに問い合わせる必要がないため、Snowmanはトランザクションを迅速に処理して確認できる非常に軽量な設計を実現しています。この効率性は、Avalancheコンセンサスプロトコルが、正直な検証者がトランザクションを受諾した場合、他のすべての正直な検証者が必然的に同じ結論に達することを保証している事実によって増幅されます。
 
セキュリティ - Snowmanの確率的アプローチでは、各ノードがノードのランダムなサブセットに繰り返し問い合わせを行うため、悪意のあるノードが一貫してネットワークに影響を与える可能性が大幅に減少し、ネットワークの意思決定の完全性が維持されます。
 
分散化 - ネットワークのパフォーマンスはノード数に影響されず、どのノードもネットワークの安全確保に貢献できるオープンでパーミッションのない環境を促進します。
 
効率性 - 他のコンセンサスプロトコルのように固定されたスロットタイムで動作するのではなく、Snowmanはネットワークの活動に基づいてブロックを生成する動的なアプローチを採用しています。この多様性により、ネットワークの現在の状態に合わせた、より応答性の高い効率的なブロック生成が保証されます。

結論

Snowmanコンセンサスは、Avalancheコンセンサスファミリーの主要コンポーネントとして、分散システムの重要な進化を表しています。これまでのコンセンサスメカニズムの限界に対処することで、Snowmanはブロックチェーンのコンセンサスに、よりスケーラブル、迅速、安全かつ分散化されたアプローチを導入しています。その革新的なサブサンプリングと確率的手法は、ダイナミックなブロック生成と相まって、分散化に妥協することなく、トランザクション処理の高速化、強固なセキュリティ、効率的なネットワーク運用を保証する顕著な進歩を示しています。これにより、Snowman コンセンサスは、よりレジリエントで適応性の高いブロックチェーンネットワークの開発において重要な要素となり、分散デジタルシステムの新時代への道を開きます。