Orbs

Proof-of-Stake(PoS)とは?

Randomized Proof-of-Stake(RPoS)とは?

Orbsのコンセンサス形成メカニズムは、ベースにProof-of-Stakeを採用していますが、考え方も技術的にもPoSをさらにアップグレードしたものになっています。では、そもそもPoS何なのでしょうか? さらにはDelegated Proof-of-Stake(DPoS)、そしてOrbsの研究者が開発したRandomized Proof-of-Stake(RPoS)とはどんな仕組みを指しているのでしょうか? このページでは簡潔ながらも詳細にその仕組みをご紹介します。

Proof-of-Stake vs Proof-of-Work

Proof-of-Work(PoW)と違い、Proof-of-Stake(PoS)では、ブロックを承認するために各ノードは一定数のトークン(=ステーク)を保有していなければいけません。ベーシックなPoSベースのシステムでは、あるマイナーの保有する仮想通貨もしくはトークン(例:ビットコイン、イーサ、アルトコイン等)の数が多ければ多いほど、そのマイナーがブロックのバリデーターに選ばれる可能性が高くなります。これは同時に、システム内におけるそのマイナーの権力が増大することを意味します。

PoWの大きな利点のひとつは、ネットワーク参加者が多いほどネットワークの安全性が高まり、オープンなネットワークの参加者間のコンセンサスによって安定した状態が保たれやすいという点です。ビットコインはこの仕組みを使ってP2P通貨をネットワークに実装しているのです。PoWとその他の仕組みの違いは、信頼です。ビットコインをやりとりする際、ユーザーは単一の組織を信頼せずにすみ、権力の一極集中を避けることができるのです。

しかしビットコインは決してエネルギー効率が良いとは言えません。ビットコインネットワークは、毎秒およそ3500万テラハッシュもの情報を処理しており、その消費電力は年間70TWh(テラワットアワー)にのぼります。これはチェコ共和国全体の電力消費量と同じです。

一方Proof-of-Stakeは、PoWにて常に行われるこの計算を省き、ステーク(例:仮想通貨やトークンの保有要件)を設けることでノード間の信頼を築こうとする仕組みを指しています。計算量が削減されることで電気消費量が減り、さらにはプロセスが高速化します。これはシステムのスケーラビリティを考慮すると重要なポイントです。また、マイニングファームの削減や不要化にもつながるため、中央集権化のリスクも低減できます。

Proof-of−Stakeにおける「マイニング」:フォージング

「マイニング VS フォージング」――これはPoWとPoWを比較する上で重要な点です。PoSにおけるマイニングは、新しいコインを「フォージング」もしくは「ミンティング」すると呼ばれます。そのためシステム内に流通するコインや、ブロック生成者のことを「フォージャー」と呼んでいる場合、そのシステムはPoSベースの仕組みを採用している可能性が高いと言えます。

プラットフォームによって、誰がどのように新たなコインをフォージするかというアプローチは変わってきますが、ネットワーク参加者全員がブロックの生成プロセスに参画し、手数料を全員で分けるというのが基本的な仕組みです。

なぜイーサリアムはProof-of-WorkからProof-of-Stakeに移行しようとしているのか?

イーサリアム創始者のVitalik Buterinは、PoSのことを「PoWマイニングよりも大幅に効率的」だと評価しています。PoWは1)エネルギー効率が悪さ2)スケーラビリティに欠如3)マイナーに支払われる手数料の高騰4)小規模なマイナーの存在を脅かす力を持つ「超」ASICマイナーといった問題を抱えています。特に最後の問題点は、多額の資金を投じて整備されたマイニングインフラを運用する一部のマイナーが、本来非中央集権的なネットワークにおいて寡占状態を作り出すことにつながりかねません。

PoWからPoSへの移行をスムーズに行うため、イーサリアムは両者を組み合わせたCasperプロトコルを開発しました。2018年の秋には「Casper FFG」と呼ばれる、第1弾のCasperプロトコルのローンチが予定されています。しかしそれを実現するためにはフォークが必要不可欠となります。またイーサリアムが目指すレベルのスケーラビリティを現実のものにするには、さらなるアップデートを行わなければならず、すべての要素が揃うのは2023年以降になると考えられています。

イーサリアムを超えて:PoSコインの例

最初にPoSを導入したプロジェクトはPeercoin(PPCoin)でしたが、Nxt、BlackCoin、Qora、NuShares、Nav Coin、ShadowCashもその後に続きました。イーサリアムも取引数の多さから長期的にPoSに移行するということを公的に謳っています。またCardanoは独自のOuroborosプロトコルを通じてPoSの仕組みを確立しようとしており、Metahashは報酬を50:40:10の割合にわけ、全体の50%をコインの所有者へ、40%をネットワークサーバーの所有者へ、残りの10%をアクティブなウォレットの所有者へと割り当てています。Nxtはフォージャーに最低でも1,000NXT所有しなければならないという条件を設けており、保有残高が多いほど承認時間が早くなる仕組みを導入しています。しかしこれらのアプローチの効率性は十分とはいえません。そこでEOSは「Delegated Proof-of-Stake(DPoS)」という仕組みを活用しています。

