Ethereumステーキング:報酬とペナルティの仕組み
目次
- はじめに
- Consensus Reward
1. Attestation Reward
2. Block Proposal Reward
3. Sync committee - Penalty
1. Attestation Delay
2. Slashing - おわりに
1. はじめに
このレポートでは、Ethereumのノード運用で得られるもう一つの主要な報酬であるConsensus Rewardについて解説し、あわせてノード運用に伴うリスク、つまりペナルティの仕組みについても触れる。安定的な収入源となるConsensus Rewardの内訳や、リスク管理を学んでいく。
2. Consensus Reward
Consensus Reward はブロックの検証と認証、ブロックの提案に対する報酬であり、ネットワークの利用状況に影響を受けにくい安定した報酬である。
Consensus Reward は、(1) ブロックの検証によって得られる Attestation Reward、(2) ブロックの提案によって得られる Block Proposal Reward、(3) 低コストで運用可能なノードであるライトクライアントを補助する Sync committee に分けることができる。いずれの報酬も、その都度 Ethereum からバリデーターに支払われる報酬である。
また、図2 はバリデーターの Consensus Reward の内訳を示しており、Timely source, Timely target, Timely head を併せた Attestation Reward の割合が最も高くなっている。あくまで、報酬の期待値を視覚化したものであることには注意が必要である。
また、理解を助けるために簡単に Ethereum の用語を解説する。
- Slot:バリデーターがブロックを提案するための区切りを意味する。まれにブロックが提案され
ず、1slot = 1block にならないことがある。1Slot が 12 秒に相当する。 - Epoch:1epoch は 32slot に等しい。 バリデーターは 1epoch につき 1slot の Attestation を行う。1Epoch が 6.4 分に相当する。
2.(1) Attestation Reward
Attestation Reward は提案されたブロックの承認によって得られる報酬であり、一度に得られる報酬は少ないものの、Attestaion を Epoch ごとに行うため、1Epoch(=6.4 分)ごとに発生し、報酬全体に占める割合も高いメインの報酬である。
以下の計算式で得られた基礎報酬である basereward に、遅れず正しく検証したかによって変動するIncentivization Weights と、Attestation への参加率である Perticipation Rate を乗算することで Attestation Reward が決定される。Incentivization Weights はブロックの source, target, head のそれぞれの項目について、正しく時間内に投票を行ったかによって決定される。内訳はこの章の末尾のグラフで確認できる。
𝐴𝑡𝑡𝑒𝑠𝑡𝑎𝑡𝑖𝑜𝑛𝑅𝑒𝑤𝑎𝑟𝑑 = 𝑏𝑎𝑠𝑒𝑟𝑒𝑤𝑎𝑟𝑑 ∗ 𝐼𝑛𝑐𝑒𝑛𝑡𝑖𝑣𝑖𝑧𝑎𝑡𝑖𝑜𝑛𝑊𝑒𝑖𝑔ℎ𝑡𝑠 ∗ 𝑃𝑒𝑟𝑡𝑖𝑐𝑖𝑝𝑎𝑡𝑖𝑜𝑛𝑅𝑎𝑡𝑒
𝑏𝑎𝑠𝑒𝑟𝑒𝑤𝑎𝑟𝑑 =\frac{𝑒𝑓𝑓𝑒𝑐𝑡𝑖𝑣𝑒_𝑏𝑎𝑙𝑎𝑛𝑐𝑒 ∗ 64}{√𝐸𝑓𝑓𝑒𝑐𝑡𝑖𝑣𝑒_𝑏𝑎𝑙𝑎𝑛𝑐𝑒_𝑜𝑓_𝑎𝑙𝑙_𝑎𝑐𝑡𝑖𝑣𝑒_𝑣𝑎𝑙𝑖𝑑𝑎𝑡𝑜𝑟𝑠}
Effective_balance は多くの場合 32ETH なので、バリデーター数の増加によって Attestation Reward が減少することが上記の式から読み取れる。1𝐺𝑤𝑒𝑖 = 1𝐸𝑇𝐻 ∗ であることや、時点の Validator 数がであることを考慮して実際に概算してみると、
𝑏𝑎𝑠𝑒𝑟𝑒𝑤𝑎𝑟𝑑 = 32 ∗ 10^{9}∗ 64/√(32 ∗ 10^{9}∗ 689167) = 13790.90372
𝐴𝑡𝑡𝑒𝑠𝑡𝑎𝑡𝑖𝑜𝑛𝑅𝑒𝑤𝑎𝑟𝑑 = 𝑏𝑎𝑠𝑒𝑟𝑒𝑤𝑎𝑟𝑑 ∗ 54/64 ∗ 0.996 = 11589.53071
となり、図3 のように実測値の 11,536Gwei と非常に近い値が出てくる[3]。
2.(2) Block Proposal Reward
Block Proposal Reward はブロックを提案した際に得られる報酬であり、約 12 秒ごとに生成されるブロックにおいて、現在 87 万ほどあるバリデーターからランダムに選出されるため、2023 年 8 月時点で期待値で 3 か月に 1 回ほど発生する報酬である[7]。自分の提案したブロックへの Attestation 数に比例した報酬を得られるため、Attestation Reward とは対照的に、バリデーター数の増加によって Block Proposal Reward は増加する。Block Proposal Reward は 1 回当たり約 0.03ETH である[13]。
𝐵𝑙𝑜𝑐𝑘𝑃𝑟𝑜𝑝𝑜𝑠𝑎𝑙𝐶ℎ𝑎𝑛𝑐𝑒𝑃𝑒𝑟𝑌𝑒𝑎𝑟 = 𝑌𝑒𝑎𝑟𝐼𝑛𝑆𝑒𝑐𝑜𝑛𝑑𝑠/𝐵𝑙𝑜𝑐𝑘𝑇𝑖𝑚𝑒/𝐴𝑐𝑡𝑖𝑣𝑒𝑉𝑎𝑙𝑖𝑑𝑎𝑡𝑜𝑟
2.(3) Sync committee
Sync committee はライトクライアントの補助をするために、ランダムに選択されたバリデーターのグループで、有効なブロック ヘッダーに署名を追加することで得られる報酬である。ライトクライアントは低コストで運用可能だが、ノード運用による報酬は発生しない。256epoch(=8192slot≒27.3 時間)ごとに 512 のランダムに選出されたバリデータによって行われる。そのため発生頻度の期待値は 2023 年8 月時点で 5 年に 1 回と非常に低い。Sync committee に選ばれると、256epoch の間、報酬を継続的に受け取り、合計で約 0.035ETH の報酬を受け取ることができる[13]。
3. Penalty
3 章と 4 章では、ノード運用の報酬がどのような仕組みになっているかを解説したが、ノード運用では Reward をもらえる代わりに、ペナルティとしてステークしている Ether を失う可能性もある。コンセンサスのルールに反して行動するプレイヤーに、金銭的なディスインセンテイブを与えることで、ブロックチェーンの持続性を守るためである。Penalty によってバリデーターから削除された金額は消却され、総発行量が減少する。
3.(1) Attestation Delay
Attestation に遅れたり失敗した場合のペナルティ。発生頻度は比較的高いが、ペナルティの金額は低く、Delay が 10Block になると報酬がほぼ 0 になり、Delay が 32Block 以上になると Attestation 成功の場合の報酬の約 0.6 倍のペナルティが課される。
図4.Attestation DelayによるAttestation Rewardの減額 出所:https://eth2book.info/capella/part2/incentives/rewards/
3.(2) Slashing
コンセンサスのルールの根幹に反し、ブロックチェーンネットワークを攻撃しているとみなされた場合に発生する。発生頻度は非常に低く、ほとんどの人為的なミスは当てはまらない。
例えば同じ Hight の複数の異なるブロックを提案することなどが当てはまるが、現実的には複数のバリデーターを同じ鍵で同時に実行してしまう場合が、意図せず Slashing される要因である[6]。
ペナルティの金額は状況に応じて、残高の 1/32 から残高全体までと非常に重たいペナルティになっている。例えば多数のバリデーターが共謀してネットワークを攻撃し、Slashing される場合、単一のバリデーターが攻撃を実行した場合と比べて、攻撃に加担したバリデーターは重いペナルティを受ける。
PoS 移行後の Ethereum でも多くの Slashing が報告されたが、そのほとんどはクライアントの同期に関わる問題で[10][11]、悪意のある攻撃は無かった。beaconcha.in によると、2023 年 8 月 22 日時点までに Slash されたバリデーターは 262 個のみである [12]。
4. おわりに
本レポートでは、ステーキングの仕組み、報酬(Execution Reward、Consensus Reward)、ペナルティについて説明してきた。報酬やペナルティが、どのような要因で変化するかを理解し、PoS移行後のEthereumステーキングに役立てて欲しい。
また、ノード運用はブロックチェーンにとって大切な要素であり、様々なプレイヤーが参加できることがEthereumの設計上の目標である。しかし、バリデーターの分析などを手掛けているRatedによると、現時点、Lidoなどのステーキングプロバイダーによるシェアの寡占が懸念されており、個人規模でのノード運用者は1割程度であると言われている[5]。そのため、分散化やセキュリティの観点から、一部の有権者からは、多様なノード運用者を求める声も上がっている。またステーキングプロバイダーにノード運用を委託するということは、自分の資金を相手に預けるという意味であり、セキュリティや信用リスクを負うことになる。
ノード運用はブロックチェーンへの協力という意義あるものであると同時に、Etherを比較的低リスクで運用する手段でもある。今後ステーキングはより一般的になっていくだろう。
参考文献
[3]:ethstaker. “chain-rewards” https://github.com/eth-educators/ethstakerknowledgebase/blob/main/rewards/chain-rewards.md(参照 20238-08-08)
[6] : Rocketpool. “A Node Operator’s Responsibilities”
https://docs.rocketpool.net/guides/node/responsibilities.html#penalties (参照 2023-08-08)
[7] : eth2book. “Part 2: Technical OverviewThe Incentive Layer”
https://eth2book.info/capella/part2/incentives/slashing/ (参照 2023-08-08)
[9] : ultra sound money. “Supply change” https://ultrasound.money/(参照 2023-08-22)
[10] : eth2. “Slashins” https://eth2data.github.io/#Slashings(参照 2023-08-22)
[11] : Coinbase. “eth2 insights: slashings” https://www.coinbase.com/ja/cloud/discover/dev-foundations/eth2-
insights-slashings(参照 2023-08-22)
[12] : beaconcha.in. “Slashed Validators” https://beaconcha.in/validators/slashings(参照 2023-08-22)
[13] : Nextfinancetech. “Ethereum ステーキングの損益分岐” https://www.notion.so/nxt-fintech/EthereumEthereum-462ba98356cf45c0b7c23da9b21f3074(参照 2023-08-22)