NEM Catapultの新しいコンセンサスアルゴリズム「PoS+」とは何か?

 最終更新日2019/09/20 公開日2019/09/20    この記事は 約14分 で読めます。

NEM財団評議員メンバーの中では最も信頼と実績のあるのジェフさんによるPoS+の詳細解説の和訳です。

コメントを差し込んで深入りチャレンジしてみました。グレー枠がそれです。
※もし、ガチでしくじってるとこあったらツイッターで教えてください。

PoS+とは何か?

Proof of Stake (PoS)はブロックチェーンにおいてもっとも採用されているコンセンサスアルゴリズムの一つです。

NEM財団の評議会メンバーでありLuxTagのCBOかつ共同創立者であるジェフ・マクドナルドは様々なブロックチェーン、NEMそしてCatapult関連のイベントに招待されて講演を行ってきました。

彼は常にNEM Catapultで採用される新しいコンセンサスアルゴリズムである「PoS+」について質問を受けてきました。そこで私たちは、PoS+とは何かについて彼の視点から要約を作成しました。

PoS+は3つの要素から成り立っています。次の要素を基準として、あるアカウントがブロックを生成する確率が上昇します。

1. コインの保有割合(ステークスコア)
2. アカウントのアクティブさ(トランザクションスコア)
3. ノードを運営していること(ノードスコア)

2のアカウントのアクティブさとは送金手数料をどれだけ支払っているかです。2と3を合せて「アクティビティスコア」と言います。後半に出てきますので覚えておいてください。

PoS+はPoIよりも効率的な仕組みである

NEMの現在のPoIアルゴリズムは多くのコンピュータ処理能力を使用しており、これは長期的な視点では問題となる可能性がありました。

PoIはNEMブロックチェーンのぞれぞれのトランザクションを評価するために、様々な指標を追跡し、どのアカウントが「重要」で、どのアカウントがそうでないかを判断していました。この仕組みが有効なのは、「重要な」アカウントがエコシステムに貢献していたからでした。

新しいPoS+アルゴリズムでは、ネットワーク内でのアクティビティは引き続き測定されて評価されますが、指標はトランザクション手数料の支払い額のみとなっています。

処理が軽くなることでノードの負荷が軽減すると考えておけばいいと思います。

というのも、私たちは「重要な」アカウントとはトランザクション(送受金)を行っていて、それゆえ手数料を支払っているアカウントだと認識しているからです。

そのため、要するに、他の非常に複雑で数学的な計算が必要な指標を追跡するのではなく、トランザクション手数料だけを追跡してどのアカウントがより重要で、ネットワークのアクティビティの活発さに貢献しているかを判断する方がはるかにシンプルなのです。

手数料の支払いが重視されるということは、XEM(Catapultでは新しい通貨名になる予定)そのものの送信に限らず、これまで評価に入っていなかったモザイクアセットの送信(XEM建て手数料が必要)も評価されるようになることを意味しています。

Catapultではアグリゲートトランザクション機能により、送金手数料を第三者が肩代わりできるようになります。

モザイクアセットを介した何かしらのサービスを提供する運営者が、本来ユーザーが負担する送金手数料を肩代わりすることで、XEMを持っていない(或いはNEMの存在さえも知らない)ユーザーの負担をなくすことができる一方、モザイク送信時に発生する手数料が重要度スコアに影響するならば、任意でユーザーが手数料を自腹する選択肢が必要になってくるかもしれません。

ただし、アカウントのアクティビティだけが唯一の重要な指標というわけではありません。ステーク(基本的にはあるアカウントが保有するコインの総量)が常にPoIの重要な要素であり、PoSでは唯一の重要な指標であり続けています。

PoS+では、ステークは方程式の重要な要素であり続けますが、それだけにとどまりません。アカウントのアクティビティとステークに加えて、PoS+ではノードの運営者に対しても報酬が与えられます

PoS+はステーク(コイン保有量)とアクティビティ(トランザクションを発生させて手数料を支払っている・ノードを運営している)で評価される仕組み。

