a16z Crypto 最新研究:DeFi 大規模應用的關鍵是什麼?
作者:PGarimidi、jneu_net、@MaxResnic
編譯:佳歡,ChainCatcher
區塊鏈如今可以切實宣稱,其已具備與現有金融基礎設施競爭所需的能力。 現今的生產系統每秒鐘可處理數萬筆交易,並且即將迎來數量級的提升。 然而,除了原始吞吐量之外,金融應用還需要可預測性。 無論是一筆買賣、一次拍賣出價,或是一次選擇權行使,金融體系的正常運作都要求有一個確定的答案:這筆交易,究竟什麼時候會被執行? 如果交易面臨不可預測的延遲(無論是惡意的還是偶然的),許多應用程式將變得無法使用。
為了使鏈上金融應用具備競爭力,區塊鏈必須提供短期打包保證,即如果向網路提交了有效的交易,它就能保證被盡快打包。 例如,考慮一個鏈上訂單簿。 高效率的訂單簿需要做市商透過維持帳本上資產的買賣訂單來持續提供流動性。
做市商面臨的關鍵難題在於:既要盡可能將買賣價差縮到最小,又要避免因報價偏離市場而陷入"逆向選擇"的風險。 為此,做市商必須不斷更新其訂單以反映現實世界的狀態。 例如,如果聯準會的公告導致資產價格跳漲,做市商需要立即做出反應,將他們的訂單更新為新價格。 在這種情況下,如果做市商更新訂單的交易沒有立即落地,他們就會因為套利者以過時的價格成交其訂單而蒙受損失。 做市商隨後就需要設定更大的價差來減少他們在此類事件中的風險敞口,這反過來又使得鏈上交易場所的競爭力下降。
可預測的交易打包,為做市商提供了強有力的保證,使其能夠對鏈下事件做出快速反應,並保持鏈上市場的效率。
我們擁有什麼與我們需要什麼
如今,現有的區塊鏈僅提供穩健的最終打包保證,通常在幾秒鐘的時間跨度內生效。 雖然這些保證對於支付等應用來說已經足夠,但它們太弱了,無法支援那些市場參與者需要即時對資訊做出反應的大類金融應用。
以上述訂單簿為例:對於做市商來說,如果套利者的交易可以落在更早的區塊中,那麼保證他們在"未來幾秒內"被打包是毫無意義的。 如果沒有強有力的打包保證,做市商不得不透過擴大價差並為用戶提供更差的價格,來應對增加的逆向選擇風險。 這反過來使得鏈上交易與那些提供更強保證的其他交易場所相比,吸引力大打折扣。
為了使區塊鏈真正實現作為資本市場現代化基礎設施的願景,建造者需要解決這些問題,以便像訂單簿這樣的高價值應用能夠蓬勃發展。
實現可預測性究竟難在哪裡?
強化現有區塊鏈的打包保證以支援這些用例是一項挑戰。 當今的一些協議可能依賴於一個可以在任何給定時間決定交易打包的節點("領導者")。 雖然這簡化了建構高效能區塊鏈的工程挑戰,但它也引入了一個潛在的經濟瓶頸,這些領導者可以在此榨取價值。 通常情況下,在節點被選為領導者的視窗期內,他們對將哪些交易打包進區塊擁有完全的權力。 對於處理任何規模金融活動的區塊鏈來說,領導者都處於特權地位。 如果這個單一的領導者決定不打包某筆交易,唯一的補救措施就是等待下一個願意打包該交易的領導者。
在無許可網絡中,領導者有動機去榨取價值,俗稱 MEV。 MEV 遠遠超出了夾擊 AMM 交易之類的範疇。 即使領導者僅僅能夠將交易打包延遲數十毫秒,也能為他們帶來巨額利潤,並降低底層應用的效率。 一個僅優先處理部分交易者交易的訂單簿,會讓其他人處於不公平的競爭環境中。 在最壞的情況下,領導者可能會變得極度充滿敵意,以至於交易者完全離開該平台。
假設出現升息,ETH 價格立即下跌 5%。 訂單簿上的每個做市商都爭相取消其掛單,並以新價格下達新訂單。 同時,每個套利者都提交了以過時掛單價格賣出 ETH 的訂單。 如果這個訂單簿運行在單一領導者的協議上,那麼該領導者就擁有極大的權力。 領導者可以簡單地選擇審查所有做市商的取消操作,讓套利者獲得巨額利潤。 或者,領導者可以不直接審查取消操作,而是將取消操作延遲到套利者的交易落地之後。 領導者甚至可以直接插入自己的套利交易,以充分利用價格差異。
兩個基本訴求
面對這些優勢,做市商的積極參與變得不符合經濟效益;只要價格出現波動,他們就可能被佔便宜。 這個問題歸結為領導者在兩個關鍵方面擁有過多的特權:1)領導者可以審查任何其他人的交易,以及 2)領導者可以看到他人的交易並據此提交自己的交易作為回應。 這兩個問題中的任何一個都可能被證明是災難性的。
我們可以透過以下範例精確鎖定問題所在。 考慮一場有兩個競標者 Alice 和 Bob 的拍賣,其中 Bob 也是拍賣會發生區塊的領導者。 (只有兩個競標者的設定是為了說明問題;無論有多少競標者,同樣的推理都適用。)
拍賣在區塊產生所需的時間段內接受競價,假設從時間 t=0 到 t=1。 Alice 在時間 tA 提交競價 bA,Bob 在時間 tB > tA 提交競價 bB。 由於 Bob 是該區塊的領導者,他始終可以保證自己最後行動。 Alice 和 Bob 也有一個不斷更新的資產價格真相來源可以讀取(例如,中心化交易所的中間價)。 在時間 t,假設此價格為 pt。 我們假設,在任意時刻 t,市場對拍賣結束時(t=1)資產價格的預期,總是等於當前的即時價格 pt。 拍賣規則很簡單:Alice 和 Bob 中出價較高者贏得拍賣並支付其出價金額。
現在讓我們考慮當 Bob 可以利用他作為本次拍賣領導者的優勢時會發生什麼。 如果 Bob 可以審查 Alice 的出價,很明顯拍賣就會崩盤。 由於沒有其他競標,Bob 只需出價一個任意小的金額,即可保證贏得拍賣。 這導致拍賣結清時實質上只有 0 收益。
更複雜的情況是,如果 Bob 不能直接審查 Alice 的競價,但仍然可以在自己出價之前看到 Alice 的競價,會發生什麼。 在這種情況下,Bob 有一個簡單的策略。 當他出價時,他只需檢查 ptB > bA 是否成立。 如果是,那麼 Bob 的出價只略高於 bA;如果不是,那麼 Bob 根本不出價。
透過執行此策略,Bob 導致 Alice 面臨不利的逆向選擇。 Alice 獲勝的唯一情況是價格更新導致她的出價最終高於資產的預期價值。 每當 Alice 贏得拍賣時,她都會預期虧錢,不如根本不參與拍賣。 隨著所有競爭對手消失,Bob 可以再次簡單地出價一個任意小的金額並獲勝,而拍賣實際上獲得 0 收益。
這裡的關鍵要點是,這場拍賣持續多久並不重要。 只要 Bob 可以審查 Alice 的出價,或者在自己出價之前看到 Alice 的出價,這場拍賣注定會失敗。
這個例子中的相同原則適用於任何高頻交易資產的環境,無論是現貨交易、永續合約或衍生性商品交易所:如果存在一個擁有 Bob 在這個例子中權力的領導者,該領導者可能會導致市場徹底崩潰。 為了讓服務這些用例的鏈上產品切實可行,它們絕不能賦予領導者這些權力。
如今在實踐中這些問題是如何產生的?
上面的故事為任何無許可單一領導者協議上的鏈上交易描繪了一幅黯淡的畫面。 然而,許多單一領導者協議上的去中心化交易所(DEX)交易量繼續保持健康,這是為什麼呢? 在實踐中,有兩股力量的結合抵消了上述問題:
- 領導者沒有充分利用他們的經濟權力,因為他們自己通常大力投資於底層區塊鏈的成功;
- 應用程式已經建立了變通方法,以免在這些問題面前如此脆弱。
雖然這兩個因素迄今為止保持了去中心化金融(DeFi)的運作,但從長遠來看,它們不足以使鏈上市場真正與鏈下市場競爭。
要在具有實質經濟活動的區塊鏈上獲得領導者資格,需要大量的質押。 因此,要不是領導者自己擁有大量質押,就是擁有足夠的聲譽讓其他代幣持有者將質押委託給他們。 在任何一種情況下,大型節點業者通常都是聲譽面臨風險的已知實體。 不僅僅是聲譽,這種質押意味著這些運營商也有財務動機希望他們的區塊鏈運作良好。 正因為如此,我們在很大程度上還沒有看到領導者像上文所述那樣充分利用其市場力量——但這並不意味著這些問題不存在。
首先,透過社會壓力依賴節點業者的善意並訴諸其長期動機,並非金融未來的穩固基礎。 隨著鏈上金融活動規模的增加,領導者的潛在利潤也隨之增加。 這種潛力成長得越多,社會層面上要讓領導者的行為違背其眼前的直接利益就越困難。
其次,領導者能夠利用其市場權力的程度是一個從良性到導致市場完全崩潰的光譜。 節點營運商可以單方面推動利用其權力獲取更高利潤。 當一些運營商挑戰公認底線時,其他運營商很快就會效仿。 單一節點的行為可能顯得微不足道,但當所有人都改變時,其影響是顯而易見的。
也許這種現象最好的例子就是時機博弈(Timing Games):領導者試圖在協議仍然有效的前提下,盡可能晚地宣佈出塊,以賺取更高的獎勵。 當領導者過於激進時,這會導致出塊時間變長和跳塊。 雖然這些策略的獲利性廣為人知,但領導者之所以選擇不玩這些博弈,主要是為了擔任區塊鏈的好管理者。 然而,這是一種脆弱的社會平衡。 一旦單一節點運營商開始玩這些策略來賺取更高獎勵且沒有任何後果,其他運營商很快就會加入。
時機博弈只是領導者如何在沒有充分利用其市場力量的情況下增加利潤的一個例子。 領導者還可以採取許多其他措施,以犧牲應用程式為代價來增加其獎勵。 孤立來看,這些措施對於應用程式可能是可行的,但最終天平會傾斜到一個點,即上鍊的成本超過了收益。
保持 DeFi 運作的另一個因素是應用程式將重要邏輯轉移到鏈下,而僅將結果發佈在鏈上。 例如,任何需要快速進行拍賣的協議都在鏈下執行此操作。 這些應用程式通常在一組許可節點上運行其所需的機制,以避免遇到惡意領導者的問題。 例如,UniswapX 在以太坊主網外運行其荷蘭式拍賣以完成交易,類似地,CowSwap 在鏈下運行其批量拍賣。
雖然這對應用程式來說行得通,但它將基礎層和鏈上建構的價值主張置於一個岌岌可危的境地。 在應用程式執行邏輯位於鏈下的世界中,基礎層純粹變成了結算層。 DeFi 最強大的賣點之一就是可組合性。 在所有執行都發生在鏈下的世界裡,這些應用程式本質上生活在孤立的環境中。 依賴鏈下執行也為這些應用程式的信任模型增加了新的假設。 應用程式的運作不再僅僅依賴底層鏈的活躍度,這種鏈下基礎設施也必須正常運作。
如何獲得可預測性
為了解決這些問題,我們需要協議滿足兩個屬性:一致的交易打包和排序規則,以及確認前的交易隱私(有關這些屬性的嚴格定義和擴展討論,請參閱此論文)。
我們用短期抗審查性來概括第一個屬性。 如果任何到達誠實節點的交易都保證包含在下一個可能的區塊中,那麼該協議就是短期抗審查的:
任何按時到達任何誠實節點的有效交易,都必定會被打包進下一個可能的區塊中。
更確切地說,我們假設協議在固定的時鐘上運行,每個區塊都在設定的時間生成,例如每 100 毫秒。 那麼我們需要保證的是,如果一筆交易在 t=250ms 時到達誠實節點,它將被包含在 t=300ms 產生的區塊中。 對手不應有權酌情選擇性地打包其聽到的某些交易而遺漏其他交易。
這個定義的精神在於,用戶和應用程式應該有一種極其可靠的方式在任何時間點讓交易落地。 不應該發生單節點碰巧丟包(無論是因為惡意還是簡單的運行故障)導致交易無法落地的情況。 雖然此定義要求為到達任何誠實節點的交易提供打包保證,但在實踐中,實現這一點的開銷可能太高。 重要的特徵是,協議應該是穩健的,以便上鍊切入點的行為方式極具可預測性且易於推理。
無許可單一領導者協議顯然不滿足此屬性,因為如果在任何時間點單一領導者是拜占庭節點,則沒有其他方法可以使交易落地。 然而,即使是四個能夠保證在每個時段內將交易打包的節點集,也大大改善了用戶和應用程式使交易落地的選項數量。 用犧牲一定數量的性能來換取一個能可靠地讓應用程式繁榮發展的協議是值得的。 在穩健性和效能之間尋找正確的權衡點還有更多工作要做,但現有協議提供的保證是不夠的。
鑑於協議可以保證打包,排序在某種程度上是自然而然的事情。 協議可以自由使用它們喜歡的任何確定性排序規則來保證一致的排序。 最簡單的解決方案是按優先費排序,或者可能允許應用程式靈活地對與其狀態互動的交易進行排序。 對交易進行排序的最佳方式仍然是一個活躍的研究領域,但無論如何,只有在需要排序的交易落地的基礎上,排序規則才有意義。
在短期抗審查性之後,下一個最重要的屬性是協議提供一種我們稱為"隱藏"的隱私形式。
在協議最終確定將交易打包之前,除了接收該交易提交的節點之外,任何一方都不能獲取有關該交易的任何資訊。
具備"隱藏"屬性的協議可能允許節點以明文形式查看提交給它們的所有交易,但要求協議的其餘部分在達成共識並在最終日誌中確定了交易的順序之前保持盲態。 例如,協議可能使用時間鎖加密,以便在某個截止日期之前隱藏區塊的全部內容;或者協議可能使用門限加密,以便在委員會同意它被不可逆地確認後立即解密該區塊。
這意味著節點可能會濫用從提交給它的任何交易中獲得的信息,但協議的其餘部分直到事後才知道它們所達成共識的內容。 到向網路其餘部分披露交易資訊時,交易已被排序和確認,因此任何其他方都無法對其進行搶跑。 為了使這個定義有用,這確實意味著多個節點可以在任何給定的時段內使交易落地。
我們放棄使用僅在交易確認前用戶才了解其任何資訊的更強概念(例如,在加密記憶體池中)的原因是,協議需要採取一些步驟作為垃圾交易的過濾器。 如果交易內容對整個網路完全隱藏,那麼網路就無法將垃圾交易與有意義的交易過濾開來。 解決這個問題的唯一方法是洩露一些未隱藏的元資料作為交易的一部分,例如無論交易是否有效都會被收取費用的費用支付者地址。
然而,這些元資料可能會洩漏足夠的資訊供對手利用。 因此,我們更傾向於單一節點對交易具有完全的可見性,而網路中的其他節點對其沒有任何可見性。 但是,這也意味著,為了使此屬性有用,需要用戶在每個時段至少擁有一個誠實節點作為上鍊切入點來落地交易。
一個既具備短期抗審查性又具備隱藏性的協議,為建立金融應用程式提供了理想的基礎。 回到我們試圖在鏈上運行拍賣的例子,這兩個屬性直接解決了 Bob 可能導致市場崩潰的問題方式。 Bob 既不能審查 Alice 的出價,也不能利用 Alice 的出價來為其自己的出價提供信息,這準確地解決了我們之前例子中的問題。
憑藉短期抗審查性,任何提交交易的人(無論是交易還是拍賣出價)都可以保證立即被打包。 做市商可以改變他們的訂單;競標者可以快速出價;清算可以有效率地落地。 用戶可以確信他們採取的任何操作都將立即執行。 這反過來又將允許下一代低延遲的現實世界金融應用完全建立在鏈上。
為了讓區塊鏈真正與現有金融基礎設施競爭,甚至超越它,我們需要解決的絕不僅僅是吞吐量問題。