Skip to content

PoWとPoSを整理する -トークンディストリビューション編

Note

こちらのページでは会員制のリサーチコミュニティ「TokenLab」で18年9月1日に公開したものを無料公開しています。

Part 1

既に何度も論じられてきたテーマではありますが、トークンモデルやプロトコルレイヤーを考える際にコンセンサスアルゴリズムを避けて通ることはできません。このシリーズではPoWとPoSについて各要素に分解して考えていきたいと思います。

ブロック生成者というテーマでは以前ブログでも記事を書いており、基本的に見方は変わっていないのでそちらもご覧下さい。

忙しい方のために以下に記事を要約します。

PoWの要点

  • PoWのマイナーはプロトコルの外側に存在する独立した主体である
  • プロトコルはマイナーのハッシュパワーを操作することはできない
  • ハードフォークによってハッシュパワーをコピーすることができない
  • マイナーの生存圏はプロトコルを超越した類似アルゴリズム圏内

PoSの要点

  • PoSのバリデーターはプロトコルの内側に存在する機能である
  • プロトコルはバリデーターのステイクに対する影響力を持つ
  • ハードフォークによってネットワークが分裂した場合でも自前のバリデーターを用意することができるのでプロトコル外が存在に依存する必要がない
  • バリデーターの生存圏はプロトコルの内側に限定されるが、PoSのステイクは換金性が高いためプロトコル間の移動が容易であり流動性は高くなる

https://individua1.net/comparative-algorithm-pow-pos-miner-and-validator/

トークンのディストリビューション(配布)

ビットコインにせよEthereumにせよ、あるいはPoS型のEOSやDFINITYにせよ、トークンを介してネットワークを形成するためには、トークンを配布する必要があります。これをトークンディストリビューション(Token distribution)を呼びます。

トークンのディストリビューションは

  1. プレマインの有無
  2. コンセンサスアルゴリズムの種類
  3. 配布方法

などの項目に分解することができます。

以下にいくつか代表的なプロジェクトを見てみましょう。

ビットコイン

プレマイン コンセンサス 配布方法
なし PoW(SHA256) マイニング

ビットコインは、純粋なPoW型でプレマインもありません(Satoshi Nakamotoのアドレスには大量のビットコインが保管されていますが)。またマイニングはパーミッションレスなので、ハッシュパワーさえ確保できれば、誰でも参加することができます。誰かの投票や委任は必要なく、純粋に計算力が必要となります。

Ethereum

プレマイン コンセンサス 配布方法
あり PoW(Ethash) ICO+マイニング

EthereumはICOを実施して、ジェネシスブロックで大量のETHを投資家、並びにファウンデーションに分配しています(既存の発行総数の68%がプレマイン)。具体的な数字は上のリンクに記載されています。ICO実施後は、PoWを採用しており、「他のプロジェクトに比べると」ホルダーは分散化されています。

しかしICOにおいて分配されたトークンの比率が高いことは認識しておくべきでしょう。

ビットコインキャッシュ

プレマイン コンセンサス 配布方法
フォーク PoW(SHA256) フォーク+マイニング

ビットコインキャッシュは17年8月にビットコインのフォークとして誕生したトークンです。当然、8月以前のトランザクションデータはビットコインと共有しており、ホルダーも一致していることになります。

この「ホルダーが最も多く、且つ分散されている性質」を受け継いでスタートするために、ビットコインをフォークして生み出されるフォークコインは他にもあります(ビットコインキャッシュの場合、ビッグブロックという目的があってフォークしたので、これらの性質のためにフォークしたわけではないと個人的には思っています)。

DASH

プレマイン コンセンサス 配布方法
なし PoW(X11) マイニング45%
マスターノード45%
コミュニティ10%

インスタマイン問題あり

DASHはプレマインこそないもののチェーンスタート時に、大量にDASHが採掘できてしまうバグがあり、それによって採掘されたトークンは無効化されているわけではないため、これを問題視する人もいます。