フルノードを運営することのインセンティブ

ほとんどのブロックチェーンにはフルノードを運営していることに対してのインセンティブがありません。このことがビットコイン、イーサリアム、そしてフルノードの運営が趣味や利他精神によって行われている他のブロックチェーンで問題となってきたことは有名です。

(註:マイナーはハッシュパワーを生み出したことについて報酬を受け取るのであって、ノードの運営に対しては報酬を受け取っていません。そのため、ほぼすべての人がノードを運営しないことを選びます。)

パブリックチェーンではノードがいかに分散するかは重要なことです。エコシステムと表現されている以上、サーバー代などの費用やノード運営リスクを負担して分散化を支えるノードを運営する人に、何かしらの報酬システムがないよりはあった方がいいと思います。

NEMが最初にローンチされた時、この問題は最初は追加のレイヤー、つまりスーパーノードと呼ばれるプログラムにアウトソーシングされました。

スーパーノードの仕組みは、多くのノードを確保するという点では成功している一方で、払われている報酬はPoIのブロックチェーン・コンセンサスプロトコルに直接帰属しているものではありませんでした。

NEMを使う人が少ない初期、トランザクションは当然少なく、市場価格も低く不安定ですし、ハーベスト報酬のみでノード運営するメリットがあまりありませんでした。

そのため、NEMのネットワークが成長して潤沢になるまで(たくさん使われて手数料が飛び交うまで)のつなぎとして始まったのがスーパーノード報酬システムです。

報酬はNEMが始まった頃にファンドとして確保されていた、まだ市場に出回っていないXEMから分配されていますので、自律した非中央集権的なシステムではない面が強いです。

スーパーノードプログラムはNEMに重要なサービスを提供し続け、またCatapultでも何らかの形式で存続する計画となっていますが、詳細はまだ最終決定していません。

しかし、PoS+による改善が加わることで、素晴らしいことに、1つのノードでも運営していれば、システムから直接報酬を受ける取ることができるようになります!

スーパーノード報酬を得るには300万XEM以上の保有などいくつか条件がありますが、PoS+ではそうでなく普通にノードを運営することもネットワークへの貢献と評価され、システムから報酬が得られる機会が作られます。

ノードの運営に魅力を感じてもらうための追加ボーナスとして、あるノードが委任されたハーベスターを多く集めるほど、ノードの運営による利益も増加するという仕組みがあります。

このインセンティブには2種類あります。まずは、ノードの運営者は自身のノードを使ってハーベスティングを行うのと同時に、委任されたアカウントが生成したそれぞれのブロックから少額の手数料を徴収することができます。

こういう感じですね。

現在のPoIはこんな風。ノード運営し委任ハーベスターに接続されるメリットは特にありません。

Catapultではこのように委任ハーベスターから少額手数料を徴収できるようになります。割合は任意設定できたと思います。

こうすることでノード運営メリットが出てきますので、将来的にNEMのネットワークが活発に使われるようになれば、スーパーノード報酬制度を終了しても問題なくなってくるでしょう。

もう1つは、あるノードに委任されたハーベスターたちの重要度の合計が集積され、そのノード上でのブロック生成の総確率が向上します。

そして、すでに触れたように、この仕組みはセカンドレイヤーに委託することなく、コンセンサスアルゴリズムによって実行されます。

こういうイメージであれば、さらにノード運営メリットが発生しそうです。

より重要度スコアの高いノードに委任ハーベスト接続したくなりますね。加えて、徴収される手数料がより低いノードの人気も高まるでしょう。

でもあまり低くしすぎると運営メリットが削がれますし、高すぎると他のノードが選ばれるでしょう。委任できるノードの数や受入れ枠が少なくなれば、手数料割合を多少高くしても良いかもしれません。

人気なノードになるほどサーバーやアップデートなどの管理をしっかりする責任が出てきますね。

