ETH2.0バリデータへのインセンティブ
イーサリアム2.0(ETH2.0)のバリデータに対する報酬とペナルティの概要を、米ブロックチェーンソフト開発企業コンセンシス(ConsenSys)のOS開発部門Codefiが解説した。
PoSコンセンサスを採用するETH2.0で、プラットフォーム運営の要となるのは、新たなブロックを生成するとともに、そのセキュリティを担うノードであるバリデータ(承認者)だ。バリデータの不誠実な行動はイーサリアムブロックチェーンの正当性を脅かす可能性もあるため、バリデータをPoSコンセンサスルールに準拠させるためのインセンティブと罰則が周到に用意されている。
バリデータとなる条件
ETH2.0におけるPoSコンセンサス移行への最初の段階「ビーコンチェーン(Beacon Chain)」。バリデータとしてネットワークに参加するためには、32ETH以上をデポジットコントラクトに預け入れロックアップすること(=ステーキング)が必要だ。
バリデータがステーキングできるETHの量に上限は設けられていないが、報酬およびペナルティの算出には、「実効残高」(effective balance)と呼ばれる32ETHが上限として設定されている。
一方、バリデータにペナルティが科されるなどにより、ステーキングの残高が16ETHを下回った場合には、ネットワークからの「強制退去」が発動することになっている。
罰則規定
ネットワークの正当性を脅かすバリデータの次のような行為は、罰則の対象となり、スラッシュ(Slash)と呼ばれるペナルティを科される。
1.ブロック生成者(プロポーザー:Proposer)となり、同じスロットに2つの異なるビーコンブロックに署名する。
2.ブロック検証者(アテスター:Attester)となり、別の証明を「囲む」署名を行う。
3.ブロック検証者(アテスター:Attester)となり、同じターゲットを持つ2つの異なる証明に署名する。
スラッシュの対象となるバリデータを発見するのは、内部通報を行う他のバリデータで、不正行為を告発することにより、スラッシュされたバリデータのステーキング残高から報酬を受けることができる。
一方、スラッシュされたバリデータは、不法行為がネットワークでアナウンスされた時点から様々なペナルティを科され、最大ではステーキング実効残高全てにも及ぶ可能性があるという。
なお、バリデータがオフラインであることはスラッシュの対象とはならないが、前のエポック(30000ブロック期間)でアクティブであったのにも関わらず、投票を行わなかった場合にはペナルティが科されるような設定がされているという。
報酬の試算
厳しい罰則に対し、報酬によるインセンティブはあるのだろうか。
バリデータとなった場合、様々な条件により受け取れる報酬が変わってくるが、Codefiは設定値2つのみのシンプルなケースを想定し、おおよその報酬を次のように試算している。
・ステーキングされたETHの合計:500,000
・オンライン率:95%
全てのバリデータのステーキング残高と実効残高が一様に32ETHであると想定すると、最終的には1エポック(6.4分)ごとに1.25ETHの報酬となる。さらに、Codefiは異なるステーキング量の合計に対する報酬も算出し、次のグラフにまとめている。
ただし、実際にはステーキング残高や予想が困難なスラッシュの効果など、複雑な要素が絡み合ってくるため、Codefiは上記の試算結果を用いて、年間の推定報酬を算出することの有効性には疑問を呈している。