なるほど!をお届けする仮想通貨情報メディア

  • BTCBTC

    1,129,153円

  • ETHETH

    23,748円

  • ETCETC

    629.77円

  • LTCLTC

    10,534円

  • BCHBCH

    32,805円

  • XRPXRP

    34.409円

  • LSKLSK

    0.0000円

  • XEMXEM

    7.1831円

Oracle(オラクル)とは?スマートコントラクト時代を担う技術を徹底解説

時価総額2位のイーサリアムに導入されていることで有名なスマートコントラクト。契約行動をプログラム化し自動で行おうとする試みで、今後なくてはならない重要な技術になっていくと考えられています。イーサリアムがここまで時価総額を伸ばしたのもスマートコントラクトへの評価と需要が高かったからかもしれません。そんなスマートコントラクトですが、今後同技術を活用したブロックチェーンネットワークを実用化することを考えると、技術的に解決すべき問題もあります。そんな課題を解決する糸口となるのがOracle(オラクル)と呼ばれる技術です。今回は、オラクルについてその概要や事例等を紹介していきます。

そもそもオラクルとは何か

これから先、スマートコントラクトを活用したブロックチェーンネットワークは急激に拡大していくことが予想されます。さまざまな産業分野にてブロックチェーンが用いられるようになると、その産業における固有のデータをブロックチェーン内部に引っ張ってくることが必要になります。このような、ブロックチェーンの外部に存在するデータを内部に引っ張ってきてくれるシステムがオラクル(Oracle)です。オラクルがブロックチェーンと現実社会の橋渡しとなることでブロックチェーンを柔軟に活用することができるようになるのです。なお、データベースのオラクルとは別物なので注意してください。

つまり、オラクルが発達するとより多くの分野においてスマートコントラクトの導入が加速することが予想されます。たとえばサプライチェーン、ヘルスケア、農業、音楽、飛行機の予約など、様々な分野でブロックチェーン技術が活用されより便利になっていくかもしれないのです。

オラクルは先述の通りブロックチェーン外部に存在するデータを内部に引っ張ってくるシステムですが、これはどのような時に必要になるのでしょうか。分散型予測市場アプリケーションを例にとって解説します。例えば「サッカーワールドカップでチームAとチームBのどちらが勝つのか」を予測する市場において、サッカー試合のデータはブロックチェーンネットワーク内部には存在しないので、サッカーの試合に関する外部データが不可欠です。スマートコントラクトの実行・合意形成などはブロックチェーンネットワーク内部で行う必要があるため、このサッカーの試合に関する外部データはブロックチェーン内部に引っ張ってこなくてはなりません。オラクルシステムはこういったケースで本領を発揮します。データをブロックチェーン内部に引っ張ってくることで、ネットワーク内部には存在しない外部データについてスマートコントラクトを実行することができるようになるのです

オラクルが直面する課題

外部データの取得が目的である、とだけ聞くと、単にAPIで参照するだけで簡単に行うことができるようにも感じられます。しかしながら、ブロックチェーンの分散型ネットワークの場合はその難易度がぐっと上がってしまうのです。なぜなら、参照している外部データが本当に正しいのかを判断することが非常に難しいからです。オラクルシステムが参照している情報源が本当に正しい情報源なのか、正しい情報ソースを参照できていたとしてもその情報自体が正しいのか。また、情報自体が正しい場合であっても、その正しい情報から正しい外部データを生成しネットワーク内部で参照できているのかはどのように判断すべきなのでしょうか。さらにオラクルによって提供された情報が正しいということを分散型ネットワークでどうやって正しい情報であると判断し、分散型ネットワークで合意形成を行えばいいのでしょうか。オラクルが実際に活用されていくためにはこのような課題をクリアしていく必要があります。

オラクルは大きく分けて2種類!集中型オラクルと分散型オラクル

外部データを取得するシステムであるオラクルですが、2種類に分類することができます。それが、集中型オラクル(Centralized oracle)分散型オラクル(Decentralized oracle)です。集中型オラクルは、オラクルがひとつのシステムによって管理される一方、分散型オラクルではネットワーク全体で分散して管理していきます。集中型オラクルであれば、特定の主体によって管理されるので非常に効率的に外部データを参照することができます。管理主体が責任をもって外部データの正しさを担保することができるので、ネットワーク参加者はその集中型オラクルを正当であると「信頼」するだけで良いのです。実際、現存するオラクルは99%以上が集中型であり、今時点で稼働しているのも集中型オラクルのみです。しかし、簡単に見える集中型オラクルには問題があります。それは、先述の通りネットワークの参加者がその集中型オラクルを信頼する必要があるということです。そのオラクルが絶対に正しいデータを用いており、不具合を起こすことやミスが起こることはあり得ないと信頼する必要があるのです。

従来のシステムでは特定の管理主体を信頼することは当たり前に行われていましたが、昨今はブロックチェーン技術に代表されるように分散型のネットワークの意義が見直され、徐々にシフトされつつあります。せっかくネットワークが分散化に成功してもそれに用いられるオラクルシステムが集中型である場合、このネットワーク全体は真に分散化しているとは言えないと考えられます。従って、今後は分散型オラクルの開発・実用化が急務になってきます。

