
編集者注: この記事は以下から引用しましたチェーンニュース (ID:chainnewscom)編集者注: この記事は以下から引用しました
チェーンニュース (ID:chainnewscom)
チェーンニュース (ID:chainnewscom)
、コンテンツディスカッション: Wu Weilong (Genaro CTO)、Li Hua、コンテンツアレンジメント: Li Hua、許可を得て Odaily によって複製されました。
他のコンピューター システムと同様、ブロックチェーンの仕事はデータを処理することです。
データのソースは 2 つあり、1 つはアカウント内の ETH の金額など、ブロックチェーン自体にあり、もう 1 つは ETH の価格など、ブロックチェーン自体にありません。ブロックチェーン システムはどのようにして外部のデータを取得するのでしょうか?これはオラクル マシン (Oracle) を介して行うこともできます。コントラクトがチェーンの外部にデータを必要とする場合、コントラクトはオラクル マシンに行ってデータを取得し、そのデータをコントラクトに伝えます。
この観点からすると、オラクルマシンは非常に重要ですが、これがなければ、ブロックチェーンの開発はチェーン上のほんの少しの資産データの使用に限定され、明らかに私たちの期待に応えられません。しかし、重要なものが必ずしもシステムの発展に影響を与える重要なものであるとは限らず、例えば酸素は人間にとって最も重要なものかもしれないが、それが私たちを悩ませる問題となることはほとんどない。
インターネットとブロックチェーンを比較してみましょう。明らかに、インターネットのデータソースはほとんど「オフネット」(オフチェーンに相当)のみであり、「オンライン」(オンチェーンに相当)のデータの問題もありますが、なぜそれが行われていないのでしょうか?オラクルの問題に遭遇しましたか?

その理由は、インターネット上のアプリケーションがネットワークの外部からデータを読み取ることができるためではなく、ブロックチェーン上のアプリケーションは、コンセンサス要件のためにオラクルを介してチェーンの外部にある一貫したデータを読み込む必要があるためです。実際、チェーン上のアプリケーションはどれも簡単にoracle 自体をオフチェーン データのインターフェイスとして使用します。重要な問題は、ユーザーがオラクルによって提供されるデータを信頼するかどうかです。
根本的な原因は、従来のインターネットが中央集権的な構造であることです。このシステムでは、ユーザーは中央集権的な組織を選択するときに、この組織が提供するデータを信頼する必要があります。データに対する信頼はセンターの信頼に移されます。」インターネット」は集中サーバー自体によって行われます。もちろん、ユーザーは信頼しないことを選択することもできます。
オラクル マシンの問題の具体例は、オラクル マシンを使用してデータをチェーンにアップロードするのは難しくないということです。単純な読み取りおよび書き込み操作により、オフチェーン データをチェーン上のコントラクトに「フィード」できますが、それは困難です。技術や仕組みを設計することで、提供するデータ自体がユーザーの信頼ニーズに応えることができます。
したがって、機能の観点から見ると、オラクル マシンはデータの問題を解決しますが、本質的には、オラクル マシンは信頼の問題を解決する必要があります。インターネットには「インターネットへのデータアクセス」という問題はありませんが、ブロックチェーンには「チェーンへのデータのアップロード」という問題があるのはこのためです。
ブロックチェーンが発展し、より多くの方向でアプリケーションを探索および実装するためにオフチェーン データを使用する必要がある段階に達すると、オラクル マシンは「信頼できるデータ」の要件を満たすことができなければなりません。したがって、「ブロックチェーンインフラストラクチャ」というテーマについての議論では、その1つとしてオラクルを選択しました。
副題
1.オラクルの設計思想
オラクルマシンの核心は信頼問題を解決することであると知れば、さまざまなオラクルマシンの設計思想の主な違いは「信頼生成メカニズム」の違いにあることが理解できます。
さまざまな信頼情報源によると、今日の主流のオラクルは次の 3 つのカテゴリに分類できます。
1. Provable (旧称 Oraclize) など、信頼できるセンターによって提供されるデータ。
2. データは、Chainlink などの分散ノードによって提供されます。
3. データは Maker's oracle などの信頼できるアライアンスによって提供されます。
さまざまなタイプの Oracle マシンの具体的な実装を紹介する前に、次の点に注意する必要があるか、考えて議論する価値があります。
オラクルマシンの役割は「本物のデータ」を提供することではなく、「信頼できるデータ」を提供することです。 「現実」は主観的な概念であり、評価が難しい概念でもありますが、「真実」の出力を保証できるツールはこの世に存在しないかもしれませんし、それをオラクルマシンに任せるのは現実的ではありません。機能。信頼性を保証するメカニズムを設計することはできませんが、信頼性を高めるメカニズムを設計することはできます。オラクルマシンが真実を提供する必要がある場合、オラクルマシンは役に立たず、ブロックチェーンも役に立たないという理論に陥りやすくなります。なぜなら、それらは真実に対する私たちの要件を実際には満たすことができないからです。
アプリケーションのシナリオが異なれば、信頼のソース/サポートも異なります。言い換えれば、ある信頼生成メカニズムによって達成される信頼が最適である一方、あるメカニズムによって達成される信頼が良好ではない、ということは考えられません。
このように、オラクル プロジェクトを観察するとき、重要な焦点は、オラクル プロジェクトがどのように信頼を生成するか、また、オラクル プロジェクトが提供する信頼がサービスを提供するアプリケーション シナリオのニーズを満たすことができるかどうかに焦点を当てることができます。
オラクル マシンの設計に関係するもう 1 つの重要な問題は、データ ソースの問題、つまりオラクル マシンのデータ プロバイダーがデータを取得する場所の問題です。単一のデータソースからデータを取得する場合と、複数のデータソースからデータを取得する場合の2種類に分けられます。
副題
2. オラクルマシンの具体的な実装

