MOC分散型オラクル

はじめに

Money on Chainは、RSKブロックチェーン内のビットコインを担保としたステーブルコインプラットフォームを提供するシステムであるため、DoCトークンの価値をrBTCで決定する方法が必要となります。そのため、ブロックチェーン内のBTC/USDペアなどの価格データが必要になります。このデータはブロックチェーンから直接アクセスできないため、Oracle(オラクル)と呼ばれる外部エージェントが必要な価格を提供する必要があります。

オラクルとはブロックチェーンと、スマートコントラクトで利用可能な現実世界のオフチェーン情報との橋渡しをする信頼できるデータ源のことです。

オラクルサービスは複数の暗号通貨取引所から価格ペアデータを照会し、ブロックチェーン上のスマートコントラクトに送信し、他のスマートコントラクトが使用できるようにします。

Money on Chainオラクルシステムは分散化への道の重要な側面であり、ステークホルダーがオラクルを運営し、価格フィード公開のためのコンセンサスプロトコルに参加する可能性を生み出します。

Money on Chainのオラクルシステムのアーキテクチャは、以下の点を考慮しています。

  • 分散型システム:オラクルは互いに競争し、相手の価格情報をチェックして、正確なデータを提供しなければなりません。これにより、十分な冗長性を持った高品質の価格フィードを提供するオラクルのネットワークが確立され、価格フィードが常に利用可能であることを保証するフォールバック・メカニズムが提供されています。また、少数のグループの悪意ある行動からシステムを保護することができます。
  • オフチェーン・コンセンサス:オラクル間のコンセンサスはオフチェーンで達成されます。これにより、コストが大幅に削減され、高頻度での価格フィードの公開が可能となります。
  • 経済的インセンティブ:価格フィードの実行と公開は、オラクルのオーナーに利益をもたらします。なぜなら、オラクルは選択されるために最低量のMoCトークンを賭けなければならないからです。オラクルは賭け金とオラクルであることの対価としてMoCトークンを獲得します。

オラクル

オラクルは様々な暗号通貨取引所から取得し、選択した価格ペア(例えばrBTC/USD)を報告します。同じインフラを複数の価格ペアに簡単に拡張できます。

誰でもオラクルになることができますが、そのためにはステークホルダーは最低25万MoCトークンのステークを持ち、他のオラクルと競争して価格発行者として選ばれる必要があります。 しかし、ステークホルダーの出資額に応じて、N個(現在は10個)のオラクルだけがコンセンサスの一部として選択されます。この機能はコミュニティにとって非常に重要です。なぜならば、システムが誠実なオークションを行うことができるからです。

オラクルはMoCトークンに対してMoC報酬プログラムから収入を得ており、これに加えて価格を公開することでも報酬を得ています。これにより、オラクルの運営にかかる費用を補い、さらに利回りを支払うことができます。

ラウンド

オラクルのシステムはラウンドと呼ばれる30日間の期間で、オラクルの報酬の会計が決定されます。

新しいラウンドが開始されると、プロトコルは前のラウンドで蓄積された報酬を分配し、グローバル報酬カウンターをゼロに設定します。各ラウンドではロックされた出資金と当月の価格公表が計上されます。つまり、各ラウンドでは次のデータが保存されます。より多くの出資金を持つN(10)個のオラクルのリストが参加するように選択され、彼らは価格を公表して報酬を獲得することができます。ラウンドが終了すると、報酬はラウンド中に行われた数に比例して、各オラクルのアカウントに直接振り込まれます。

登録

オラクルは、公開アドレスとサーバーのURLをRSKネットワークに公開して登録する必要があります。オラクルはまた、興味のあるコインペアごとに登録する必要があります。そうすれば、次回の価格公開の際に選考の対象となります。

ロックされた資金を撤回したいオラクルは、まず、すべてのコインペアの読取を解除して、1ラウンドの間活動を停止しなければなりません。登録解除をせずに出金した場合、オラクルは現在のラウンドで獲得したポイントを失うというペナルティを受け、ラウンド終了時に報酬を受け取ることができません。退会に成功すると、ステーカーと同じ退会ルールがオラクルにも適用されます。

公開された価格フィードのコンセンサス

オラクルは、rBTC/USD価格ペアなどの正しい価格フィードに関するコンセンサスを見つける必要があります。これは、N人(現在は10人)のオラクルのうち、最も多くのステークをロックした者が参加するオフチェーンコンセンサスによって達成されます。

