Proof of Stakeの概要とその重要性

Kazuaki Fujioka
TeamGeekHash
Published in
14 min readDec 27, 2018
引用:BITCOINMAGAZINE

※この記事は2013年8月にVitalik Buterin氏によって執筆された記事「What Proof of Stake Is And Why It Matters」を翻訳したものになります。

— ここから本編 —

もしあなたがビットコインに十分な時間関わっているなら、 “Proof of Work”という概念を少なくとも聞いたことはあるでしょう。Proof of Workの背後にある基本的な概念は単純なものです。一つの集団(証明者と呼ばれます)は、計算が困難であるが、検証が簡単だと知られている計算の結果を提示し、計算結果を検証することによって、他の誰でも、結果を生み出すために一定量の計算を行ったことを確認する事ができます。1996年にAdam Backによって「Hashcash」として発表された最初の現代的なアプリケーションは、SHA-256ベースのProof of Workをアンチスパムの方法として利用しています。全てのメールに強力なProof of Workを要求することによって、スパマーにとって、大量のメールを送信する事が非経済的になる一方で、個人が必要な時に互いにメッセージを送り合う事ができるものでした。現在ではBitmessageで同様の目的で似たようなシステムが使用されています。そして、このアルゴリズムはマイニングという形で、ビットコインのセキュリティとして、再利用されています。

しかし、問題があります。proof of workは非常に無駄が大きい事です。600兆のSHA256の計算が毎秒bitcoin ネットワークの中でおこなわれており、究極的にはこの計算には、実利的、科学的な価値がありません。これらの計算はただ悪意のある攻撃者が簡単に数百万のノードのふりをしてネットワークを圧倒することができないようにするために故意に困難にさせられたProof of Workの問題を解くことだけを目的としています。当然、この無駄は本質的な悪ではありません。他の代替手段がない場合、Proof of Workの作業の無駄は、誰もが事実上無料で世界中の誰かに即座に送金することを可能にする、分散的かつ匿名性をもつ国際通貨ネットワークという報酬を得るためには少ない費用なのでしょう。そして、2009年においてはProof of Workは事実、唯一の選択肢でした。しかし4年経ち、私たちはいくつかの代替案を開発しました。

Sunny kingのprime coinはおそらくもっとも自然で、同時にもっとも潜在的に有望な解決策です。Prime coinはProof of Workを完全に廃止するというよりも、Proof of Workを有用にすることを目指しています。Prime coinではマイナーはSHA256の計算をするのではなく、長い「カニンガム鎖」の素数を見つける事が求められます。値の連鎖n-1、2n-1、4n-1など、連鎖内のすべての値が素数になるような最大長(より正確には、n + 1、2n + 1、4n + 1もカニンガム鎖と認められます、さらに、Prime coinではn-1、n + 1、2n-1、2n + 1…の形式の「双子鎖」も受け入れます。ここでのすべての値は素数です。)これらのチェーンがどのように有用であるかはすぐにはわかりません Prime coinの支持者はいくつかの理論的応用を指摘していますが、これらのカニンガム鎖を生産するために必要なのは簡単な長さ3の鎖だけです。しかし、現在、より強く議論されているのは、現代のBitcoin採掘では、採掘ハードウェアの製造コストの大部分は実際にはより効率的な採掘方法(ASIC、最適化回路など)を研究することで、デバイス自体の構築または実行ではなく、Prime coinの世界ではこの研究は、代わりに算術および数論計算を行うためのより効率的な方法を見つけることに向けられるでしょう — これはただ暗号化通貨を採掘することをはるかに超えて有用性があるものです。

Prime coinのような「便利なpows」が最も有望である理由は、計算が十分に有用であるならば、通貨の「無駄要素」が実際にはゼロ以下に下がり、通貨を公共財にすることができるからです。たとえば、1020分の1の確率で、研究者たちに癌を治癒する道を大きく進展させる計算があるとします。現時点では、個人や組織がそれを試みるインセンティブはあまりありません。彼らが幸運に恵まれ、成功した場合、彼ができるのは秘密を公開して、個人的な利益をほとんど得ずに短期的なメディアへの認知を得る、もしくは少数の秘密保持契約下にいる研究者に解答を販売する事ですが、これは、秘密保持契約下にいない全ての人々から発見の恩恵を奪う事であり、いずれにしても多額の収入を得られない可能性が高いです。しかし、この魔法の計算が通貨に統合された場合、ブロック報酬は多くの人々に計算の実行を奨励し、計算結果は誰もが見ることができるようにブロックチェーンに表示されます。社会的な報酬は電気代の価値以上のものになるでしょう。しかし、これまでのところ、魔法のような癌治療法の計算はできません。最も近いのはFolding @ homeですが、数学的な検証可能性が欠けています –不正なマイナーは、実際の結果とどのような作業証明者との区別もつかない偽の計算をすることで簡単に不正を行うことができますが、その行いは社会に価値をもたらしませんです。数学的に検証可能な有用なPOWに関する限り、prime coinは私たちの最善の策であるが、その社会的利益が生産と電気代を完全に上回るかどうかは不明瞭であり、多くの人がそれを疑います。それでも、Prime coinが達成したことは非常に賞賛に値します。公共財としてマイニングコストを部分的に回収するだけでも、何もないよりはましです。

