目次
グーグルによる仮想通貨Chainlink(LINK)を用いたハイブリッド・システム構築
仮想通貨Chainlink(LINK)市場の反応

Ethereum と Googleクラウドによるハイブリッド・ブロックチェーン/クラウド・アプリケーションの構築(本文)
(原題:Building hybrid blockchain/cloud applications with Ethereum and Google Cloud)
ブロックチェーンのプロトコルや技術は,最新のインターネットリソースやパブリッククラウドサービスとの統合により,採用が加速されるでしょう。
このブログ記事では,インターネット上にホストされているデータを,イミュータブルな(immutable; 不変な)パブリックブロックチェーン内部で利用できるようにするための,いくつかのアプリケーションについて説明します。
具体的には,Chainlinkオラクルスマートコントラクトを使用し,ByQueryデータをチェーン上で利用できるようにする,ということについての説明です。
可能なアプリケーションは無数にあるが,この記事では,予測市場,先物契約,取引のプライバシーなど,すぐに利用できる可能性が高いと我々が考えるいくつかの実用に焦点を当てます。
ハイブリッド・クラウド-ブロックチェーン・アプリケーション
ブロックチェーンは,共通の合意(a shared consensus)を形成するための数学的な努力に焦点を当てています。
当事者間の合意,すなわちコントラクト(contracts; 契約)を可能にするためのこのモデル[=ブロックチェーン]を拡張するためのアイデアがすぐに生まれました。
スマートコントラクトというこの概念は,計算機科学者Nick Szaboによる1997年の論文においてはじめて述べられました。
ブロックに合意を刻み込むことの初期の例は,Bitcoinブロックチェーン上のColored Coinsなどの努力によって普及しました。
*
スマートコントラクトは,ブロックチェーンの真のソースに埋め込まれているため,数ブロックの深さに達すると事実上不変(immutable)になります。
これは,参加者が暗号経済的リソースを取引相手との合意に託すことを可能にし,必要に応じて第三者による執行または仲裁を必要とせずにその契約条件が自動的に執行されることを信頼するためのメカニズムを提供します。
*
しかし,このことはどれも,根本的な問題を指し示してはいません。
すなわち,コントラクト(契約)を評価するのに用いられる変数をどこで取得するのか,という問題です。
もし,そのデータが最近追加されたチェーン上のデータから派生していないなら,信頼できる外部データソースが必要となります。
そのような信頼できる外部データソースは,オラクル(an oracle)と呼ばれます。
*
これまでの仕事で,我々は,8種類の暗号通貨のためのGoogle Cloud Public Datasets Programを通じて,パブリックブロックチェーンデータをBigQueryにおいて無料で利用できるようにしました。
この記事では,これをGoogleの暗号公開データセット(Google’s crypto public datasets)と呼ぶことにします。
あなたは,GCP(Google Cloud Platform)マーケットプレイスでこれらのデータセットの詳細とサンプルを見つけることができます。
このデータセットリソースは,登録されたブロックチェーンデータの自動解析に基づいたビジネスプロセスを開発する,多数のGCP利用者に帰結しています。
ここでいうビジネスプロセスとは,SaaSによる利益分配,ネットワーク参加者を特徴化することによってサービスの悪用を緩和すること,ソフトウェア脆弱性とマルウェアを検出するための静的分析のテクニックを使うこと,などです.
しかしながら,これらのアプリケーションは共通の属性を共有しています:すなわち,それらはすべて,チェーン外部の(off-chain)ビジネスプロセスへの入力として暗号公開データセットを使用しています。
*
対照的に,スマートコントラクトとして実装されたビジネスプロセスは,チェーン上で(on-chain)実行されるので,チェーン外部の(off-chain)インプットへのアクセスがなければ,限られた実用性しかないものです。
ループを閉じて双方向の相互運用を可能にするために,我々は,クラウドサービスに対してブロックチェーンデータをプログラム的に利用できるようにするだけでなく,スマートコントラクトに対してチェーン上でクラウドサービスをプログラム的に利用できるようにする必要があります。
*
以下では,特定のスマートコントラクトプラットフォーム(Ethereum)が,オラクルミドルウェア(Chainlink)を介して,我々の事業用クラウドデータウェアハウス(BigQuery)とどのように相互運用できるかを説明します。
このコンポーネントの組立てにより,スマートコントラクトは,オンチェーンクエリからインターネットにホストされているデータウェアハウスへ取得してきたデータに基づいて動作できます。
ハイブリッド・クラウド – ブロックチェーン・アプリケーションでは,スマートコントラクトは,クラウドリソースが複雑な操作を実行するよう,効率的に委任します。
我々の例は,そのようなアプリケーションのひとつのパターンを一般化します。
今後のブログ投稿では,このパターンの他の例を探究していく予定です。
構築方法
Ethereum Dapps(スマートコントラクトアプリケーション)は,大まかに言って,Chainlinkにデータを要求し,Chainlinkは,Google App EngineとBigQueryを使用して構築されたWebサービスからデータを取得します。
*
BigQueryからデータを取得するために,DappはChainlinkのオラクル契約を呼び出し,サービスを提供するためのパラメータ化された要求に対する支払いを含めます(たとえば,特定の時点でのガス価格)。1つ以上のChainlinkノードがこれらの呼び出しをlistenしていて,それを観察すると,要求されたジョブを実行します。外部アダプタは,Chainlinkノードの機能を認証済みAPI,ペイメントゲートウェイ,および外部ブロックチェーンに拡張するサービス指向モジュールです。この場合,Chainlinkノードは専用のApp Engine Webサービスとやり取りします。
*
GCPでは,App Engine Standard Environmentを使用してWebサービスを実装しました。我々は,App Engineを,その低コスト,高いスケーラビリティ,そしてサーバレス展開モデルのために選びました。App Engineは,パブリックの暗号通貨データセットをホストするBigQueryからデータを取得します。利用可能にしたデータは,既成のクエリからのものです。つまり,BigQueryから任意のデータをリクエストすることを許可するのではなく,パラメータ化されたクエリの結果のみを許可します。具体的には,アプリケーションは,(A)特定のEthereumブロック番号,または(B)特定の暦日のいずれかについて平均ガソリン価格を要求できます。
*
Webサービスからの応答が成功すると,Chainlinkノードは返されたデータを使用してChainlink Oracle契約を起動します。これにより,Dapp契約が起動され,ダウンストリームのDapp固有のビジネスロジックの実行が開始されます。これは以下の図に示されています。
図:アプリケーション固有のビジネスロジック
Dappの統合の詳細については,Chainlinkを介してBigQueryからデータをリクエストするためのGoogleのドキュメントを参照してください。BigQueryへの例示的なクエリは,日付別およびブロック番号別のガソリン価格で確認できます。
BigQuery Chainlinkオラクルの使用方法
このセクションでは,Google CloudとChainlinkを使用して有用なアプリケーションを構築する方法について説明します。
ユースケース1:市場予測
参加者は,将来の出来事を概して推測するために資本を割り当てます。ネットワークエコシステムであるため,その価値がべき乗則(つまり勝者全員)の分布に従うため,強い関心が寄せられている分野の1つが,スマートコントラクトプラットフォームの優位性です。どのプラットフォームが成功するか,そして成功を定量化する方法については,さまざまな意見があります。
*
暗号公開データセットを使用することで,Ethereumの将来の状態に関する最近の50万ドルの賭けのような複雑な予測でも,うまくチェーンで解決することが可能です。また,特定のDappの1,7,および30日間のアクティビティを取得することによって,Dapp使用の種類,量,最新性,および頻度を測定する方法についても説明しました。
*
これらの指標は,毎日,毎週,毎月のアクティブユーザーとして知られており,Web分析およびモバイルアプリ分析の専門家によって,Webサイトおよびアプリと成功を評価するために頻繁に使用されます。
ユースケース2:ブロックチェーンのプラットフォームリスクに対するヘッジ
分散型の金融運動は,技術的には現在のシステムよりも信頼性があり,透明であるブロックチェーン環境における既存の金融システムの再構築に成功したため,急速に普及しつつあります。
*
先物やオプションのような金融契約は,もともと企業が事業に不可欠な資源に関連するリスクを軽減/ヘッジできるようにするために開発されました。同様に,平均ガス価格などの連鎖的活動に関するデータを使用して,ガス価格が高すぎる場合に保有者に支払いを提供する単純な金融商品を作成することができます。ブロックチェーンネットワークのその他の特性,たとえばブロック時間やマイナー集中化などは,Dapp開発者が自分自身を保護したいというリスクを生み出します。暗号公開データセットから金融スマート契約に高品質のデータを取り込むことで,Dapp開発者のリスクエクスポージャーを減らすことができます。その結果,より多くの技術革新とブロックチェーンの採用が促進されます。
*
Ethereumスマートコントラクトが特定の時点でのガス価格データを取得するために BigQueryオラクルと対話する方法を説明しました。また,Dappが機能するための重要な情報である,将来のガス価格に関する担保付き契約の実装にオラクルを使用する方法を示すスマート契約オプションのスタブも実装しました。
ユースケース3:潜水艦送信を使用したEthereum全体でのコミット/公開の有効化
Ethereum自体に共通して言及されている制限の1つは,トランザクションのプライバシーの欠如です。契約 これは,分散交換(DEx)アドレスを含むフロントラントランザクションの形式を取ります。To Sink FrontrunnersのSend in the Submarinesで説明されているように,交換は多くのDeFi製品/アプリケーションの重要な要素であるため,フロントランの問題は現在のすべてのDExを悩ませ,分散型金融運動の進歩を遅らせます。
*
潜水艦送信アプローチを使用することにより,スマートコントラクトユーザーはトランザクションのプライバシを強化し,それらをフロントランしたい敵を避けることができ,DExをよりすぐに便利にします。このアプローチは,フロントランのような悪意のある行動を阻止するのに特に役立ちますが,もしオラクルなしで行われた場合,それ自身の制限もあります。
*
オラクルなしで潜水艦の送信を実行すると,ブロックチェーンの膨張が発生します。具体的には,Ethereum仮想マシンでは,チェーンの上流で最大256ブロック,つまり約1時間まで契約を確認できます。この最大範囲は,データの再ブロードキャストが必要なときに不必要な非正規化を作成するため,潜水艦送信の実用的な有用性を制限します。これとは対照的に,潜水艦送信をオラクルで実装することで,すべての履歴チェーンデータを含むように運用範囲が拡大されるため,肥大化が解消されます。
結論
ここでは,Chainlinkサービスを使用してBigQuery暗号公開データセットのデータをオンチェーンで提供する方法を説明しました。この手法を使用して非効率性を減らすことができます(潜水艦送信ユースケース)。 Ethereumスマートコントラクトとの連携により,新しいオンチェーンビジネスモデルの出現を可能にします(予測市場のユースケース)。
*
私たちのアプローチの本質は,潜在的に大量の経済的効用と少量の待ち時間とトランザクションオーバーヘッドを交換することです。具体的な例として,通常の潜水艦の送信では,ブロックチェーンに追加されたブロックでO(n)を拡大縮小するオンチェーンストレージが必要ですが,呼び出し規約がBigQueryオラクルを呼び出すためにさらに2ブロック待機する場合はO(1)に縮小できます。
*
この相互運用性のテクニックによって,開発者はスマートコントラクトプラットフォームとクラウドプラットフォームが提供するものを最大限に活用したハイブリッドアプリケーションを開発できるようになるでしょう。Google Cloud PlatformのMLサービス(AutoMLや推論 APIなど)の提供に特に興味があります。
範囲外のオンチェーンデータへの参照を許可することで,スマートコントラクトプラットフォームの運用効率が向上します。潜水艦の送信の場合,O(n)をブロックの高さに比例させるストレージ消費は,O(1)に削減されます。これには,オラクル契約と対話するための追加のトランザクション待ち時間のトレードオフコストがかかります。
コメントを残す