Zcash

プレマイン コンセンサス 配布方法
なし PoW(Equihash) マイニング

※最初の4年間はマイニング報酬の20%が開発者チームへ自動配布されます。その後はブロックリワードの100%がマイナーへ配布されます。最終的に総発行量の10%=2.1MZECを開発者が保有することになります。

Funding, Incentives, and Governance - Zcash

CounterParty

プレマイン コンセンサス 配布方法
あり embedded consensus Proof of Burn

Proof of Burnは、文字通り無効なアドレス(無効と言ってもそのアドレスへの送金はできる)にトークンを送り、トークンを取り出せない形で投げ込む(燃やす)ことを言います。これだけだと単なる無駄遣いですが、「この無効なアドレスBTCを投げると、比率に応じて別のトークンがもらえる」という約束事があれば、それはBTCとトークンの交換とみなせるので、通常のプレマイン型ICO(BTCやETHとの交換ではなく、無からトークンを作り出して、それを売る)とは別の形になります(私の理解では)。

Byteball

プレマイン コンセンサス 配布方法
あり DAG(witness) Airdrop+キャッシュバック

Byteballはプレマイン型ではありますが、ビットコインホルダーにエアドロップする形でトークンを配布しました。ビットコインのチェーンとは直接的な関係がないにもかかわらず、ビットコインホルダーへのみエアドロップを行いました。

EOS

プレマイン コンセンサス 配布方法
あり PoS Staking + ICO

EOSはプレマイン型のトークンをICOで販売し、且つDPoS(Delegated Proof of Stake)という形で、21人のブロック生成者を選び、主にその流動性のある21人のグループにブロック報酬が与えられるシステムです(厳密には選ばれたなかった22位以下の人たちにもトークンは配られます)。

※参考 EOSのブロック報酬周辺のシステムを理解する - プロトコル - Token Lab

DFINITY

プレマイン コンセンサス 配布方法
あり PoS AirDrop + プレセール

DFINITYはプレマイン型のPoSで、コミュニティへの貢献度・関心度に応じて受け取れるトークンの量が決定される形でエアドロップを行いました(エアドロップの登録は終了、配布はまだ)。コミュニティチャンネル(Slack, Telegram, メーリングリストなど)への登録数が多ければ多いほど、登録時期が早ければ早いほど多くのトークンがもらえる仕組みです。少ない人は100CHF(11,459.42 円)、多い人は2500CHF(286,485.42 円)相当のトークンがもらえるということで大きな話題にはなりましたが、「1トークン何CHFで計算して配るのか」は不明です。

プレマインは基本的に不公平

まずプレマインの問題について述べます。プレマインはICOではおなじみのシステムで、無から作り出されたプレマイントークンがBTCやETHと引き換えに売りに出されます。

ここで注意が必要なのは、トークンはICOによって集められたETH(やBTC)から生み出されたわけではない、ということです。これはトークンの流れを考えれば自然なことです。

まずトークンを無から発行し、ICO実施者はトークンを売ります。ICO参加者はETHを送信し、ICOトークンを得る権利を得ます。

ICO実施者は、作り出したトークンのうち開発者に割り当てられるトークンとICO参加者が送金したETHの両方を得ることができます。つまり 集められたETHの価値が、新たに作られたトークンに注入されてトークンが生み出されたわけではない ということです。これは重要です。

CounterPartyが行ったように、Proof of Burnを用いて、BTCやETHを燃やしてしまう(永久に取り出せないウォレットに送金する)ことでXCPトークンを得ることができる形式だと、実際にBTCが消滅し、それと引き換えにトークンを得ることができるので、BTCの価値がXCPに(その時点でのレートで)転移したと言っても良いでしょう。この違いは認識する必要があります。

プレマイントークンは無から作られたものであり、基本的にユーティリティと投機需要によって価値がつきます。

