Nothing at Stakeとは

Kazuaki Fujioka
TeamGeekHash
Published in
4 min readJan 1, 2019

今回はPoSの問題の一つである「Nothing at Stake」についてまとめていきたいと思います。

この問題はProof of Stakeにおけるブロック生成・承認の仕組みが原因なので、それについて簡単にまとめることから始めていきます。

PoSにおけるブロック生成の仕組み

Bitcoinなどで使用されているコンセンサスアルゴリズム「Proof of Work」では、作業量に応じて採掘力が決まります。マイナーたちはより多くの電力を消費し計算を行うことで、マイニング報酬を多く受け取ることができます。

一方PoSでは、採掘力はコインの保有量に比例します。そのためマイナーたちは採掘に電力などのリソースを割く必要がなく、実質ノーコストでブロックの採掘をし報酬を得ることができます。

ブロックチェーンにおけるフォーク

ネットワーク上に多くの参加者がいる場合、稀に次のブロックがネットワーク全体に同期される前に2個ほぼ同時に生成され、チェーンが分岐することがあります。これがフォークです。

PoWの場合、メインチェーン以外のブロックを採掘しても報酬を得ることができません。もし採掘しても、マイナーたちは費やしたリソース(設備, 電気代)分損をし続けることになります。それ故、マイナーたちは最長チェーンを選択し、結果的にチェーンは一つに維持されます。

Nothing at Stake問題

ブロックの採掘をノーコストでできるPoSアルゴリズムであるからこそ起きる問題が今回のテーマ「Nothing at Stake」問題です。

もしチェーンのフォークが起きた場合、大量のコインを保有しているマイナーは、両方のチェーンにブロックを生成し続けることで2重に報酬を獲得し続けることが可能です。

マイニングをノーコストで行えるからこそ、コインを大量に保有しているマイナー にとっては、全てのフォークを承認し後ろにブロックを続けるほうが報酬額が増えることになります。

これがNothing at Stakeと呼ばれる問題で、無効なはずのチェーンがずっと採掘され続け報酬は何重にも支払われてしまいます。

Nothing at Stakeへの対策

PoSアルゴリズムの問題点であるNothing at Stakeですが、将来的にPoSであるに移行するEthereumは独自の対策をCasperの中で講じる予定です。

CasperとはEthereum独自のPoSアルゴリズムです。現在のEthereumはPoWですが、後のアップデートでPoWとPoSのハイブリッド型「Casper FFG」へ、その後完全なPoSである「Casper CBC」へ移行する予定です。(2019年1月現在、詳細な時期は未定)

Casperでは、Nothing at Stakeを解決するためにSecurity Depositを利用する予定です。Security Depositとは、マイナーがあるブロックを採掘するとき、決められた量のコインをDepositし、もし無効なブロックを採掘したらそのコインが没収されるようになっています。この機能はSlusherアルゴリズムにより可能となる予定です。

こうすることで、採用されないチェーンでブロックを採掘してもSecurity Deposit分のコインが無駄になってしまうため、全てのフォークチェーンのブロックをマイニングするメリットがなくなります。

まとめ

実際問題、Nothing at Stakeで言われているような状況は起こりえないとの指摘もあります。コインを大量に保有している人は何重にも報酬を受け取ったとしても、自分の保有するコインの価値を薄めることに繋がるというわけです。

いずれにせよ、潜在的な問題に予め対応するEthereumは流石といったところです。個人的にはCasper実装後のEthereumがどうなるか非常に興味があるので、引き続き最新情報をチェックしていきたいと思います。

※理解に間違いなどあれば、コメントにて教えていただけますと幸いです。

--

--