フラッシュローンと改ざん防止オラクルの重要性

Chainlink Japan
Chainlink Community
Jan 25, 2021

本記事はChainlinkオフィシャルブログに公開された“Flash Loans and the Importance of Tamper-Proof Oracles”の和訳です。

Chainlink公式より許可をいただいた上で記事を翻訳・公開しています。

イールドファーミングの概念と同様に、フラッシュローンは最近分散型金融(DeFi)のエコシステムに登場した、刺激的で強力な新しい流動性メカニズムです。フラッシュローンは借りた流動性の量に少額の手数料を加えて、同じトランザクション内でプールに返却される限り、前もっての担保なしでユーザーがオンチェーンの流動性プールから資産を借りることを可能にします。この革新的なデザインは、基礎となる流動性プールの完全かつ継続的な支払能力を確保しながら、様々なユースケースですべてのユーザーに資本へのアクセスを増加させます。

短期間(1回の取引のスパン)であれば、フラッシュローンは誰でも非常に優れた資本を持つアクターにし、数億ドルの流動性へのアクセスを提供することができます。これは、裁定取引、担保スワップ、レバレッジをかけたポジションの作成のためのユニークな機会を生み出しますが、特に分散化とセキュリティの程度が異なるプロトコルの新興エコシステムにとっては、ある種のリスクも生み出します。これらのリスクは、スマートコントラクトの開発者が理解し、ユーザーのためにより堅牢なアプリケーションを構築できるようにしなければなりません。

フラッシュローンとプライスオラクル攻撃

DeFiスマートコントラクトのデータ品質に関する前回の記事で説明したように、単一のソースから価格を取得するプロトコルは、1回の大規模な取引で市場を操作することができる多額の資金を持つ悪意のある行為者によって容易に悪用される可能性があります。フラッシュローンは、世界中の誰にでも、いつでも瞬時に大きな流動性を提供できるため、DeFiプロトコルへの攻撃の資金源として使用されることが多くなっています。しかし、ここでは重要な違いがあります。フラッシュローンは攻撃を実行するための資金を提供するだけであり、手元にある本当の問題は、十分な市場カバレッジを提供しない中央集権的なプライスオラクルです。

