Tech

Nothing at Stakeとは何か?

  • このエントリーをはてなブックマークに追加

Proof of Stakeの問題点とされる nothing-at-stakeの説明

前提知識

  • PoS: Proof of Stake
  • PoW: Proof of Work
  • Bitcoin: ビットコイン
  • mining, validating, minting: マイニング、バリデーティング、ミンティング
  • miner, validator: マイナー、バリデーター (ブロックを承認するノード)
  • blockchain: ブロックチェーン
  • fork: フォーク ブロックチェーンのブランチと表現することも
  • orphan block: みなしごブロック

概要

  • 一言で言うと、二重投票(Double voting)。複数のフォークを承認すること。
  • どのブロックチェーンのフォークに対してもブロック承認すること(攻撃)
  • ブロック生成者は、複数のブロックチェーンの履歴に投票しても、失うものがない
  • PoSの場合は、最も長いブロックチェーンを承認するインセンティブはなく、むしろ全てのフォークしたブロックチェーンを承認するのが理にかなっている
  • 言葉の意味は、「何も賭けてない」。PoWのように一つの分岐に賭けるわけではない

Proof of Workの場合

  • 通常マイナーは、一番長いブロックチェーンに次のブロックをつけてマイニングするインセンティブがある。なぜなら、マイナーの持つ計算力(ハッシュパワー)には限りがあるため、通常、多数のフォークを同時にマイニングせず、勝ちそうな一つのフォークをマイニングする
    → Proof of Stakeの場合は、投票が無料。あまり計算力を必要としないので、複数のブロックを承認できてしまう

短期的、長期的問題

短期的問題

  • ブロック生成を一つのフォークにするインセンティブがない

長期的問題

  • ジェネシスブロックを作った人(持ち分100%)の人は、はじめからやり直せる
  • 持ち分が多ければ、そこからやり直せる

Nothing At Stakeへの対策

デポジットしたり、懲罰したりする

  • Peercoin は、開発者の秘密鍵で署名されたチェックポイントをブロードキャストする
  • トレードオフ: 開発者が中央の権威者になる
  • Nxt: 最新の720ブロックの再編成のみ許す。
  • Tendermint
  • validatorになる前にデポジットを入れる
  • validatorがフォークを引き起こすと、デポジットのコインが減る
  • Capsper (Ethereum)
  • Ethereum の Casper まとめ | block-chain.jp

引用: Proof-of-stake – Wikipedia, the free encyclopedia

Nothing At Stakeへの批判

  • 自分のコインの価値を下げるような攻撃は、しないのではないか?
  • 理論上の攻撃だ

Altruism-prime

Altruism-prime is essentially the combination of actual altruism (on the part of users or software developers), expressed both as a direct concern for the welfare of others and the network and a psychological moral disincentive against doing something that is obviously evil (double-voting), as well as the “fake altruism” that occurs because holders of coins have a desire not to see the value of their coins go down.

引用: Proof of Stake: How I Learned to Love Weak Subjectivity – Ethereum Blog

参考

関連用語

  • プルーフ・オブ・ワーク
  • プルーフ・オブ・ステイク
  • nothing-at-stake攻撃
  • このエントリーをはてなブックマークに追加