分散型価格オラクルネットワーク、NESTとは
ブロックチェーン内外を繋ぐオラクル
ブロックチェーン技術を開発および利用する際に、様々な場面において、ブロックチェーン外(実世界)の情報をブロックチェーン上に取り込む必要がある。たとえば、実世界の価格情報をもとに清算プロセスを実行する分散型レンディングプロトコル、および実世界の選挙結果やスポーツの試合結果などに賭ける予測市場などでは、ブロックチェーン外の正確な情報なしに、プロトコルは本来の機能を発揮しない。
このような、ブロックチェーンエコシステム上で必要なブロックチェーン外の情報を収集・活用するためのサービスおよび技術は「オラクル」と呼ばれる。オラクルは、ブロックチェーン内外を繋ぐ橋渡し的役割を果たし、価格やレートから天気や地理情報に至るまで、様々な情報をブロックチェーンに反映させている。
このオラクルサービスを、中央集権的な管理組織なしに、分散的な方法で提供するための技術を開発しているプロジェクトのひとつが「NEST」だ。
NESTとは
NESTとは、イーサリアムブロックチェーン上で、分散型価格オラクルネットワーク(Distributed Price Oracle Network)開発を行うプロジェクトだ。「分散型価格オラクルネットワーク」とは、文字通り、単一障害点および単一の管理組織が存在しない分散的な方法で、ブロックチェーン外の価格情報を提供するネットワークのことだ。
NESTネットワークは、誰でも参加できる「クオテーションマイニング(Quotation Mining)」と呼ばれる独自の価格参照システム、およびネットワーク内で経済的インセンティブとして機能するNESTトークンを基盤に構築されている。
誰でも参加できるというオープンかつ分散的な性質から、DeFi(分散型金融)での幅広い利用が期待されている。
価格取得の仕組み
NESTネットワークは、「Price Caller」と呼ばれる価格を取得したいコントラクトまたはアカウント、ならびに価格を提供するマイナー(Miner)および検証者(Verifier)で構成されている。マイナーおよび検証者は、以下のフローに沿って価格を外部から取得し、その正確性を保証している。
1. クオテーションマイニング
NESTの価格取得プロセスは、まずマイナーと呼ばれるネットワーク参加者が、クオテーション(取引相手に提示する取引レート)をコントラクトに提出することから始まる。NESTプロトコルでは、このプロセスを「クオテーションマイニング」と呼んでおり、誰にでも参加できる仕組みとしている。NESTが他のオラクルプロジェクトと異なっている点の一つが、このクオテーションマイニングにおいて、対象としている資産をコントラクトにロックする必要がマイナーにはあるという点だ。
たとえばあるマイナーが、現在のETHの価格を「1ETH=1,000USDT」であると考えていると仮定する。ETH対USDTのクオテーションを提示したいマイナーは、実際にNESTプロトコル上のコントラクトに、ETHおよびUSDTペアを、自身が見積もっているクオテーションで預け入れる必要がある。つまり、1ETH=1,000USDTや、2ETH=2,000USDTをペアでコントラクト上にロックする。
この時にマイナーは、手数料として1%のETHを支払う必要がある一方、報酬としてNESTトークンを受け取ることができる。手数料として支払われたETHは、毎週NESTトークン保有者へ還元されるため、ETHを支払ったとしても、マイナーとしてプロトコルに貢献し、NESTを獲得するインセンティブが生じている。
2. 価格検証
マイナーが提示したクオテーションは、検証者と呼ばれるネットワーク参加者により検証される。検証者は、この検証段階において、マイナーが提出したクオテーションにアービトラージ取引の機会がないかを探ります。マイナー同様、誰でも検証者として、この価格検証プロセスに参加できます。
前述の例で提示された1ETH=1,000USDTが、実際のマーケット価格と異なっていた場合、その差額を活用し、検証者はアービトラージ取引を行うことができる。アービトラージ取引が行われた場合、最初にETHおよびUSDTをロックしたマイナーには、変動損失(Impermanent Loss)が生じる可能背がある。そのため、このリスクを避けるため、マイナーは可能な限り正確な価格を提示するインセンティブが働くことになる。
検証者がアービトラージ取引を行える期間は、「価格検証期間」と呼ばれている。価格検証期間中にアービトラージ取引が行われなかったクオテーションは、「有効クオテーション(Effective Quotation)」とみなされ、ブロックチェーンに記録される。
検証期間が終了次第、マイナーはいつでもロックした資産を取り出すことができる。
3. 価格チェーン
マイナーが提出したクオテーションが有効クオテーションとして承認されない場合、つまりアービトラージ取引が行われる場合、アービトラージ取引を行う検証者(検証者Aとする)は、最初にマイナーが提出したクオテーションに代わる新しいクオテーションを提出しなければならない。この際検証者Aは、マイナーが最初にロックした額よりも大きい額を、コントラクトにロックしなければならないルールとなっている。この仕組みにより、検証者の不正が防止される。
検証者Aが提示したクオテーションは、最初のマイナーによるクオテーションと同様に、一定の価格検証期間に、他の検証者(検証者B)から検証されます。検証者Bがアービトラージ取引を実行したい場合、検証者Aの時と同様に、検証者Bは、自身の資産をロックする必要がある。検証者Bがロックする額は、検証者Aよりも多くなければならない。
このようにして、有効クオテーションとみなされるまで、検証者によるクオテーション提示がチェーンのように連続して続くことになる。提出されたクオテーションが不適切な場合、何度でもそこからアービトラージ取引で利益を産むことができるため、裏を返せば、有効クオテーションと判断されたクオテーションは、アービトラージの機会がないほどに正確な価格であるといえる。
4. ブロック価格
上記のような流れで決定された価格は、ブロックチェーンに記録されていく。各ブロックに記録された価格を使用し、アルゴリズムに基づいてそのブロックでの「有効価格(Effective Price)」が決定される。最新ブロックに有効クオテーションがなかった場合、有効クオテーションが記録されている最も新しいブロックから価格が取得される。
NESTトークンとは
NESTトークンとは、NESTプロトコルで経済的インセンティブとして利用されているトークン。ERC-20規格(イーサリアムのトークン発行規格)に準拠し、イーサリアム上で発行される。最大発行数は100億NESTに設定されているが、事前発行はされておらず、マイナーによるクオテーションマイニングによってのみ発行可能なトークンである点が特徴だ。
マイナーはクオテーションを提出し、プロトコルに貢献する報酬として、NESTを受け取ることができる。クオテーション提示の際にETHで徴収される手数料は、NEST保有者へ還元される。そのため、ユーザーにはNEST保有のインセンティブが働く。
またNESTで算出された価格情報を利用したいユーザー(主にDeFiプロトコル)は、ETHで使用料を支払う必要がある。この使用料の一部は、マイナーから徴収されたETHと同様、NEST保有者へ還元される。そのため、プロトコルの利用ユーザーが増えれば増えるほど、NEST保有者に還元される手数料が増えることになる。
画像はShutterstockのライセンス許諾により使用
「仮想通貨」とは「暗号資産」のことを指します