作者:Shew ,極客web3
注:原文整理自極客web3官推上的一條2000余字的,關(guān)于OEV問題及其解決方案的推文,由于該話題特別有趣,我們將其整理成短文,供大家參考。
簡(jiǎn)單來(lái)說,當(dāng)預(yù)言機(jī)運(yùn)行者監(jiān)控到鏈下與鏈上的價(jià)格數(shù)據(jù)存在偏差時(shí),運(yùn)行者可以發(fā)起交易,更新鏈上預(yù)言機(jī)感知到的價(jià)格。當(dāng)一筆可以修改預(yù)言機(jī)價(jià)格的交易發(fā)生時(shí),這往往意味著 MEV 的產(chǎn)生,我們稱這種依賴于預(yù)言機(jī)的 MEV 為 OEV (oracle extractable value)。
OEV的存在,在不同利益相關(guān)者之間產(chǎn)生了價(jià)值再分配,而API3則號(hào)稱使用拍賣機(jī)制,使OEV再分配盡可能合理(通過市場(chǎng)機(jī)制來(lái)分配),并設(shè)法帶來(lái)更快、成本更低的價(jià)格更新。
一般認(rèn)為,OEV的產(chǎn)生與提取,是MEV問題的一個(gè)子集,我們?cè)诖撕?jiǎn)單介紹OEV 是如何產(chǎn)生的,其核心原因在于以下兩方面:
1. DeFi 系統(tǒng)使用預(yù)言機(jī)獲取價(jià)格,并基于預(yù)言機(jī)價(jià)格,執(zhí)行清算等邏輯。而資產(chǎn)清算往往意味著有大額的利潤(rùn)空間。
2. 預(yù)言機(jī)更新存在細(xì)粒度問題,只有鏈下與鏈上價(jià)格存在一定偏差后,才會(huì)更新鏈上數(shù)據(jù),且鏈上數(shù)據(jù)更新會(huì)以一筆交易的形式呈現(xiàn)。
OEV 的產(chǎn)生,意味著流動(dòng)性提供者的價(jià)值損失,一些數(shù)據(jù)顯示,基于以上兩方面,OEV 存在以下三種產(chǎn)生途徑:
Frontrunning,即搶先交易。當(dāng) OEV 搜索者監(jiān)控到,交易池內(nèi)出現(xiàn)一筆預(yù)言機(jī)價(jià)格更新交易時(shí),其可以在此交易前,插入自己的交易,以獲取價(jià)格更新帶來(lái)的收益。這是最傳統(tǒng)的搶跑交易。
Arbitrage,即套利。由于預(yù)言機(jī)鏈上價(jià)格更新,取決于鏈上價(jià)格與鏈下價(jià)格之間的差額,這意味著預(yù)言機(jī)報(bào)價(jià)可能與其他系統(tǒng)報(bào)價(jià)不一致,此時(shí)就產(chǎn)生套利空間
Liquidations,即清算。預(yù)言機(jī)的價(jià)格更新,會(huì)觸發(fā)一系列借貸頭寸的清算,清算者可以在清算過程中內(nèi)獲取大量的清算收益。
通過 Frontrunning 和 Arbitrage 方式提取的收益,實(shí)際上是流動(dòng)性提供者的損失。而對(duì)于 Liquidations 清算獲取的收益,一方面影響了借款人的利益,因?yàn)榻杩钊藭?huì)在清算過程中損失相當(dāng)部分的資金,而對(duì)于貸款人,由于預(yù)言機(jī)給出的報(bào)價(jià)存在延遲,其最終收到的抵押品價(jià)值可能低于預(yù)期。所以無(wú)論如何,OEV的提取都會(huì)給相應(yīng)的Defi協(xié)議帶來(lái)托管財(cái)產(chǎn)上的損失。
對(duì)于 OEV 的提取,搜索者會(huì)通過監(jiān)控內(nèi)存池內(nèi)的“預(yù)言機(jī)數(shù)據(jù)更新指令”,通過 MEV 基礎(chǔ)設(shè)施,將預(yù)言機(jī)數(shù)據(jù)的更新交易指令,與自己發(fā)起的交易指令捆綁在一起,最終執(zhí)行以獲取收益。
當(dāng)然,對(duì)于套利和清算交易,搜索者只需要監(jiān)控鏈上價(jià)格與鏈下價(jià)格的偏差,最終通過 MEV 基礎(chǔ)設(shè)施,確保自己發(fā)起的交易先上鏈執(zhí)行即可。
無(wú)論搜索者使用的那種流程,我們可以看到 OEV 的收益被分配給了 MEV 基礎(chǔ)設(shè)施和 OEV 的搜索者,而“被捕獲” OEV 價(jià)值的協(xié)議,并沒有獲取其應(yīng)有的收益。(根據(jù)某些數(shù)據(jù),OEV 問題此前曾導(dǎo)致GMX 平臺(tái)的利潤(rùn)被抽走差不多10%)
為了解決這個(gè)問題,貢獻(xiàn)了大量OEV價(jià)值、身為鏈上衍生品交易平臺(tái)的GMX采用了一種簡(jiǎn)單粗暴的方式:讓自己指定的一些人來(lái)捕獲OEV價(jià)值,然后把這些OEV價(jià)值盡可能返還給GMX平臺(tái)。