現状のPoSが抱える問題

その一方で、PoWの課題は単純にPoSを導入すれば解決できるというものではありません。コインの保有残高をベースにしたシステムでは、資金力のあるユーザーが常に有利な状態が生まれてしまい、資金力に欠けるユーザーが仕組み上不利な立場に立たされてしまうのです。

さらに現状のPoSではいわゆる「51%攻撃」への耐性が低く、もしもひとりのユーザーやグループが過半数のトークンを保有できれば、そのネットワークの分散性は失われてしまいます。

そうするとネットワークのガバナンスやブロック生成の権限が一極集中してしまうため、もっと洗練されたPoSの形が今求められているのです。

Delegated Proof-of-Stake (DPoS)

「Delegated Proof-of-Stake(DPoS)」のもとでは、ブロック生成やガバナンスの権限が分散されるようになっています。ユーザーはブロックを生成する「ウィットネス(witness)」と呼ばれるユーザーを投票で決め、得票数の多い一部のユーザーがブロック生成を担当するグループの中に入ります。さらに選出された「デリゲート(delegate)」からなるグループは、投票を通じてシステムのガバナンスやルール変更に関する決議を行います。

LiskやSteem、bitShares、Ark.ioなどがDPoSを採用しており、Tronも2018年8月にDPoSの移行を発表しましたが、現在もっとも人気があるDPoS ベースのプラットフォームはEOSと言えるでしょう。

しかしEOSのシステムも分散性やセキュリティの面では完璧とは言えません。EOS上ではフォージャーが評判に応じてランク付けされ、特定のタイミングでトップ21にランクインしているフォージャーがブロック生成に関わるコミッティーのメンバーとなり、さらにうち1名がブロックリーダーになります。

ネットワーク参加者全体と比べて極めて少数のフォージャーがブロック生成を担うことから、EOSプラットフォームでは分散性が十分確保されているとは言えません。さらに、(ビットコインやイーサリアムネットワークでは存在する)その他多数のノードがブロック生成に関われないことから、セキュリティが損なわれ、ノードを狙ったアタックが発生しやすくなってしまいます。

新スタンダード:Randomized Proof-of-Stake (RPoS)とは?

Randomized Proof-of-Stake

Orbsプラットフォームにおけるステークの概念はこれまでのPoSよりも広く、1)ステーク2)評価3)コンプライアンスレベルという3つの要素から構成されています。

ここでのステークとは、最少額のデポジットという厳密な意味でのステークを意味しています。次に、あるノードが他のノードにどの程度信頼されているかを投票を通じて計測した結果が評価になります。最後に、コンプライアンスレベルは、一定期間におけるノードの行動をトラックし、必要なアップデートを導入しているかや、公平性に関するポリシーに準拠しているかなどが評価対象となります。

さらにOrbsでは、ブロックリーダーだけでなく、取引を承認するコミッティー全体が選出されるようになっています。コミッティーへの参加過程では、デジポット額やORBSトークンの保有数だけでなく、評価スコアも勘案されます。評価スコアは迅速に取引を承認しているかや、その他の行動規範に違反していないかなどによって上下します。

検証可能な「ランダムネスビーコン」によって、ブロックを提案するノードはランダムに選出され、ブロックの検証もランダムに選ばれたコミッティーによって行われます。コミッティーのメンバー数は事前に設定できるようになっており、OrbsネットワークのDappsに向けては最低でも22ノード以上をコミッティーに参加させることを推奨しています。

Orbsネットワークに参加する、1,000を超える数のノードすべてがブロック検証に関われる環境を作り出すことで、私たちはOrbsやイーサリアムのような大規模ネットワークに本来備わっているセキュリティレベルを保つことができるのです。そして同時に、EOSのように実際に検証を行うノードの数を絞ることで、エネルギー効率がよく、スピーディーな取引が可能になります。

まとめ:PoS、DPoS、RPoS

基本的なPoSフレームワークでは、単一のノードもしくはフォージャーが新たなブロックを生成するのに対し、DPoSでは各ユーザーが投票で「ウィットネス」を選出し、得票数の多いウィットネスがブロック生成を行い、その報酬を受け取ります。さらにRPoSのもとでは、すべてのノードの中からランダムに選出されたメンバーがコミッティーを構成します。DPoSはスピードや効率性の観点からPoSよりも優れていますが、コミッティーに参加しえるノードの母数はPoSよりも少なく、結果的にセキュリティや分散性が一部失われてしまいます。