オラクルの資金はすべての価格ペアでカウントされますが、オラクルが参加するためには価格ペアごとにサブスクライブする必要があります。そしてラウンド中、提案者の選出とコンセンサスは以下のように機能します。

  • 選挙を行う。価格ペアの提案は一度に1つのオラクルによって公開され、その都度、N個のオラクルの中から最大の出資額を持つオラクルが選ばれ、公開者となります。オラクルの選出は、最後に公開された価格を含むブロックのハッシュを「ランダムシード」として用いて行われる。パブリッシャーに選ばれる確率は、オラクルがロックしているステークの量で加重されます。一度公表された後、別のブロックで新たに公表されると、シードが変更され、新たな発行者が選ばれます。
  • コンセンサス 価格ペアは、選ばれたオラクルによって公開されなければならないだけでなく、公開されたデータはこのラウンドに参加している他のオラクルによってN/2(現在は5)の共同署名がなされなければなりません。この「コンセンサス」は価格データを他のオラクルに送信して署名してもらい、それをブロックチェーン上のスマートコントラクトに公開することで、オフチェーンで行われます。コントラクトは、残りのオラクルから必要な定足数を得ていることを検証し、公開する順番が回ってきたオラクルによって署名されます。

各パブリケーションにおいて、1つのオラクルのみが成功します(ブロックチェーンが受け入れるトランザクションは1つだけです)。パブリケーションが成功すると、前回のパブリケーションのブロックハッシュが変更され、新しいコンセンサスが開始されます。

オラクルシステムには、さらに重要な特性が反映されています。

  • 頻度:選択されたオラクルは、いつでも価格を送信できます。リファレンス実装では、価格の変化がオラクルサーバーで設定できる一定の変動(デルタ)よりも大きい場合にのみ送信します。
  • フォールバック・メカニズム:何らかの理由(技術的な問題、停電など)でオラクルがオフラインになって表示されない場合、それに代わるフォールバック・メカニズムがあります。予備のオラクルは、公開オラクルと同じ方法で選出されます。選出プロセスでは、選出されたオラクルのリストをソートします。[selected, fallback1, fallback2, etc]。フォールバック・オラクルは、価格変動がデルタよりも大きくなった後に、いくつかのブロックMを送信することが認められている。システムには価格変更後のブロック数と価格ペアを公開することを許可されたオラクルの数を設定することができます。例えば、価格変更後Mブロックは、2つの予備のオラクルが発行を許可され、価格変更後M+2ブロックは、4つのオラクルが許可される、などです。このようにして、システムは障害に対してより早く対応することができます。

報酬

ステイクしてる人と同じように、MOCプロトコルからの手数料や、オラクルが提供したデータを他の第三者に販売することで得られたMoCトークンのうち、一定の割合がオラクルに分配されます。この収入源は、1ヶ月間、つまり1ラウンドの間に蓄積され、各コインペアの価格モジュールに分配されます。また、オラクルは、MoC Staking Rewardsプログラムからステイカーとしての報酬を受け取ります。

報酬の分配:価格ペアを公開するたびに、公開したオラクルは1ポイント獲得できます。公開できる頻度はオラクルの資金に比例します。つまり、資金が大きいほど、オラクルはより頻繁に公開できるように選ばれます。ラウンドが終了すると、オラクルは集めたポイントに比例した支払いを受けます。新しいラウンドが始まると、利益はオラクルのオーナーの口座に直接振り込まれます。価格ペアごとのオラクルの報酬は、以下の計算式で算出されます。

オラクルがラウンドの途中で資金の一部を引き出し、その額が必要最低額に満たない場合や、ラウンド外でより多くの資金を持ったオラクルが参加を待っていた場合、そのオラクルは順位を失い、同時に蓄積されたポイントとそれに対応する報酬も失うことになります。一方、現在のラウンドで選ばれていないオラクルが賭け金を追加し、すでに選ばれているオラクルを上回った場合、そのオラクルは次のラウンドに参加するのを待たなければなりません。

オラクルは、正確な価格情報を提供するだけでなく、分散化された方法でそれを行うことで、プラットフォームがカウンターパーティーのリスクを負わないことを可能にする、Money on Chainプロトコルにとって極めて重要な役割を果たします。


原文:https://moneyonchain.com/blog/moc-decentralized-oracles/?utm_source=twitter&utm_medium=organic&utm_campaign=educate&utm_content=oracles By moneyonchain