對(duì)此,GMX 引入了Rook和白名單。簡(jiǎn)單來(lái)說,GMX 的預(yù)言機(jī)更新通過 Rook 執(zhí)行,而Rook會(huì)基于目前的市場(chǎng)情況,進(jìn)行 OEV 的提取操作以獲取市場(chǎng)內(nèi)的 OEV。這些 OEV 的 80% 會(huì)被返換給 GMX 協(xié)議。
總結(jié)下來(lái)就是,GMX 通過白名單,賦予 Rook 們更新預(yù)言機(jī)的權(quán)利,通過Rook 提取OEV以避免被其他搜索者提取OEV,同時(shí)將 OEV 的 80% 返還給 GMX 系統(tǒng)。這個(gè)套路其實(shí)有點(diǎn)簡(jiǎn)單粗暴。
在介紹最近熱議的API3提出的OEV 拍賣方案前,我們先簡(jiǎn)單介紹下API3的預(yù)言機(jī)運(yùn)行原理。API3 的核心被稱為 Airnode 協(xié)議。該協(xié)議允許 API 服務(wù)商直接將自己的 Web2 的 API 包裝為 Web3 的預(yù)言機(jī)。
簡(jiǎn)單來(lái)說,Airnode 協(xié)議要求 API 服務(wù)商使用自己的私鑰,對(duì)每一個(gè)發(fā)布數(shù)據(jù)進(jìn)行簽名。用戶可以隨時(shí)向Airnode 協(xié)議的服務(wù)商,獲取最新的數(shù)據(jù)及其簽名,然后可以將其發(fā)布到鏈上預(yù)言機(jī)內(nèi),以更新數(shù)據(jù)。

這對(duì)于 API 服務(wù)商而言,將其 Web2 API 服務(wù)包裝為區(qū)塊鏈預(yù)言機(jī),實(shí)際上只需要增加一個(gè)私鑰簽名環(huán)節(jié),API 服務(wù)商的大量基礎(chǔ)設(shè)施可以直接復(fù)用,這大大降低了 API 服務(wù)商進(jìn)入預(yù)言機(jī)領(lǐng)域的門檻。
基于 Airnode 協(xié)議,API3 使用了一種類似 flashbot 的但針對(duì)于預(yù)言機(jī)系統(tǒng)的拍賣方案,以實(shí)現(xiàn) OEV 的合理分配,同時(shí)也可以進(jìn)一步提高鏈上預(yù)言機(jī)的更新頻率。下圖展示了 API3 的 OEV 方案:

