Peercoin(PPCoin)についてざっくり
今回はPeerCoinについて概要をざっとまとめてみました。
Proof of Stakeをコンセンサスアルゴリズムとしてプロトコルに組み込んだ最初の暗号通貨ということで、Peercoinを軸にProof of Stakeの特徴も絡めて書いていきたいと思います。
通貨の概要
・Peercoinは2012年にSunny Kingによってリリースされた暗号通貨です。
・ハッシュ生成にはSHA-256が用いられています。
・発行数:無制限(実質20億枚)
・世界初のPoSですが、PoWと併用してブロックの生成・承認を行います。その理由は後述します。
・Peercoinの生まれた背景:既存のPoWを用いる暗号通貨では、マイニングはエネルギー消費に依存しており、ネットワークを維持の観点からユーザーだけでなく環境にもデメリットが大きい。
フォークによるメインチェーンの決定
BitcoinなどのProof of Workの場合では、チェーンが分岐した際にどちらをメインチェーンとして採用するかどうかのカギを握るのが「仕事量」ですが、PeercoinのProof of Stakeでは「Coin age」が重要です。
Coin ageとは、アカウントの保持するコイン量×保持時間によって算出される値です。PeercoinのPoSでは、各ノードのマイニングの難易度に影響を及ぼす変数として用いられ、coin ageはマイニングが成功すると消費されます。(保持時間は各取引のタイムスタンプから算出)
51%攻撃について
つまり、仕事量ではなく、(Peercoinは30日以上)長く多くコインを保持するノードがブロック生成における優位性を有するので、51%攻撃のリスクは軽減されています。
というのも、過半数以上のコインを保有するコストは非常に高い上に、仮に成功したとしても「51%攻撃されたコイン」の需要は高まるはずもなく自身の保持するコインの価値は下がってしまうだろうという見込みが攻撃のリスクを下げているからです。(これはPoWでも言えますがPoSなら尚更)
以上を全て受け入れて攻撃したとしても、ブロックの生成にはcoin ageが消費されるため、攻撃力は逓減していきます。
だからこそ、Peercoinは初期段階でのブロック生成はPoWが担い、うまくコインの保有者が分散されてきたタイミングで、PoSによって生成されるブロックの割合を増やしていくようなシステムが実装されています。
チェックポイントについて
チェーン内の取引記録のセキュリティを強固にするためにチェックポイントを導入しており、チェックポイント以前のブロックチェーンに対する変更を防ぐ仕組みです。これによりNothing at stake問題を解決しています。(イーサリアム はslasher、Nxtは直近720ブロックは再編成可)
しかし、Casper FFGなどにおけるチェックポイントの仕組みとは違い、チェックポイントは民主的に行われず、開発者が単独で行います。(これは分散的なチェックポイントを施行することにおいて、当時の開発チームの技術的解決策が見出せなかったため)