方法論や範囲は様々ですが、フラッシュローンを利用した攻撃の最も一般的な形式は、ブロックチェーンベースの分散型取引所(DEX)をプロトコルの唯一のプライスオラクルとして使用しているプロトコルを操作するように設計されています。DEXベースのプライスフィードを使用したDeFiの貸し借りプロトコルに対するフラッシュローンを利用した攻撃の例は、次のような順序で行われています。

  1. フラッシュローンをサポートするプロトコルからトークンAを大量に借りる
  2. DEXでトークンAとトークンBを交換(トークンAの価格を下げ、DEXでトークンBの価格を上げる
  3. 購入したトークンBを担保として、上記DEXを唯一のプライスフィードとして使用するDeFiプロトコルに預け、操作された価格設定を使用して、通常可能なはずのトークンAをより多く借りることができます。
  4. 元のフラッシュローンを完全に返済するために借りたトークンAの一部を使用して、プロトコルの操作された価格フィードから利益を生成し、残りのトークンを保持します。
  5. DEX上のトークンAとBの価格が市場全体の真の価格に戻るように裁定されると、DeFiプロトコルは担保不足のポジション(担保よりも価値のある負債)を残し、無実のユーザーを直接傷つけることになります。
フラッシュローンプライスオラクル攻撃時に悪意のある行為者が取る手順

攻撃者はフラッシュローンを開設し、DeFiプロトコルが唯一のプライスオラクルとして使用しているオンチェーン取引所を操作することができたため、担保として使用されているトークンの報告値を上げ、負債として使用されているトークンの報告値を下げることができました。これにより、攻撃者は本来できるはずの資金よりも多くの資金を借りることができ、担保の価値が負債よりも低くなったために、完全に清算できない有害なポジションを作り出しました。この攻撃は単一の取引内でも発生しますが、複数の取引をまたいで何度も繰り返され、被害をさらに拡大させることができます。

プライスフィードとして単一のオンチェーン取引所を使用すると、1 つの取引所のみの取引活動を表すため、非常に限られたマーケットカバレッジを提供します。これは、ボリュームが異なる取引所に移動したり、十分な資本を持つアクターが一時的にその取引所を操作した場合、それに依存しているプロトコルは、価格ポイントの操作に対して脆弱なままになります。特に流動性の低い暗号通貨資産は、DeFi内で担保として使用されることが多くなっています。

良いニュースとしてはこのスタイルの攻撃は、適切なマーケットカバレッジを持つ分散型オラクルソリューションで完全に防ぐことができるということです。

Chainlinkの分散化されたオラクルがプライスフィードへの攻撃を防ぐ方法

市場を完全にカバーするために、Chainlinkプライスフィードは単一のソースからではなく、複数の独立したデータプロバイダー、特にCoinGecko、Amberdata、BraveNewCoinなどの専門的なデータアグリゲーターからプライスデータを集約するオラクルの分散化されたネットワークを利用しています。これらのデータアグリゲーターは、時間をかけてテストされた高度に洗練されたアルゴリズムを使用して、取引所間の取引量、流動性、時間差を考慮に入れながら、すべての取引環境を追跡しています。

フラッシュローンは単一のトランザクション内にのみ存在し、オンチェーンのDEXのみを操作できるため、更新が非同期的に複数のトランザクションにわたって行われるChainlinkプライスフィードには影響を与えません。さらにオンチェーンDEXと従来の中央集権型取引所の両方からデータをフェッチして集約することで、単一の取引所での市場操作の問題は軽減されます。

フラッシュローンに関連したプライスオラクル攻撃を防ぐために、スマートコントラクトの開発者は、操作可能なDEX価格フィードを避け、代わりにChainlinkプライスフィードをコントラクトの市場データソースとして利用することを強くお勧めします。これによりDeFiプロトコルは市場全体の取引活動を反映し、フラッシュローンによる影響を受けない集約されたプライスポイントを常に受け取ることができ、プライスオラクル攻撃のベクターの全体的な範疇を軽減することができます。

フラッシュローンはChainlinkのプライスフィードには効果がありません

結論

フラッシュローンは新しいアプリケーションを解き放ち、市場参加者のニューウェーブのための参入障壁を下げている、DeFiの洗練された新しい金融プリミティブです。フラッシュローンは、DeFiプロトコルへの攻撃資金として利用されてきましたが、単に開発者が利用できる金融ツールであり、提供する価値は非常に現実的なものであるため、完全に否定すべきではありません。フラッシュローンは脆弱性を生み出すものではなく、その代わりに既に存在していた脆弱性を明らかにするものであり、最も一般的なのは、単一のオンチェーン取引所に依存するプライスオラクル設計の欠陥です。

Chainlinkネットワークとその分散化されたオラクルネットワークは、特に他の取引の連鎖を誘発するリアルタイムの市場データを調達するという重要な機能において、DeFiプロトコルの改ざん防止性が桁違いに高いことを保証しています。セキュリティファーストのアプローチによってのみDeFiプロトコルは新たなリスクに適応し、エンドユーザーの信頼を維持し、DeFiにロックされている数十億から数兆へと移行するための持続的なスケールを実現することができます。

開発者の方で、アプリケーションを素早くChainlink Price Reference Dataに接続したい場合は、開発者向けのドキュメントをご覧になり、Discordで技術的な議論に参加してください。統合についてもっと詳しく話し合うために電話をしたい場合はこちらをクリックしてください。

Website | Newsletter | Twitter | Reddit | YouTube | Telegram | Events | GitHub |

Chainlink日本語リソース

--

--