プルーフ・オブ・ステーク(PoS)とは:バリデーターがブロックチェーンを守る仕組み

プルーフ・オブ・ステーク(PoS)とは:バリデーターがブロックチェーンを守る仕組み

プルーフ・オブ・ステーク(PoS)とは、バリデーターがステークと呼ばれるコインをロックすることで、ブロックチェーンへのブロック追加に参加できるようにするコンセンサスメカニズムです。コンセンサスメカニズムとは、中央管理者を介さずに多数のコンピューターが一つの共有記録について合意できるようにするルールのことです。バリデーターとは、トランザクションのブロックを提案・検証する参加者のことです。PoS型ブロックチェーンネットワークの最も有名な例はEthereumであり、本記事でも以降この例を参照します。

バリデーターとは何か、何をロックするのか?

バリデーターとは、ノード上でソフトウェアを稼働させることで、トランザクションのブロックを提案・検証する参加者のことです。ノードとは、ブロックチェーンのソフトウェアを実行し、他のコンピューターと接続し、ブロックを検証できるコンピューターのことです。

ステークとは、バリデーターがブロックチェーンへのブロック追加の条件としてロックするコインの量のことです。この「ステーク」という言葉はそのロックされた量を指し、バリデーターがロックすべき量はブロックチェーンのルールによって定められます。

Ethereumのドキュメントでは、バリデーターを有効化するための最低ステーク量を32コインと定めています。この設計では、バリデーターが活動を停止したい場合は退出プロセスに参加する必要があり、退出は順番待ちの列に並ぶため、バリデーターが待つ時間は他に何人のバリデーターが退出しようとしているかによって変わります。

プルーフ・オブ・ステークはどのように機能するのか?

Ethereumのプルーフ・オブ・ステーク設計では、ルールによって各スロットでアクティブなバリデーターが1人選ばれ、ブロックを提案します。その後、他のバリデーターがそのブロックを承認(アテステーション)します。スロットとは、1つのブロックを提案できる固定された期間のことです。アテステーションとは、バリデーターが自身のチェーンに対する見解——つまりそのバリデーターから見たブロックの連なり——に賛成する署名付きの投票のことです。

この選出は疑似ランダムに行われます。つまり、ルールに組み込まれたアルゴリズムが選択を行うということです。選ばれる確率は、バリデーターの「実効残高」、すなわちルールが定める上限までの範囲でカウントされるステーク量によって重み付けされます。したがって、ステーク量が多いほどその上限までは選ばれる確率が上がりますが、選出自体は疑似ランダムのままなので、ステーク量の多さが次のブロックを提案するバリデーターを決定するわけではありません。また、ステーク量が多いからといって保有者がバリデーターになれるわけでもなく、最低限のステークをロックすることがバリデーターになるための条件です。

選出されたバリデーター(プロポーザーと呼ばれます)は、トランザクションをブロックにまとめ、デジタル署名を付けて、ネットワーク上の他のコンピューターにブロードキャストします。各アクティブバリデーターは、固定されたスロットのグループであるエポックごとに1回アテステーションを行います。あるスロットでアテステーションを行うバリデーターたちは「委員会」を構成し、これはルールによってランダムに選ばれるグループです。その後、ネットワーク上のノードはそのブロックと含まれるトランザクションを検証できます。

文書化されているEthereumのPoSアルゴリズム設計では、スロットは12秒、エポックは32スロットで構成されます。したがって、1エポックは384秒、つまり6.4分(12秒のスロットが32個)続きます。

バリデーターがルールに違反するとどうなるのか?

スラッシングとは、バリデーターのステークの一部または全部を没収するペナルティのことです。Ethereumでは、スラッシングによってバリデーターはネットワークから強制的に退出させられます。ルールは、同一スロットに対して2つの異なるブロックに署名するなどの特定の違反行為に対してスラッシングを適用します。

特定のアテステーション義務を怠ったバリデーターは、スラッシングよりも軽いペナルティを受ける場合がありますが、ブロックの提案に失敗すること自体にはペナルティはありません。各ブロックチェーンのルールが、ペナルティの金額とその適用条件を定めます。

プルーフ・オブ・ステークは、ブロックを追加するためにEthereumのバリデーターが、ルールによってペナルティを科され得るETHをロックしていることを前提とするよう設計されています。

バリデーターを運用せずにコイン保有者が参加するには?

委任(デリゲーション)は、コイン保有者がバリデーターを自ら運用せずに参加できる方法の一つです。委任とは、参加者がサービスまたはプールされた仕組みに、自分に代わってバリデーターを運用させることを意味します。ここでいうプールされた仕組みはマイニングプールとは異なります。むしろ、複数の保有者が少額のコインを合わせることで最低ステーク量に到達するための仕組みです。

サービスを利用する場合、プロバイダーがバリデーターを運用し、保有者はコインを提供します。プールされた仕組みの場合は、第三者がバリデーターを運用します。いずれの場合も、保有者はバリデーターを運用する相手に依存することになります。

サービスを利用する場合、ロックされたコインの送金先を制御する鍵である「引き出し鍵(withdrawal keys)」を保有者とプロバイダーのどちらが保持するかは、その取り決めによって異なります。

プルーフ・オブ・ステークはプルーフ・オブ・ワークとどう違うのか?

プルーフ・オブ・ワーク(PoW)とプルーフ・オブ・ステークは、どちらも「どの参加者が次のブロックを追加するか」を決めるコンセンサスメカニズムですが、プルーフ・オブ・ワークはその権利を計算作業(コンピューティングワーク)に結び付け、PoSのコンセンサスはバリデーターがロックするコインに結び付けます。

質問

プルーフ・オブ・ワーク(Bitcoinネットワーク)

プルーフ・オブ・ステーク(文書化されている設計)

参加者は何をコミットするか?

計算作業

ロックされたコイン

参加者は何と呼ばれるか?

マイナー

バリデーター

次のブロックを作成するのは誰か?

ブロックヘッダーのハッシュ値が目標閾値以下となったマイナー

そのスロットのために疑似ランダムに選出されたバリデーター

他の参加者は新しいブロックに対して何をするか?

ノードがそのハッシュを再計算し、目標値と比較する

ランダムに選ばれた委員会においてアクティブバリデーターがアテステーションを行う

プルーフ・オブ・ステークの設計はブロックチェーンごとに異なるのか?

はい。プルーフ・オブ・ステークは一群の設計の総称であり、最低ステーク量、選出方法、ペナルティ、退出に関するルールはブロックチェーンごとに異なる場合があります。

スロットの長さ、エポックの長さ、最低ステーク量は、それぞれのブロックチェーンのルールによって定められた設定値であり、それらのルールがアップグレードされれば変更されることがあります。

2025年11月27日

GoMiningニュース

興味があるかもしれない: