ブロックチェーンの歴史的な流れとして、ビットコインのソースコードをベースに改造を加えた、多数のアルトコイン(派生仮想通貨)が登場してきました。さらに、アルトコインの課題を克服するために、ビットコインブロックチェーンのレイヤー上に乗って取引をするプラットフォーム「ビットコイン2.0プロジェクト」が普及しました。
あらゆる資産を表現できるビットコイン2.0プロジェクト「カラードコイン」
ビットコイン2.0プロジェクトには、前回紹介したカラードコインといったものが含まれていますが、カウンターパーティー(Counterparty)という仮想通貨もその内の一つです。カウンターパーティーでは、独自コインを得るために、「Proof of Burn(プルーフ・オブ・バーン)」という仕組みを開発しました。それでは、Proof of Burnとはどのような仕組みなのでしょうか。
プルーフ・オブ・バーンの開発背景
ビットコインを始め、仮想通貨では取引の分散合意形成のために、様々な証明方法を用いていることは既に紹介しています。
分散ネットワークでの合意を可能にしたコンセンサスアルゴリズム「プルーフ・オブ・ワーク」
Proof of Workの欠点を克服させた合意形成アルゴリズム「プルーフ・オブ・ステーク」
富の偏りの解決を目指すコンセンサスアルゴリズム「プルーフ・オブ・インポータンス」
プルーフ・オブ・ワークやプルーフ・オブ・ステークを採用するコインは、初期の利用者がより多くのコインを手に入れられる仕組みであるため、不公平であると言った意見が挙がっています。そこでカウンターパーティー開発者は、「カウンターパーティーの独自コインが欲しい人には、ビットコインを送ってもらう(Burnする)ことでコインを使ったことを証明し、それに応じてアルトコインを発行する。その量が多ければ多いほど受け取れるコイン量を増やす」という設計にすることで、より公平なコイン発行の仕組みとなりました。
そこで、カウンターパーティで使われる通貨であるXCPが初期発行されるとき、ビットコインを出し合ってその金額に応じて平等に分配がなされました。2014年1月に、およそ2000BTC以上のビットコインがBurnされてXCPが発行され、合計で約265万XCPが配布されました。すなわちこの発行時に、支払ったビットコインに応じてXCPが分配さており、供給量がこれ以上増えることはありません。そして現在では、そのXCPを燃やして、新しい独自通貨を作成・発行することができます。
私たちが現在XCPを手に入れるためにビットコインを送ってもらう先は、その後は二度と使えないように、工夫されているアドレスです。使えないアドレスにビットコインが送られるので、当然のことながらそのビットコインを受け取って儲けるということはできません。これは中央管理者がアルトコインを売ってビットコインを受け取って儲ける、という悪質なアルトコインの使い方がされてきた前例に対抗して、そのような設計にしたと考えられます。
プルーフ・オブ・バーンの概要
プルーフ・オブ・バーン(以下PoB)が登場した背景を踏まえ、PoBを簡潔に表すと、「誰にもわからない秘密鍵を持つアドレスにコインを送ることで、コインを二度と使えない状態にしたという証明」のことです。ここで、コインを「二度と使えない状態」にすることが、あたかもコインを燃やして使えなくすることに似ていることから「Burn」と名付けられました。二度と使えない状態のビットコインにする対価として、他の仮想通貨を貰うことができます。
現在のビットコインはマイニング時にのみ新規に発行され、新規に発行されたビットコインは、マイニングに成功したマイナーに対して報酬として付与されます。その時、マイニングによって新たなブロックを生成したマイナーがその報酬として得るビットコインの取引のことを「コインベース」と呼びます。ビットコインでは、コインベースという特殊なインプットを持つ取引記録を使って通貨発行を行っていると言えます。
PoBの仕組みとしては、送金者は、その後には使用不可能なアウトプットを持つ取引記録を作成することによって、送金したその金額をBurnしたことを証明すると、新しいコインは同額の価値を持つコインを得ることができるという仕組みです。これはマイニングによりビットコインを発行するのとは逆の手順であり、通貨を消滅(Burn)させる取引記録と、新しい仮想通貨の通貨発行を連動させることで実現しています。もちろんコインを送ったことは、ブロックチェーンで誰でも確認できる状態になります。
カウンターパーティー(Counterparty)
カウンターパーティーは、初めてPoBシステムを使用したことで有名です。カウンターパーティーは独自通貨である「XCP」を用意しており、カウンターパーティー上で使用できます。そのXCPの配布方法としてPoBが用いられているのです。
カウンターパーティーにおけるPoBは、「1CounterpartyXXXXXXXXXXXXXXXUWLpVr」というビットコインアドレスにビットコインを送信することにより、送信額に応じてカウンターパーティーの通貨であるXCPが貰える仕組みとなっています。1CounterpartyXXXXXXXXXXXXXXXUWLpVrという非常に規則的な文字列からなるアドレスであることから、このアドレスに対応する秘密鍵は誰も知りません。従って、アドレス内のビットコインを使用することは実質的に不可能となっており、「誰が得してお金がどこに送られたか」といった問題がなくなることも利点です。このアドレスはBlockchain.infoから確認できます。
画像:XCP Proof of Burn|Blockchain.info
XCPの作成にあたり、カウンターパーティー開発者はBurnしたビットコインの量に対してXCPを自動で分配するという仕組みをプロトコルレベルで組み込みました。これはつまり、カウンターパーティーの開発者を含め、ネットワーク参加者全員に平等にプロトコルが適用されるということです。このような方法でコインを発行・分配することで、参加者全員がいくらのビットコインがBurnされたのかを公平に確認できます。たくさんビットコインを送金した人ほどたくさんのXCPが付与されるので、透明性・公平性を保つことにカウンターパーティーは成功したのです。
このようにPoBはビットコインレイヤーをうまく活用して発明された証明方法であるということが理解できたでしょうか。有名なプルーフ・オブ・ワークのみならず、様々な合意形成アルゴリズムが存在し、ブロックチェーンの奥はとても深いです。ぜひ今後も合意形成アルゴリズムに注目してみて下さい。