(註:Catapultでの委任ハーベスティングは、PoS+のあらゆるアカウントがノードの運営をリクエストして、アカウントにブロックの生成を行ってもらい、それによってブロック内の手数料を回収することのできるという安全なコントラクトです。)

小規模なアカウントの優遇

PoS+の中でもっとも素晴らしいこととして、小規模なアカウントが優遇される仕組みがあります。

現在のPoIは一定期間にどれだけ手数料を支払ったか?の評価も重要度スコアに加味されますが、中規模や大規模のステーク評価が強すぎて、小規模アカウントがその恩恵を受けることはとても厳しいのが現状です。機会は公平とはいえステークによる格差圧が勝ってしまってるのはPoIが機能してるとは言い難いと思います。

現状は、最低基準の1万XEM保有で特に頻繁にトランザクションを送ってないアカウントが委任ハーベスティングをしていても、報酬獲得は数ヵ月に1回(当選チャンスは1分に1回)当たるか当たらないかくらいではないでしょうか?

しかもまだNEMのネットワークは潤沢に成長していないので、1分あたりのブロック報酬が0ということもあり、ようやく報酬獲得チャンスに当選したのに、賞金0XEM…という悲しい結果さえあります。

ハーベスティングの面白いところの1つは、アカウントの重要度スコアが高いほど当選確率は上がりますが、当たったブロックの中にどれだけの報酬が詰まっているかはランダムであるところです。

重要度の高いアカウントが極少額の報酬をバシバシ何度も当てていても、重要度の低いアカウントが待ちに待った権利を得た時、そのブロックには高額の報酬が詰まってる可能性があるのです。

あるアカウントが大量のステークを持っている場合(大規模な取引所を想像してください)、そのアカウントのトランザクション手数料の支払いやノード運営によるボーナスのパーセンテージは、例えば自身のノードを運営している小規模でもアクティブなアカウントのものには到底及びません。

PoS+では、1万~10万XEMの小規模アカウントでアクティビティスコアの影響が大きく、20万XEMではその影響がほぼゼロになります。よって大規模アカウントがどんなに頑張ってもアクティビティスコアの恩恵は得られません。

なので、長期ストック用のアカウントと普段使い用のアカウントを使い分ける人が今以上に増えるかもしれません。もちろん普段使い用のアカウントはハーベスティング条件の残高1万XEMを切らないようにしておく必要がありますね。

この仕組みは、NEMエコシステム上での開発とネットワークの支援を積極的に行っている小規模なアカウントを、ただコインを掛け金にして委任ハーベスティングを使用している大規模な投資家よりも優遇しようというものです。

例えば、サービス運営者が小規模ステークなノードを立て、そのアカウントを介するようなサービスを開発し、その中でたくさんの人がトランザクションをバシバシ発生するような成功を収めるとするなら、大いに優遇されるべきだと誰しもが思うはずです。運営者や開発者の意欲が増すことにもなるのでとても良いポイントではないでしょうか。

しかし、小規模アカウントがそのアクションによって評価されるようになるということは、競争が激しくなることが容易に想像できます。委任ハーベスティング設定をし、あまりNEMを利用せず"不労所得"を得ようとするだけの小規模アカウントは、PoI以上に報酬を獲得する機会が減る可能性が考えられます。

本記事の執筆時点ではまだCatapult稼働前なので実質的なデータはありませんが、「よく働きまたよく消費する庶民」がより公平に評価されるアルゴリズムになっているのかなと感じられます。

それによってPoSに依然として存在する「金持ちがさらに金持ちになる」という問題と、ほとんどのPoWのコインに存在する「PoWでは趣味でフルノードを運営している人が報われない」という問題が解決されます。

NEMの開発者たちはこのソリューション実現のために今までになく懸命の努力をしてくれました。そして、このPoS+はコミュニティが共有して誇りに感じることのできるものだと私は考えています。

以上で和訳とコメントは終わりです。

最後に、Catapultの移行が無事に済んだら、

(※2017年1月の当サイト記事の画像より)

備えましょう!

 - NEM(ネム) , ,

  著者プロフィール