分散型オラクル開発の難しさ

「集中型VS分散型」の構図は各仮想通貨や仮想通貨取引所を議論する上でもしばしば聞かれる問題ですが、分散型オラクルの実現は分散型コインや分散型取引所の実現よりもはるかに難しいと考えられています。なぜなら、分散型オラクルネットワークを開発・維持することに対するインセンティブを設定するのが非常に難しいからです。

たとえば分散型の取引所の開発・維持であれば、取引手数料の一部を功績のあった者に与えることにすれば開発者側にも関与するメリットがあります。しかし、分散型オラクルの場合は取引が発生しない以上手数料が発生せず、開発者に与えられるインセンティブの財源がどこにもないのです

このような課題に対して、ChainLinkは分散型オラクルを維持するためのChainLinkネットワークを構成し、LINKトークンの経済圏を作ることでインセンティブを与えようと画策しています。また、その他の問題点としては外部データの信憑性を確認、合意形成するのにどうしても時間がかかってしまうという課題もあります。

オラクルのプロジェクト

ここまででオラクルの概要やその種類、開発における課題などを見てきました。オラクルの現状についてかなり理解を深めていただいたところで、実際にオラクルの開発がどの程度進んでおりどのような特徴あるプロジェクトがあるのか紹介していきたいと思います。

Oraclize(オラクライズ)

現存する中で一番メジャーなオラクルシステムオラクライズです。オラクライズでは信憑性の証明(authenticity proof)という暗号学的なアルゴリズムに基いて外部データの信憑性を担保します。WEBにおける情報の信憑性を証明するための複数の現存するアルゴリズムを組み合わせることで、正しいデータの情報源から正しいデータをネットワークに送れるようにアレンジしています。

以前まで、信憑性の証明はオフチェーンでのみ可能となっていました。証明プロセスが複雑すぎて手数料が高額になってしまうことが原因です。しかし、オラクルにおいてはオフチェーンでの証明は問題になってしまいます。なぜなら、外部データがスマートコントラクトに届けられた後にデータの信ぴょう性を確認するというプロセス順序になってしまうからです。あるべき姿は、スマートコントラクトにデータが届けられる前にデータの信ぴょう性が確認されるという順序です。つまり、順序が逆になってしまうオフチェーンでの証明はセキュリティ面で問題があるのです。

オラクライズでは、オンチェーンでの証明が可能になるように改善を試みています。具体的には、複雑なauthenticity proofの結果をProof Shieldという方法を用いることでシンプルな形で出力する方法を取ろうとしています。これによって、オンチェーンで外部データの正当性を確認でき、その検証結果に基き正しいデータをネットワークにブロードキャストし、正しくないデータを廃棄できるようになります。

Gnosis

Gnosisはイーサリアムブロックチェーンをベースとして、分散型予測市場のプラットフォームを目指しているプロジェクトです。予測市場ではオラクルシステムが重要なので、Gnosisでも特徴的なオラクルを導入しています。

Gnosisでは複数の異なるオラクルを導入しており、それらの組み合わせで外部データの信憑性を判断しデータ取得の効率性を高めていこうとしています。

ゴールとしてはオンチェーンに関する情報の取得に特化したオンチェーンオラクル、集中型オラクル、分散型オラクルを組み合わせてハイブリッドに機能させようとしめいます。但し、現状は集中型のみが利用されています。上述のオラクライズを始めとする外部オラクルシステムをも積極的に導入しようとしており、これによってハイブリッドオラクルの機能を高めようと目論んでいます。

ハイブリッドオラクルを目指すGnosisですが、その中でも将来性が期待される分散型オラクルについて仕組みを紹介します、Gnosisの分散型オラクルは、ネットワークでの投票により分散型を実現しようとしています。万一オラクルが提示する内容に異議があれば、結果が提示されてから12時間以内に計100ETH以上の投票を集めることでオラクルの投票プロセスに移行可能です。ユーザーは自分が正しいと思った結果に投票でき、一方の結果が多い状態が24時間以上続くとその結果が採用されます。採用された結果に投票したユーザーは報酬を受け取ります。

しかしこのシステムは、沢山の投票権を持つ人が攻撃を仕掛ければ誤った結果がオラクルのデータに反映されてしまうという脆弱性を持ちます。さらに、攻撃者は投票に勝つことで掛け金を受け取ることができるので、この投票システム下では攻撃することにインセンティブが与えられることになってしまいます。

また、通常のユーザーにとっても正しい答えに投票するより多数派に乗った方が儲かるという問題点があります。現時点では、Gnosisは集中型オラクルを採用しています。現状の予測市場は外部データを簡単に取得できる市場なので大きな不具合は生じていません。しかし、今後分散型オラクルが求められるようなシーンは必ず訪れると思われます。

まとめ:オラクルは迫り来るスマートコントラクト時代を担う技術

いかがでしたでしょうか。 オラクルの概要や抱えている問題点、また最新の事例について紹介してきました。オラクルは問題も多くあるものの将来スマートコントラクトが活用されるようになるためには必要不可欠な技術に違いありません。今後もオラクル関連のニュースから目が離せません!最後までお読み頂きありがとうございました。