信頼のソースから始めて、さまざまなタイプのオラクルの具体的な実装を見てみましょう。
オラクル マシンはブロックチェーンの重要なインフラストラクチャですが、オラクル マシンは「魔法」のテクノロジーではありません。実際に行うのは、チェーンの外側にあるデータをチェーン上のアプリケーションに渡すことです。オラクル マシンが何であろうと、それはデータプロバイダーの実装が異なるだけです。
私たちは、時間を示す大きな時計 (データ ソース) とその町に住む盲人 (ブロックチェーン アプリケーション) のある小さな町を想像できます。盲人は時間を知りたいのですが、大きな時計が見えないので、誰かが文字盤に表示されている時間を教えてもらいます。この人が神託者です。
1. 信頼できるセンターから提供されるデータ
小さな町に 10 人の視覚障害者が住んでおり、彼らにとって時間は非常に重要である場合、神託はビジネスになる可能性があります。盲人がこの人に時間を尋ねるたびに 1 元を与えなければなりませんが、10 人の盲人が 1 日 10 回尋ねると、1 日 100 元を稼ぐことができます。
この人が自分で大時計の時刻を見て、目の見えない人に伝える場合、この方法を信頼できるセンターから提供されたデータと呼びます。この場合、視覚障害者は「この人なら騙されない」という基準でこの人を選ぶので、この人は信頼できるということを証明する必要がある。
ある種の集中型オラクルマシンの信頼保証は、Provable などの「真正性証明技術」です。 TLSNotary アルゴリズム (https://tlsnotary.org/TLSNotary.pdf) を使用しており、返された結果ごとに未変更の証明を提供できます。つまり、コントラクトに提供されたデータがデータ ソースであることを示すことができます。正しいデータある時点で。
Town Crier もこのタイプのオラクル マシンに属し、ブラック ボックスのような環境でコードを実行することによるデータの改ざんを防ぐために Intel SGX (Software Guard Extensions) アーキテクチャを使用しており、ハードウェア ベースの信頼提供方式です。
このタイプのオラクルには、TLSNotary アルゴリズム自体の欠点などの技術的問題、単一点障害の問題、データ ソースのリスク問題など、独自の弱点がありますが、低コスト、高効率などの利点もあります。 . そして本物であることが証明されています テクノロジーも常に進化しています。
彼らは中央集権的ではありますが、そのようなオラクルマシンは商用化されているため、データを提供する作業を行っているだけであり、データのセキュリティは彼ら自身の開発に直接関係しているため、彼らの不作為と邪悪な動機はまったく異なります。
テクノロジーによって信頼を提供するオラクルのほかに、トラステッド・センターであるオラクルもあります。想像してみてください。街の大時計に計時機能が追加されたらどうなるでしょうか。盲人は大時計のところに行ってボタンを押すと、大時計が直接現在時刻を教えてくれました。
ブロックチェーンが権威ある機関 (国家機関、銀行など) からの特定の種類のデータを必要とする場合、その機関がデータを提供するオラクルを構築するのは良い方法である可能性があります。現時点で重要なのは、オラクル マシンのテクノロジーではなく、データ ソース自体がインターフェイスをオープンする意思があるかどうかです。信頼の源も神託の設計ではなく、制度そのものです。
これは、オフチェーンからオンチェーンに信頼を継承する方法であり、従来の信頼生成メカニズムによってもたらされる信頼を信じています。高度に集中化されていますが、融資や商業融資のシナリオなど、少なくとも長い歴史的期間においては、積極的かつ重要な意味を持っています。ブロックチェーンは、信頼を生み出す他のすべての方法を否定するものではないことを忘れないでください。
国家機関を例にとると、このタイプのオラクルの特徴を簡単に理解できますが、このカテゴリには、特定のデータ需要に応える商用データ ソースやオラクルも存在する可能性があり、このデータは多くの場合、大量のデータであることがよくあります。特別なデータの計算結果。専門機関のみがそのようなデータ結果を与えることができます。
2. 分散ノードによって提供されるデータ
オラクルマシンは信頼性の問題を解決する必要があり、トラステッドセンターから提供されるデータを持つオラクルマシンはテクノロジーによって自らの信頼性を証明・保証するのに対し、分散ノードから提供されるデータを持つオラクルマシンは仕組みの設計によって自らの信頼性を保証する. 手紙。後者は、分散型オラクルおよび分散型オラクル ネットワークとも呼ばれることがよくあります。

町に戻りましょう。分散型オラクル ネットワークは、町のすべての人々が時刻を伝えることに参加できることを意味します。視覚障害者が時刻を尋ねると、これらの参加者/ノードは統計学者に見た時刻を伝え、統計学者は彼に最も多くの人を教えます。その時の盲人。
このオラクルマシンの設計思想がブロックチェーンの分散思想と一致していることを見つけるのは難しくないため、ブロックチェーン上のアプリケーションに新しい種類の信頼を追加することはなく、新しい種類の信頼を追加することなく、複雑さは増加しません。しかし、この方法には、多数の参加者に支払う必要があるため比較的高価であること、ネットワーク規模が必要であること、参加者の数と質がデータの信頼性に関係することなど、限界もあります。
Chainlink はこのタイプの神託です。下図に示すように、分散型オラクルノード/オラクルサービスプロバイダーは分散型データソースからデータを取得し、そのデータをChainlinkのオンチェーンアグリゲーションコントラクトに送信します(中長期戦略ではオフチェーンに変更予定)ガス料金を節約するための集計)、コントラクトはアルゴリズムを通じてデータ結果を計算し、その結果をデータを要求するブロックチェーン アプリケーションに送信します。
Chainlinkでは、オラクルサービスの購入者はまず独自のサービスレベルを指定し、次にChainlinkがノードの質と量を含めてそれらをオラクルノードと照合します。
たとえば、購入者の契約が 100,000 ドルの DeFi 市場である場合、ネットワークを形成するには 5 つのオラクル ノードを選択する必要がある場合があり、契約が 100 万ドルの市場に成長する場合は、15 のオラクル ノードを選択する必要がある場合があります。 Chainlink の仕組みは、ニーズに基づいてカスタマイズされた動的 Oracle ネットワークをユーザーに提供することであると考えることができます。
上記の専用オラクル プロジェクトに加えて、Augur などの予測市場も、その予測をブロックチェーン コントラクトの入力データとして使用できるため、分散型オラクルのクラスとして機能します。予測のすべての参加者はオラクル ノードであり、これらの参加者はデータ ソース自体でもあります。
予測市場によって提供されるオラクル機能は、感情や知識を表すデータの提供など、中央集権的な信頼に依存しないなど、そのデータソースの独自性により、他のタイプのオラクルマシンで置き換えることはできません。予測市場 将来的には、独自のオラクル アプリケーション シナリオが登場する可能性があります。しかし、オラクルネットワークを構成するノード数への依存度が高く、データ提供効率が低いという弱点も目立ちます。
3. 信頼できるアライアンスによって提供されるデータ
アプリケーションや特定のアプリケーションでオフチェーンデータの高頻度・高品質な要求があり、セキュリティが十分ではない、コストパフォーマンスが低いなど、市販のオラクルではその要求を満たせない場合十分ではありません。これらのアプリケーションには、独自の特殊ニーズ サービス用の専用のオラクル マシンが必要になる場合があります。信頼できるアライアンスによってデータを提供する方法は、このシナリオに適した設計アイデアです。
前の 2 つのタイプのオラクル マシンと比較して、このタイプのオラクル マシンの信頼構成は、システムのメカニズム設計に対する信頼、主にノード自体と組織の利害関係者のアイデンティティに起因するノードに対する信頼など、比較的複雑です。ノード自体の評判、ノードを選択する Maker と Maker 自身のメカニズムへの信頼。
アライアンス (ノードおよびノード選択メカニズム) に対する信頼は集中化の色合いを持っていますが、特定のシナリオで「コスト効率の高い」信頼を生み出すことができるのはまさにこの種の集中化です。そのため、実際のアプリケーションでは、このタイプのオラクル マシンは、これは、特にブロックチェーン業界の開発の初期段階で、商用のオラクル マシンがまだ十分に成熟していない場合に、データをチェーンにアップロードする実用的な方法です。
MakerのオラクルマシンはMakerが独占していますが、DeFi分野で信頼できるデータの需要を満たすことができるため、他のいくつかの契約もこのオラクルマシンを使用しています。また、サードパーティによって提供される信頼できるアライアンスオラクルサービスを想像することもできます。これは、分散型金融のための専門的なデータサービスを提供する、DeFi分野の信頼できる機関/ノードで構成されるオラクルネットワークです。ブロックチェーンが次のタイプの新しいアプリケーション シナリオを生成する場合、その分野の信頼できるノードで構成されるアライアンス スタイルのオラクル サービスを作成することも必要になる場合があります。
副題
3. 開発の軌跡
ブロックチェーンが発展すればするほど、オフチェーンデータの需要が高まり、オラクルの重要性がより顕著になるでしょう。しかし、上で説明したように、オラクル分野におけるより大きな可能性は、複数のフォームが共存する市場です。集中型から連合型、分散型まで、大規模から小規模までのデータ プロバイダーの粒度が重要であり、粒度の違いによってプロバイダーのさまざまな属性が決まり、それによってそれぞれの適切なサービス シナリオも決まります。
オラクルマシンは分散ノードネットワークで構成することもできますが、ブロックチェーンとオラクルマシンに対する私たちの視点とそれらを評価する基準は異なります。ブロックチェーンが行うことは探索的な作業であり、それよりも「これは問題ですか」と問うことです。オラクルマシンは機能的な作業を行いますが、それはむしろ「どうすればこの問題を解決できるか」を問うことです。