オラクルとは何ですか?

このやや「明白な」名前と完全に一致していないのは、ブロックチェーン オラクルがサードパーティの情報ソースであり、その唯一の機能がブロックチェーンにデータを提供してスマート コントラクトの作成を可能にすることであるということです。

基本的に、スマート コントラクトは単なる自己実行コードです。スマート コントラクトは、オラクルから受信したデータを評価し、受信した情報に基づいて実行を開始します。

例を見てみましょう。ジョンとジョンが今週土曜日にビットコインの価格に賭けたとします。チャン・サン氏は、ビットコインの価格は8,500ドル以上になると考えているが、シャオ・ヘイ氏はビットコインの価格が8,000ドル以下になると考えている。そこで、彼らはスマートコントラクト(両者が資金を送る)を設計し、実際の価格に近い価格を予測した人が資金を獲得しました。

スマート コントラクトがビットコインの価格を決定し、勝者に支払うためには、今週土曜日にオラクルを通じてビットコインの価格を問い合わせる必要があります。たとえば、ビットコイン価格データがクエリされると、土曜日のビットコイン価格が 8,600 ドルであることが返され、その条件に従ってスマート コントラクトが実行され、すべての資金が Zhang San に送金されます。

02 おみくじの種類

オラクルは、分散型ブロックチェーン ネットワークの外部で通信する方法をスマート コントラクトに提供することで、スマート コントラクトに追加機能を提供します。

ブロックチェーンオラクルには、次のようなさまざまな形式がありますが、これらに限定されません。

1. ソフトウェアオラクル

この形式のオラクルには通常、Web サイトや公共データベースなど、簡単にアクセスできるオンライン情報ソースが含まれます。通常、気温の測定値、公共交通機関の情報、さまざまな金融資産の現在の価格などの情報が提供されます。

ソフトウェア オラクルは、インターネットとの固有の相互接続性により、おそらく利用可能なオラクルの中で最も強力なタイプです。この接続により、ソフトウェア オラクルは最新の情報をスマート コントラクトに提供できるようになります。

2. ハードウェアオラクル

この形式のオラクルは通常、物理世界で発生するイベントとスマート コントラクトへのデータ送信を担当します。たとえば、サプライ チェーン管理では、RFID タグが付いたオブジェクトが特定の倉庫に到着すると、そのデータをスマート コントラクトに送信でき、ハードウェア オラクル システムがサプライ チェーン全体で商品を追跡できます。

3.オラクルを入力する

この形式の予測子には、スマート コントラクトにデータを提供するだけの機能があります。提供されるデータはスマート コントラクトの外部にあり、情報を受信した後に実行が開始されます。上記の例でビットコインの価格を提供するニュース Web サイトは、入力オラクルとして分類できます。

4. オラクルを出力する

これらのオラクルは、スマート コントラクト データを外部ソースに配信します。上記の例の場合、ジョンが勝者であると決定されると、スマート コントラクトはこの情報をウォレット プロバイダーに送信し、その残高が資金の増加を反映して自動的に更新されるようにすることができます。

この場合、スマート コントラクト自体が出力オラクルとして動作できます。

5. コンセンサスベースのオラクル

このようなオラクルの機能は、複数の情報源を照会し、それらの合意に基づいて結果を導き出すことです。たとえば、上の例では 4 つの Web サイトを使用してビットコインの価格を調べることもできます。すべての Oracle ソース (Web サイト) が同じ値を返す場合、スマート コントラクトは正常に実行できます。

03 オラクルには信頼が必要です

オラクルの利点は非常に明白ですが、オラクルには信頼が必要であるという欠点もあります。

オラクルが情報を取得してスマートコントラクトに送信するために使用するデータソースは、信頼できるとみなされる必要があります。上記の例を続けると、Zhang San がビットコイン価格ウェブサイトを何らかの方法で制御できた場合、返されるビットコイン価格を簡単に 8,600 ドルにすることができ、ゲームに勝つことができます。

したがって、オラクルによってスマート コントラクトに提供されたデータが間違っていることが判明した場合、セキュリティ上の問題が発生します。この問題に対する考えられる解決策の 1 つは、単一の Oracle データベースではなく、複数の Oracle データベースにデータをリクエストすることです。

たとえば、1 つのオラクルが 8,600 ドルのビットコイン価格を返し、他の 4 つのオラクルが 8,000 ドルの価格を返した場合、競合を解決するために追加の条件をスマート コントラクトにプログラムできます。スマート コントラクトは過半数の値のみを受け入れることを選択でき、その場合、John Doe が勝者になります。