API3允許任何人通過競(jìng)拍,主動(dòng)的更新其預(yù)言機(jī)合約上記錄的數(shù)據(jù),并引入OEV Relay節(jié)點(diǎn),作為整個(gè)OEV拍賣流程中的核心。OEV Relay 在各個(gè)預(yù)言機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)內(nèi)收集數(shù)據(jù),并統(tǒng)一返回給搜索者(Searcher),搜索者再拿去更新API3預(yù)言機(jī)上記錄的數(shù)據(jù),并趁機(jī)把MEV交易也捆綁在一起。
OEV Relay 的存在帶來(lái)了以下兩方面優(yōu)勢(shì):
1.為搜索者統(tǒng)一提供所有數(shù)據(jù),減少搜索者單獨(dú)與預(yù)言機(jī)節(jié)點(diǎn)交互的事件;
2.保護(hù)網(wǎng)絡(luò)內(nèi)單個(gè)預(yù)言機(jī)節(jié)點(diǎn),避免單個(gè)預(yù)言機(jī)節(jié)點(diǎn)被搜索者發(fā)起 DoS 攻擊;
搜索者可以在 OEV Relay 內(nèi),獲取聚合的預(yù)言機(jī)網(wǎng)絡(luò)報(bào)價(jià)數(shù)據(jù)及其簽名,當(dāng)搜索者認(rèn)為當(dāng)前的預(yù)言機(jī)網(wǎng)絡(luò)報(bào)價(jià)可以幫助其完成某些 OEV 提取操作,搜索者就會(huì)向 OEV Relay 發(fā)起競(jìng)價(jià)。
在競(jìng)價(jià)過程中,假如搜索者給出了最高報(bào)價(jià),OEV Relay 就會(huì)返回一筆已經(jīng)簽名完成,可以直接上鏈用于鏈上預(yù)言機(jī)價(jià)格更新的 meta-tx。搜索者可以將該筆價(jià)格更新交易,與其他交易打包在一起上鏈,執(zhí)行獲取 OEV 收益。此時(shí)由于價(jià)格更新交易也被打包上鏈,所以鏈上預(yù)言機(jī)價(jià)格也一并更新。
我們可以看到,允許OEV拍賣的一個(gè)效果,在于實(shí)現(xiàn)鏈上預(yù)言機(jī)價(jià)格的高頻更新。以 AAPL/USD 數(shù)據(jù)源為例,在沒有 OEV 拍賣前,當(dāng)鏈下與鏈上價(jià)格偏差 1% 時(shí),這種大幅度的偏差才會(huì)使得預(yù)言機(jī)主動(dòng)更新鏈上價(jià)格。
但假如 OEV 拍賣開放后,預(yù)言機(jī)允許外界向其提交數(shù)據(jù)更新指令,搜索者可能就會(huì)認(rèn)為,鏈上與鏈下 0.1% 的價(jià)差就可以帶來(lái)巨大的OEV收益。這會(huì)驅(qū)使搜索者,在價(jià)差為 0.1% 時(shí)就拍下用于價(jià)格更新的 meta-tx ,并將該筆交易指令上鏈。
這會(huì)加快 AAPL/USD 數(shù)據(jù)源的更新,且沒有對(duì)使用此預(yù)言機(jī)的應(yīng)用帶來(lái)額外的預(yù)言機(jī)更新成本。
所以說,預(yù)言機(jī)數(shù)據(jù)更新的成本,被轉(zhuǎn)嫁給了OEV價(jià)值捕獲者,而API3的OEV Relay可以從OEV玩家那里,獲得大額的競(jìng)拍費(fèi)用,再把這些費(fèi)用反哺給被捕獲OEV價(jià)值的Defi協(xié)議。
可以預(yù)見,隨著 OEV 市場(chǎng)擴(kuò)大,搜索者會(huì)在拍賣價(jià)格上激烈競(jìng)爭(zhēng),導(dǎo)致 OEV 價(jià)值的大部分(甚至是95%)都被轉(zhuǎn)移給 API3 協(xié)議,而API3協(xié)議收到這部分OEV收入后,會(huì)區(qū)分OEV價(jià)值的來(lái)源,并將其返還給被捕獲OEV價(jià)值的Defi協(xié)議。
還需要注意 ,為了保險(xiǎn),API3會(huì)在鏈上數(shù)據(jù)與鏈下數(shù)據(jù)差額較大時(shí),自動(dòng)執(zhí)行數(shù)據(jù)更新操作,前提是一直沒有OEV拍賣者主動(dòng)更新API3合約記錄的數(shù)據(jù)。
基于 Airnode 協(xié)議與 Flashbot 的啟發(fā),API3 開發(fā)了 OEV 拍賣方案,該方案帶來(lái)了以下優(yōu)勢(shì):
將 OEV 大部分返還給使用預(yù)言機(jī)喂價(jià)的協(xié)議,提供了更具有細(xì)粒度的價(jià)格更新,且采用預(yù)言機(jī)喂價(jià)的協(xié)議平臺(tái) 無(wú)需為更細(xì)粒度的數(shù)據(jù)更新付出高昂成本,這部分成本通過拍賣的方式轉(zhuǎn)嫁給了出價(jià)的OEV搶跑者。
相比于 GMX 的特殊化方案,API3 的方案是更加通用的,而且 API3 預(yù)言機(jī)的使用方只需要給定錢包地址,API3 協(xié)議會(huì)自動(dòng)將 OEV 收入打入此錢包,使 OEV 的再分配更加方便。