ブロックチェーン/レベル VI · ビットコインの後/6.2 アルトコインの時代/レッスン 4
ピアコインとプルーフ・オブ・ステーク
コインエイジ、投票するステーク、そしてその後に続くフォーク
用意するものPPCoinのホワイトペーパーのコピーブテリンの「Proof of Stake: How I Learned to Love Weak Subjectivity」(2014年)コインエイジの計算を記録するためのスプレッドシート
問い
- なぜネットワークは、電力を消費することではなく、コインを保有することに報酬を与えるのでしょうか?
- 攻撃者はどのようにして、新たなリソースを使わずに、10年前に保有していた鍵から履歴を書き換えられるのでしょうか?
- バリデーターが同時に2つの異なるブロックに署名するのを防ぐものは何でしょうか?
探究
- プルーフ・オブ・ステーク(PoS)は2011年にビットコインのフォーラムで初めて議論されました。最初に実際に動作するバージョンを生み出したのは、仮名の開発者サニー・キングとスコット・ナダルで、彼らのPPCoinは「コインエイジ」を用いてブロック生成者を選出しました。このモデルでは、未使用トランザクションアウトプット(UTXO)はチェーン上に存在するだけで重みを蓄積しました。コインがウォレット内で動かされずに置かれている期間が長いほど、次のブロックを生成する者として選ばれる確率が高くなり、コンセンサスへの参加権が計算能力ではなく長期保有の行動と直接結びつけられました。
- PPCoin(のちにピアコインに改名)は、2012年8月にハイブリッド型としてローンチされました。プルーフ・オブ・ワーク(PoW)が新規コインを発行する一方、ステークされたコインに年約1%の報酬を与えるプルーフ・オブ・ステークのブロックが、セキュリティの多くを担いました。また長年にわたり、開発者が中央集権的に署名するチェックポイントにも依存しており、批判者はこの安全策を支配のポイントとみなしました。
- 初期の分析により、「nothing at stake」と呼ばれる重大な脆弱性が明らかになりました。ブロック生成には最初のコイン購入以外に物理的なリソースがかからないため、バリデーターはチェーンの競合する複数のフォークを安価に支持できました。大量のステークを保有する攻撃者は、分岐の両側で有効なブロックに署名でき、追加の作業に限界費用を一切払わずに、どの履歴が正統なのかを曖昧にすることができました。
- これが、ロングレンジ攻撃の問題につながりました。何年も前の古い秘密鍵を入手した攻撃者は、理論上、その時点以降のチェーンの履歴全体を書き換えることができます。こうした過去のブロックの検証には新たな計算が不要なため、ゼロから同期するノードは、数学的に有効に見えれば攻撃者のバージョンを受け入れてしまう可能性があり、数か月から数年前に確定したトランザクションのファイナリティが損なわれます。
- ヴィタリック・ブテリンは2014年、「弱い主観性」を導入してこの問題に対処しました。ネットワークに新たに参加するノードは、既存の参加者が提供する最近のチェックポイントを信頼することが求められます。検証の起点となる特定のブロック高について合意することで、ネットワークはそのチェックポイント以前の履歴の書き換えに依拠するロングレンジ攻撃を防ぎます。このトレードオフにより、初期同期の間は信頼できるピアへの依存が生じますが、過去の改ざんに対する安全性が確保されます。
- 後の設計では、不正行為を罰するスラッシングの仕組みが追加されました。バリデーターが矛盾するブロックに署名したり悪意ある行動をとったりすると、ステークしたコインが没収されます。Nxtは2013年に、ハイブリッド要素を完全に排除した初期の純粋なプルーフ・オブ・ステーク型チェーンとしてローンチされました。これらの発展によって、現代のステークベースのコンセンサスの基本的なパラメータが確立されました。経済的なペナルティが誠実さを強制し、弱い主観性がネットワークの立ち上げ時の信頼を管理するというものです。
重要な事実
- ピアコインは、プルーフ・オブ・ワークとプルーフ・オブ・ステークを組み合わせたハイブリッド型モデルで、2012年8月にローンチされました。
- プルーフ・オブ・ステークでは、消費される計算量ではなく、ロックされているコインの価値に基づいてブロックプロデューサーが選ばれます。
- 「nothing at stake」問題により、バリデーターはごくわずかなコストで複数のフォークを支持できてしまいます。
- ロングレンジ攻撃は、新たなリソースを消費することなく、古い鍵を悪用してチェーンの履歴を書き換えます。
- 「弱い主観性」では、過去の書き換えを防ぐため、新しいノードが最近のチェックポイントを信頼する必要があります。
- 矛盾するブロックに署名したバリデーターのステークを没収するスラッシングのペナルティは、後から追加されました。
演習 九・六・三・一
9集める初期のアルトコイン(2011〜2015年)で使われたコンセンサスメカニズムやパラメータを9つ挙げてください。ブロック選出の具体的なルールと、ペナルティの仕組みがあればそれも記録してください。
6まとめるバリデーターの誠実さをどのように担保したかに基づいて、9つを6つに分類してください:ペナルティなし、スラッシング、ハイブリッドによるブートストラップ、純粋なステーク、ワークベース、その他。
3絞り込む6つを、プルーフ・オブ・ワークと比べて純粋なプルーフ・オブ・ステークが軽減しなければならない3つの根本的なリスクに絞り込んでください。
1結晶化する資本を保有することが、エネルギーを消費することとは異なるインセンティブ構造を生む理由を1文で書いてください。
事実確認
日付、数字、主張は、下記に記載された公表資料と照合して確認しました。
- S. King & S. Nadal, 'PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake' (2012)
- V. Buterin, 'Proof of Stake: How I Learned to Love Weak Subjectivity' (2014)
- Nxt documentation and release notes (2013)