Part2では「PoSはシステム的には面白いが、初期の分配が極めて難しい」ことについて書きたいと思います。

※何か気付いた点、疑問などあれば、このトピックに直接返信する形で書き込んで下さい。

Part 2

Part 1はこちら。

PoWとPoSを整理する -トークンディストリビューション編 Part1- - トークン設計/トークン価値 - TokenLab

前回に引き続き「PoSはシステム的には面白いが、初期の分配が極めて難しい」という話をします。

PoSにも様々な種類があり、Ethereum Casper型PoS、EOS型DPoS、Tezos型LPoSなどがありますが、これらの比較については後日改めて記述したいと思います。

本記事ではトークンのディストリビューションにおいて、PoSが本質的に難しい点を説明します。

チェーンの始め方

まず新しくチェーンを開始するには、ジェネシスブロックからブロックを生成していき、チェーン内のインセンティブとして機能するトークンをブロック報酬としてブロック生成者に分配する必要があります。

このブロック生成者がPoWの場合だとマイナーになります。「何月何日何時からジェネシスブロックをスタートさせるから、マイニングもその時点で可能になる」ということを事前にアナウンスしておいて、マイナーへ採掘への参加を呼びかけておくわけです。

PoWの場合

  • PoWのマイナーはプロトコルの外側に存在する独立した主体である

Part1でも話したように、PoWの場合、ブロック生成者はプロトコルの外側に位置する主体なので、プロトコル内部の資源に依存してブロックの生成を行うわけではありません。電気代とマイニング機器があれば、ナンスの探索を開始できます。ナンスの探索を通じて、チェーン外の計算力がチェーン内に注がれていき、それがセキュリティの向上に繋がり、そしてマイナーは提供した計算力の割合に応じてブロック報酬を得ることになります(長期的には、ブロック報酬はハッシュレート占有率に収束していく)。

PoSの場合

  • PoSのバリデーターはプロトコルの内側に存在する機能である

PoSの場合、ブロック報酬を得るためにStakingが必要です。Stakingとは自身が保有するトークンをチェーン内にデポジット(≒ロック)して、コンセンサスの形成に参加することです。この部分はCasper PoSだろうが、DPoSだろうが、基本的な構造は変わりません。

しかしジェネシスブロックは最初のブロックなので、その時点でトークンをブロック報酬という形で過去に獲得し、現在保有している人は存在しません。トークン保有者がいなければ、PoSはチェーンを伸ばしていくことができません。

故にPoWでスタートしてPoSに切り替るタイプでもない限り、 ジェネシスブロックの時点でトークンホルダーを必要とするPoSは、必然的にプレマインが必要 になります。

ちなみに「EthereumはPoWからPoSへ切り替えるタイプのトークン設計だ」と言われることがありますが、正確には「プレマイン→PoWスタート(→PoW/PoSハイブリッド)→ピュアPoS」という流れです。

Image Ethereum Market Capitalization And Supply Statistics

PoSにプレマインが必要なのは分かった。ではどうする?

各プロジェクトが苦心しているのはこの部分です。

堂々とプレマインを行い、ICOで無から作り出したトークンを販売し、BTCやETHを集め開発資金としているプロジェクトもありますが、その場合、純粋にユーティリティ需要と投機需要に依存してトークンの値付けが起こることになります。当然ですが、Store of Valueとしての価値はありません。

工夫が見られるのはByteballやDFINITYですが、これもベストプラクティスとは言い難いように思います。

Byteballの場合

Byteballはエアドロップを行いました。BTCホルダーに対して、一定の比率(以下の図を参照)で、Byteballを配布するという方式でした。エアドロップを受け取るためには、ビットコインアドレスを登録する必要がありましたので、全てのBTCホルダーに配布されたわけではありません(なのでSatoshiが保有するBTCアドレスに大量のByteballが配布されたわけではないです)。

Image Airdrop - Obyte Wiki