Proof of Stake

SHA256の代替となる、Proof of Workに要する計算コストとは無縁なProof of Stakeというものがあります。ブロックの証明者に計算を必要とするのではなく、Proof of Stakeでは証明者にある程度の資金の保有を必要とします。この方法をサトシが採らなかった理由は非常にシンプルです。2009年以前は暗号化プロトコルと作用するデジタル資産が存在しなかったからです。Paypalやクレジットカードでの支払いは10年以上続いていますが、これらのシステムは中央集権化しており、これらにProof of Stakeを採用するとPaypalやクレジットカード会社が偽のトランザクションを生成するといった行為を可能にしてしまいます。(補足:既存の中央集権化したサービスでは運営母体によりトランザクションのコントロールが可能になってしまいます。)現在IPアドレスとドメイン名は部分的には分散化されていますが、その所有権を後から証明する方法はありません。初のProof of Stakeがオンラインで機能する可能性のあるデジタル資産はビットコイン(と一般的な暗号通貨)なのです。

Proof of Stakeをどのように実装できるか、これまでにいくつかの提案がありました。しかし、現在実際に機能しているのはPPCoinだけです。これもまたSunny Kingによって作成されたものです。PPCoinのProof of Stakeアルゴリズムは次のように機能します。Proof of Stakeブロックを作成するとき、マイナーは自分自身に所有している資金と事前に設定された報酬率(Bitcoinの25 BTCブロック報酬のようなもの)を送る「Coin stake」トランザクションを構築する必要があります。

SHA256ハッシュは、トランザクション入力、追加の固定データ、および現在時刻(1970年1月1日からの秒数を表す整数)にのみ基づいて計算されます。 このハッシュは、BitcoinのようなProof of Workシステムと照合されチェックされます。ただし、難易度はトランザクション入力の「Coin age」に反比例します。PPcoinsにおいてcoin ageは、時間に基づくトランザクション入力のサイズとして定義されます。(トランザクションの生成からの時間=coin age)ハッシュは時間と静的データのみに基づいているため、より多くの作業を行ってハッシュをいち速く作成することはできません。毎秒ごとに、各PPCoinトランザクションの出力には、そのAgeとそのトランザクションに含まれるPPCoinの数に比例して有効な作業量が決定されます。基本的に、マイニングパワーは時間の経過とともに直線的に増加する一方、有効なブロックが見つかるたびにゼロにリセットされるという興味深い特性はありますが、すべてのPPCoinは「擬似マイニングリグ」として機能できます。

出力サイズだけではなく、PPCoinと同じようにcoin ageを使用する必要があるかどうかは明確ではありません。当初の意図は、マイナーが自分のコインを何度も再使用するのを防ぐことでしたが、PPCoinの現在の設計では、マイナーが意識的に特定のトランザクション出力でブロックを生成することができないように機能しています。むしろ、システムは毎秒ランダムにPPCoinを選び、そしてその所有者にブロックを作成する権利を与えます。このシステム上では、ランダム性に加重係数としてAgeを含めなくても、これはBitcoinマイニングとほぼ同等に動き、かつ無駄がありません。しかし、coin ageに有利な点としてもう1つ洗練された議論があります。ブロックの作成に失敗した時間が長いほど成功する可能性が高くなるため、マイナーはより定期的にブロックを作成することを期待でき、集中型のマイニングプールと同等のものを作成されるため、マイニングを避けるインセンティブが働きません。

暗号通貨を超えて

しかし、PoSが本当に興味深いのは、それが通貨以外のものに適用できるという事実です。これまでのところ、スパム対策システムは3つのカテゴリに分類されています。PoW、CAPTCHA、IDシステムです。HashcashやBitmessageなどのシステムで使用されるPoWに関しては、我々はすでに上で広範囲に議論しました。キャプチャはインターネット上で非常に広く使われていますが、人間は簡単には解決できるがコンピュータでは解決できないというような問題を提示することです(CAPTCHAは、「コンピュータと人間を区別するための完全自動公開チューリングテスト」の略です)。実際には、これは通常、文字と数字を含む読みにくい画像を表示し、文字と数字が何であるかを入力することを要求します。最近のプロバイダーは、古い印刷物をデジタル化するために群衆の力を使って、CAPTCHAの一部を印刷された本から単語にすることによって、システムに「Public Good」コンポーネントを実装しました。残念ながら、キャプチャはそれほど効果的ではありません。最近の機械学習の取り組みは、30~96%の成功率を達成しています。これは人間自身の成功率と同じです。IDシステムには2つの形態があります。第一に、ユーザーに自分の身元を証明することを要求するシステムがあります。これが、民主主義がこれまで”匿名のトロル”による暴走を回避してきた方法です。第二に、入会するためにいくらかの料金を必要とするシステムがあります、そして彼らがシステムを悪用しようとしているのが発見されればモデレータは払い戻しなしにアカウントを閉じることができます。これらのシステムは機能しますが、プライバシーが犠牲になります。

