分散型オラクルを実現する有力プロジェクト「Chainlink」とは?

分散型オラクルを実現する有力プロジェクト「Chainlink」とは?

はじめに

既存のブロックチェーンは、オンチェーンとオフチェーンの接続性に欠けています。スマートコントラクトは、同一ネットワーク内のデータにしかアクセスできず、オンチェーン上のデータを外部に送信することもできません。この点をフォローするのが、外部のデータソースとブロックチェーンの通信を可能にする「オラクル」(Oracle)です。

ただ、単独の機関(オラクル)が提供する外部データを参照する場合、それが単一障害点になりかねません(オラクル問題)。この課題を解決し得る有力なプロジェクトが、本記事でも紹介する「Chainlink」です。

今回はブロックチェーンにおけるオラクルの概要を紹介しつつ、非中央集権的なアプローチでオラクルを実現する「Chainlink」について解説していきます。

ブロックチェーンにおけるオラクル(Oracle)とは?

オラクルとは、スマートコントラクト(オンチェーン)と、そのトリガーとなるオフチェーンのデータソースを接続するミドルウェアです。話者や文脈によってオラクルの説明は若干異なり、オフチェーンのデータやイベントをオンチェーンに伝える役割(あるいは主体)とされる場合もあれば、外部データ自体、あるいはその仕組み全体をオラクルと呼ぶ場合もあります。

トークンのトランザクションで完結するスマートコントラクトであれば、オラクルは必要ありません。しかし、デリバティブや保険、貿易金融などの領域で使われるスマートコントラクトの場合は、オフチェーンに存在する市場データやIoTデータ、イベントデータなどがトリガーとなる場合がほとんどです。したがって、ブロックチェーンに外部データを正しく伝えるオラクルの存在が重要になります。

中央集権型オラクルと分散型オラクル

オラクルを実現するアプローチとしては、「中央集権型」と「分散型」の2種類あります。

中央集権型オラクルでは、外部データをAPIなどで取得した単独の主体がオラクルとなり、スマートコントラクトへデータを伝達します。エンタープライズ向けのブロックチェーンなどで既に使われているオラクルは、多くが中央集権型です。

中央集権型オラクルは、仕組みがシンプルである反面、データを提供する単独の主体への信用が不可欠になります。情報伝達のミスやオラクルへのハッキング(あるいは意図的な不正)、サーバーダウンなど、オラクル自体がシステムにおける単一障害点となるリスクは否定できません。

このリスクを踏まえて提案されているのが、複数のデータソースやオラクルを利用する分散型オラクルです。Chainlinkは分散型オラクルの中でも、代表的なプロジェクトのひとつだと言えるでしょう。

分散型オラクルネットワーク「Chainlink」とは?

Chainlinkは、分散型オラクルのネットワークです。当然ながら、中央集権型オラクルのような単一のノードではなく、スマートコントラクトに外部データを伝えるオラクルノードが複数に分散しています。外部データをスマートコントラクトに提供するほか、BitcoinやEthereum、Hyperledgerに対してデータを送信することも可能です。

https://chain.link/features/

なお、Chainlinkは「SmartContact」という会社によって開発されているOSSで、その開発費用はICOによって調達されています(2017年9月当時のETH/USDレートで、調達額は3,200万ドル)。

Chainlinkの仕組み

Chainlinkのエコシステムにおいて、オラクルノードは自身のコンピューティングリソースを使って処理を行い、外部データをスマートコントラクトに伝達します。分散型オラクルであるため、特定のデータについて複数のオラクルノードがデータを提供しており、それらがアルゴリズムに従って集約され、スマートコントラクトで使われるデータとなっています。

例えば、EtherとUSドルの通貨ペアのレートをスマートコントラクトに伝達する場合には、Chainlinkネットワーク上で稼働している21のオラクルノードが提供する価格データのリストから、「Quickselect」というアルゴリズムを用いて正しい回答(=Chainlinkをオラクルとして使っているブロックチェーンにおいて”正しい”とされるETH/USDの価格データ)が決定されるのです。

https://feeds.chain.link/eth-usd

Chainlinkのような分散型オラクルは、集権化を避けながら現実世界とブロックチェーンを接続するため、EthereumベースのDe-Fi(Decentralized Finance)系アプリなどでもよく使われています。

不正防止メカニズム