Byteballがエアドロップを行ったのは、トークンホルダーを分散させることでネットワークを形成するためで、そのためにホルダーが最も分散されているビットコイン保有者を対象にエアドロップを行ったわけですが、Byteball自体はビットコインとは何の関係もないプロジェクトです。

なので、以下のような課題があります。

  1. ビットコインとは無関係なのにビットコイン色が着く
  2. ビットコインを保有していない人からすれば不公平に見える
  3. BTCと全く関係のないプロジェクトがBTCの価格に影響を与えられる

※3に関して、Counterpartyのようなビットコインのチェーンを利用するトークンが、BTCの価格に影響を与えるのは自然のことのように思えます。

DFINITYの場合

DFINITYは公式チームが運営するSlackやメーリングリスト、Telegramなどのコミュニケーションツールに、「より早く、より多く」参加していたメンバーにエアドロップが行われます。

配布は100CHF(11,459.42 円)から2500CHF(286,485.42 円)相当のトークンで、かなり幅があります。私は17年10月というかなり早い時期からメーリスに参加していたのですが、Slack等に参加していなかったため、得られるトークンは500CHF相当でした。

DFINITYはByteballとは違い、特定のトークン保有者を優遇せずに、あくまで自分たちのコミュニティへの参加度を基準にエアドロップを行うことにしました。個人的にはBTCやETHのホルダーに独占的にエアドロップするよりも余程良いやり方なのではないかと思います。

ただし、参加時期と参加数のみでコミュニティの貢献度が決まるわけではないという批判もあるでしょう。この辺りはどうしても恣意的になってしまいます。

この恣意性、人間の介在がPoSにまとわりつく非常に大きな問題なのです。

ディストリビューションにおけるPoSの根本的な問題

PoWの場合は、収益性の高さが新たなハッシュパワーを呼び込むメカニズムによって、価格が上昇し続けない限り新規に投入されるハッシュパワーの量に反比例してマイナーの利益が逓減していく仕組みになっています。

つまりPoWにおいては、マイニングで利益が出る状況では常に新規マイナーが参入し続け、最終的にマイニングの収益性はゼロになるということです。

PoSの場合は、バリデーターはリスクは負っているものの、コストはほとんど掛かりません。故にEtherが止め処なく新規発行される場合には、富の偏在化を止めることが出来ません。

つまりPoSにおいては、PoWの場合とは対象的に、収益性がゼロになることはありません。なぜなら新規ブロック生成者の増加に伴い収益性は低下するものの、コストが増加するわけではないため、収益性がゼロになることはないからです。

【比較アルゴリズム論】PoWとPoSの違い -ブロック生成者編- | Individua1

PoSではブロック生成者とプロトコルの距離が近い(プロトコルによって発行されたトークンをチェーン内にデポジットすることでブロック報酬を得る)ため、PoWのようにチェーン外の力(計算力)も用いて初期の原動力とすることができません。

内側で完結しているシステムになっているため、外からの貢献(PoWでいうところの計算力)に応じてトークンを分配してネットワーク効果を作り出すことが困難です。

ブロックの生成にはブロック生成者が必要で、そのブロック生成がブロックを生成するためにはトークンが必要だが、そのトークンを最初は誰も持っておらず、最初に発行される(プレマイン)トークンを誰に割り当てるかは恣意的な判断に頼らざるを得ない ことになります。

この辺りのベストプラクティスは私が知る限りまだないです。

ただし、「貨幣でもないんだから、別に便利ならそれで良いじゃないか。分散型云々の前にまず使えるプラットフォームを用意しよう」という流れになると私は予想していて、半年一年以内の短期では然程大きな問題にならず、PoS系プラットフォームが注目を集めていくと思っています。

次回は「とはいえ地球が養えるビットコイン型のPoWは有限だし、貨幣としてのトークンは今のところビットコイン以外考えられない。つまり他のプロジェクトは別のやり方を採用せざるを得ない」について書きます。