PoSはスパム対策の第4のカテゴリを提供します。フォーラムアカウントを作成するためにCAPTCHAを入力する代わりに、ユーザーがに自分自身にBitcoinまたはPPCoinトランザクションを送信することによってcoin ageを消費できると想像してください。ブロックチェーンから無作為に引き出されるのではなく、それぞれのPoSがユーザによって行われることを確実にするために、システムはユーザに同じアドレスを持つ署名されたメッセージを送ることを要求したり、もしかしたら特定の方法で自分のお金を自分自身に送り返すことを要求するかもしれません(例えば、出力の1つに0.000XXXXX BTCを正確に含める必要があります。値は毎回ランダムに設定します)。ここでcoin ageが重要であることを覚えておいてください。というのもユーザーがオンデマンドで利害関係の証明を作成できるようにしたいので、再利用を防ぐために何かを消費する必要があるからです。純粋なPoSではありませんが、電話番号は物理的な身元と密接に関連しており、電話を購入するプロセスはそれ自体が一種のCAPTCHAになるので、Googleアカウントを作成する際に携帯電話の所有権を証明するためにユーザーにテキストメッセージの送信を要求するといった形で、ある意味ではPoSの形はSMS確認の形ですでに存在します。そして、SMS検証には、3つのシステムすべての長所と短所がいくつかあります。

しかし、PoSの本当の利点は、Bitmessageのような分散システムにあります。現在の、Bitmessageは他に選択肢がないため、PoWを使用しています。また、「分散型CAPTCHA」ソリューションはなく、それを作る方法を理解する為の研究はほとんどありません。しかし、PoWは無駄であり、Bitmessageを使用するにはやや面倒で電力を消費するシステムになります — 電子メールの場合は問題ありませんが、インスタントメッセージングの場合は忘れてしまいます。しかし、BitmessageをBitcoin(またはPrimecoinまたはPPCoin)に統合してそれをPoSとして使用することができれば、多くの困難と無駄を軽減することができます。

PoSに未来はあるでしょうか?多くの兆候はそれが確実にそうであることを示唆しています。PPCoinの創設者Sunny Kingは、そのブロック報酬が下がり続けるにつれてBitcoinのセキュリティが時間の経過とともに弱くなりすぎると主張します。確かに、これはPPCoinとPrimecoinを作成するための彼の主な動機の一つです。それ以来、PPCoinは市場で5番目に大きな暗号通貨になり、ますます多くの新しい暗号通貨がPoSをコピーしています。現在のところ、PPCoinは完全なPoSではありません。なぜなら集中度の高いコミュニティが存在する小規模な暗号通貨であるため、takeoverのリスクはBitcoinよりも高いため、中央集権的なチェックポイントシステムが存在し、開発者が、攻撃者の行動に関係なく、トランザクション履歴の一部として残ることが保証されている「チェックポイント」を作成できるようにします。最終的には、チェックポイント設定システムの分散化とその処理能力の削減の両方を目指すことが目的であり、PPCoinsはより多くの人々によって所有されるようになります。別の方法としては、分散チェックポイントシステムとしてのPoSをビットコイン自体に統合することが考えられます。たとえば、あるプロトコルでは、1 million BTC-years以上の人々の団体が、自分たちのコインを自分たちに送ってコイン時代を浪費するという犠牲を払って、コミュニティが有効なブロックであると認めるチェックポイントを生成することができます。

2009年には、暗号通貨が、無関係の多数の暗号化プリミティブの集大成として登場しました。ハッシュ関数、Merkleツリー、PoW、および公開鍵暗号化はすべて、Bitcoinの構築において重要な役割を果たします。しかし今では、Bitcoinと暗号通貨が今後も存在することになります。これは、暗号化の将来に向けた新たな可能性をもたらします。例えば、暗号通貨自体から構築するプロトコルを設計することができます-PoSがその完璧な例です。PoSを使用して暗号通貨を保護することができます。分散型スパム対策システムや、まだ考えていない他の多くのプロトコルで使用することができます。ちょうど1998年のWei Daiのb-moneyまで、Bitcoinのようなことを誰も考えていなかったように。

可能性は無限大です。

--

--