Chainlinkのエコシステムではネイティブトークン「LINK」が流通しており、オラクルノードを運営するオペレーターへの報酬(インセンティブ)として機能しています。なお、LINKトークンは、ERC-20トークンをベースとしつつ、データペイロードを含むトークンの転送を可能にしたERC-677トークンです。

参考:FAQ(What is the LINK token used for?)

Chainlinkには評価システムが導入されており、正しく振る舞ったオラクルノードの評価スコアが上昇していきます。アプリ開発者などのサービスプロバイダーは、外部データを利用する際の手数料としてLINKトークンをオラクルノードへと支払う必要がありますが、どのノードを利用するか選択することができます(参照するオラクルノードを自動選択する機能も提供されています)。

したがって、評価スコアが高いほど、サービスプロバイダーから指名されやすくなり、より多くの報酬を稼ぐ機会を得られるのです。なお、各ノードは稼働時間や応答までの平均時間、完了したジョブの成功率など、様々な指標によって評価されています。

また、基本的には誰でもオラクルノードになれますが、スマートコントラクトの開発者は、オラクルノードに対して情報提供の条件として、任意の金額をデポジットすることを要求可能です。オラクルノードは、提示された分のLINKトークンをデポジットしなければ、情報を提供できません。

不正行為や誤ったデータの提供、タスクを完了する前にオフラインになると、オラクルノードはペナルティとしてデポジット分が没収されてしまいます。預託機能は外部データが正しく提供されない事態を防ぐための仕組みであり、この仕組みによってオラクルノードが正しく振る舞うインセンティブが担保されているのです。

参考:Oracles: The Key to Unlocking Smart Contracts

Chainlinkをはじめとした分散型オラクルの課題

Chainlinkをはじめとした分散型オラクルの課題としては、フリーローディング(freeloading)問題が挙げられます。

Chainlinkでは、複数のオラクルノードが外部データをスマートコントラクトに伝えている訳ですが、あるオラクルが伝えたデータを他のオラクルノードが観測できる場合、他のノードはコスト無しでデータを提供できてしまうのです。フリーロードが行われると、分散型オラクルで担保されるはずのデータの多様性も失われてしまいます。

他の企業やプロジェクトとの提携も活発に行われている

いかに多くのデータプロバイダーや大手企業、OSSプロジェクトと組み、オラクルを提供するミドルウェアとしてのポジションを確立するかが価値の向上に繋がるため、Chainlinkは他の企業やプロジェクトと積極的に提携しています。

主な事例としては、Googleとの提携が挙げられるでしょう。2019年6月に発表された提携によって、Google CloudのBigQueryからデータを取得し、オンチェーンで利用できるようになりました。したがって、BigQueryのデータをBitcoinやEthereum、Hyperledgerで利用するといったハイブリットなアプリケーションが構築できるようになります。

Dapp固有のビジネスロジック
https://cloud.google.com/blog/products/data-analytics/building-hybrid-blockchain-cloud-applications-with-ethereum-and-google-cloud

参考:Building hybrid blockchain/cloud applications with Ethereum and Google Cloud

また、2020年2月には、「Polkadot」の提供するブロックチェーン開発フレームワーク「substrate」ベースのブロックチェーンとの最初の統合を完了したことが発表されています。統合によってPolkadotの開発者は、Chainlinkの分散型オラクルネットワークを利用して、外部データを安全かつ迅速に、低コストでスマートコントラクトに組み込めるようになりました。

参考:Major Milestone Achieved: Polkadot and Chainlink Integration Using Substrate

まとめ:オラクル問題の解決はスマートコントラクト発展の重要なマイルストーン

Chainlinkのような分散型オラクルは、スマートコントラクトの応用可能性を拡張するという点で重要です。フリーローディングなどの課題も残されていますが、オラクル問題がクリアになることは、ブロックチェーン業界においても重要なマイルストーンだと考えられます。

GoogleやPolkadotとの提携にも見られるように、Chainlinkはオラクルミドルウェアとしての価値を向上させていき、今後も発展していく可能性が高いです。したがって、Chainlinkはもっとも有力な分散型オラクルのプロジェクトだと言えます。

なお、Chainlinkのより詳しい情報については、公式ドキュメントを参照するほか、関連情報へのリンクがまとめられた「Awesome Chainlink」というページも有用です。

ブロックチェーンカテゴリの最新記事