サムネイルの引用元:Euler Finance
はじめに
こんにちは、デフィー伍拾伍号です。本記事では、AaveやCompoundに続く大手レンディングプロトコルであるEuler Financeの概要や具体的な仕組み、リスクについてその理解を深めます。まず本格的にEuler Financeの解説を行う前に、現在AaveやCompoundが抱える課題について、簡単に概観します。
まずAaveやCompoundの借入可能トークンもしくは担保可能トークンのリストを見れば明らかな通り、利用できるトークンはETHやWBTC、DAIなど限られたトークンのみです。一方CoingeckoやCoinmarketcapなど確認すれば、それだけで数千種類のトークンが登録されていることがわかります。このことからわかるのは市場に流通する99%のトークンは、レンディングプロトコルでは利用できないということです。
DEXであるUniswapなどがいかなるトークンでも上場、交換できるのと比較して、大きな制約があるという印象を持たれたでしょう。では、従来のレンディングで自由に担保を設定して、借入することができないのはなぜでしょうか。それは残りの99%トークンが十分な流動性を持たず、市場価格の推定が困難なことと、清算が発生した場合にそのメカニズムが十分に機能しないことが予想されるためです。AaveやCompoundなどでは、バスケット型のレンディングプールが採用されています。
つまりユーザーは、複数のトークンを担保、貸し借りすることができます。もし仮に流動性の低いトークンを担保にできた場合、例えばそのトークンの価格を操作して価格を吊り上げ、担保として扱うことで、ETHやWBTCなどいわゆるブルーチップトークンを借り入れ、持ち逃げすることができてしまいます。
もっと具体的に言えば、仮にAaveやCompoundがUniswapの価格のみをオラクルとして採用していたとしましょう。そこで著者である私は、ABCトークンを1億枚発行したとします。特段のユーテリティもないこのトークンには当然価値などありません。私はUniswapにこのUSDC/ABCトークンのペアを上場させ、いくらかの流動性を提供したとします。仮にこのABCトークンが1枚、1ドルで交換されたとすると、このトークンの市場価格は1ドルになってしまう訳です。そしてAaveが全てのトークンを担保として認めてしまうと、例えばその1億枚のうちの5000万枚を使用し、市場価格1ドルとして担保を差し入れ、Aaveのレンディングプール内から莫大な額のETHやWBTCなどを借り入れることができてしまうのです。(この例は非常に極端で、現実的ではありません。)
当然このABCトークンは価値も流動性もないので、清算人が担保を清算することなく、不良債権化してしまいます。直近ではMango MarketやAaveなどで根本的には同様の手口によるハッキング事件が発生しています。
Euler Financeの概要と仕組み
Euler Financeは、Ethereum上で稼働するレンディングプロトコルであり、あらゆるトークンを取り扱えるように設計されたパーミッションレスなレンディングプロトコルです。Euler Financeは、Euler Governance Token (EUL) と呼ばれる独自ガバナンストークンの所有者によって管理されます。
Euler Financeでは、基本的にはUniswap V3においてWETHと流動性ペアを持つすべてのトークンの取り扱いが可能となっています。ただこのままでは、上段で言及した問題が生じるので、その点に関するEuler Financeの取り組みについて、ここからは理解を深めます。Euler Financeでは、上場するトークンに応じて「階層分け」を行います。
具体的にEuler Financeでは3つの階層分けが実施されており、トークンの流動性などさまざまなリスク要素に応じてコミュニティベースの審査が行われています。また3つの階層に関してはそれぞれIsolation Tier、Cross Tier、Collateral Tierに分かれており、その概要は下記で説明します。
Isolation Tier
Isolation Tierに分類されたトークンを貸出や借入することは可能ですが、そのトークンを担保として使用することはできません。また同一のアカウントから複数のIsolation Tierトークンを借り入れることもできません。したがって例えば、Isolation TierトークンであるXYZを担保として下記で解説するCollateral TierトークンであるUSDCを借りるといったことは出来ません。また同一アカウントからCollateral TierトークンであるUSDCを担保にIsolation TierトークンであるXYZ、ABCを借りることも出来ません。これは同一アカウントから複数のIsolation Tierトークンを借りることが出来ないというルールに反するからです。
Cross Tier
Cross Tierに分類されたトークンは、そのトークンを担保として使用することはできませんが、他のトークンと一緒に同一のアカウントから借り入れることができます。したがって例えばCollateral TierトークンであるUSDCを担保にIsolation TierトークンであるXYZ、ABCを借入することが可能となります。
Collateral Tier
Collateral Tierに分類されたトークンは、そのトークンを担保として使用することができるほか他のトークンと一緒に同一のアカウントから借り入れることができます。
以上のような階層分けによって、Euler Financeではリスクの高いトークンが担保として使用されることを制限しているのです。ただ注意しなければならないのは、この仕組みは問題の根本的な解決にはなっていないことです。というのも、結局のところリスクの高いトークンを担保としては使うことは出来ません。
前編のまとめ
本記事では、パーミッションレスなレンディングであるEuler Financeについて、従来型のレンディングプロトコルの問題を理解しながら、その理解を深めてきました。Euler Financeの特色は、Uniswap V3を活用しながら、トークンの貸し借りに階層分けを導入している点です。これによりより広範なトークンの利用が可能となりました。
一方Euler Financeはパーミッションレスなレンディングを標榜していますが、全てのトークンを担保とすることが出来ない点は、これまで言及してきた通り注意が必要です。次回の後編では、Euler Financeの概要を理解したことを前提に、より細かいオラクルのルールや各種プロトコル内のファクター、最近発生したハッキング事件について、より詳しい解説を行います。以上が前編の内容です。