文/Donovan Choy,Bankless
2022年8月8日,美國財政部製裁Tornado Cash。
每個人都知道監管機構討厭加密貨幣,但制裁DeFi讓人感到意外。它代表了美國監管機構官方打擊加密貨幣的前所未有的努力。
在某種程度上,Tornado Cash遭制裁是因禍得福。監管衝擊讓DeFi想起了它的基本原則,並對去中心化金融領域的每個中心化瓶頸進行了審查。
警醒:去中心化實際上很重要。
你採取的任何中心化捷徑都可以並且將被用來對付你。
審查問題很難掌握。試圖了解圍繞以太坊中心化的擔憂需要一些技術知識,而加密術語的海洋很難涉足。
本文試圖揭開過去幾個月對以太坊所有審查問題的神秘面紗,並將它們提煉成任何加密公民(甚至仇恨者!)易於理解的術語。
我列出了以太坊協議的每個主要中心化部分,並簡要介紹了企業家和開發人員正在研究的各種市場和技術解決方案。
以太坊供應鏈的簡要總結
最初設計的以太坊理論上只涉及兩個參與者:用戶運行自己的節點,該節點將通過點對點網絡發送交易並阻止驗證者構建包含交易的區塊。
區塊鏈驗證者(我們稱他們為PoW中的礦工,PoS中的質押者)應該是驗證區塊的中立參與者。
在實踐中,這個過程要復雜得多。驗證者面臨向運行套利機器人的搜索者出售區塊來進行歧視其他用戶的不正當動機。對於普通用戶來說,這會導致更高的交易成本和區塊鏈擁塞——這種現像被稱為最大可提取價值(MEV)。過去兩年,以太坊上的MEV達到6.75億美元(Cosmos 上估計為670萬美元)。
在合併後的以太坊中,一般交易順序如下:
1、用戶通過dapp前端使用錢包創建交易。這些交易被發送到內存池。
2、搜索者運行套利機器人並掃描內存池,然後打包交易。
3、打包交易被傳遞給區塊構造者,然後他們附上費用競標。
4、如果構造者和驗證者都連接到中繼器,則中繼器將參與隱藏打包的區塊,然後再將其拍賣。
5、驗證者(有名區塊提議者)選擇費用競標者並提議區塊,證明者在區塊最終上鍊之前對其進行證明
請注意,驗證者和提議者這兩個術語在本文中可以互換使用。
中心化部分存在於這種交易順序的每一步。讓我們從前端開始按順序檢查它們。
1、前端接口
你想買一些ETH。訪問uniswap.com,精心設計的粉色和白色用戶界面正等待著䯠,幫助你輕鬆導航完成交易。連接MetaMask,選擇幣的流動性資金池,然後單擊“發送”以執行交易。我們認為這個簡單的過程是理所當然的,但這些中介機構已經出現了許多中心化威脅。
審查威脅
今天許多dapp前端接口的現實是它們是中心化的。 Web3的短暫歷史表明,當監管機構敲門時,DeFi會開門。這種情況發生在Balancer從其前端隱藏了2000萬美元的流動性資金池時,或者當Uniswap Labs迅速在其前端下架了數十種合成衍生代幣以避免SEC審查時。 MetaMask 和Infura也根據Tornado Cash制裁措施阻止錢包地址。
前端只是冰山一角。我們使用的dapp依賴RPC節點(服務器)來傳達用戶意圖。節點是一個連接點——可以把它想像成一個API——它在區塊鏈上訪問信息、通信和執行交易。
在理想的世界中,每個人都會運行自己的節點。但正如Signal創始人Moxie Marlinspike曾在對Web3的批評中提出的那樣,大多數人不運行自己的節點,這造成了對Infura和Alchemy等中心化節點服務提供商的依賴。他們讓DeFi變得更加輕鬆,但正如你所知,存在權衡取捨。由於Uniswap和Metamask等大量dapp反過來依賴Infura運行節點,因此出現了一個重要的中心化向量。
像Infura這樣的中心化公司,如果被監管機構盯上,將對以太坊造成重大破壞。這實際上發生在Infura 3月份禁止伊朗IP地址以遵守美國的政治制裁時。中心化節點提供商存在問題的原因也有技術原因。以太坊在2020年11月經歷了一次網絡中斷,當時Infura的主網API由於其Geth客戶端不是最新的而導致許多dapp無法使用。
最後,節點需要託管在某個地方。實際上,許多以太坊節點都託管在AWS、Hetzner和Google Cloud等中心化雲服務提供商上(Solana和比特幣也是如此)。這裡的中心化部分很明顯:雲提供商可以任意停止服務器操作。 8月份,當Hetzner澄清在其服務器上運行以太坊節點違反其服務條款時,社區收到了這一提醒。
來源:ethernodes.org
已經有這麼多中心化部分了,我們甚至還沒有進入內存池。
怎麼解決?
解決方案#1
前端中心化是一個問題,但相對較小。這要歸功於蓬勃發展的DeFi中間件生態系統,它讓我們能夠以各種方式通過替代方案以繞過遭審查的前端。例子包括Zapper和Zerion等投資組合跟踪器、具有集成“交換”功能的加密錢包、1inch和Paraswap等DeFi聚合器。它們讓你無需直接訪問即可訪問dapp。像Uniswap這樣的大多數dapp也承諾將其前端代碼開源,允許任何個人甚至是專門的DAO重新創建前端。
為了繞過前端審查,像IPFS這樣的去中心化存儲提供商也被用來託管具有靜態內容的前端域。對於具有動態內容的前端(社交媒體),像The Graph這樣的去中心化索引協議用於通過統一的查詢語言以跨區塊鍊和dapp查詢數據。對於域名審查,像ENS這樣的去中心化域名服務通過在以太坊智能合約上構建域名,提供了一種更抗審查的方式來託管域名。這與當今大多數存儲在中心化DNS服務器上的網站不同,他們會受到域名扣押或IP地址封鎖的影響。
總之,這些去中心化的基礎設施協議為DeFi前端的去中心化Web3經濟奠定了基礎。
解決方案#2
在解決節點中心化問題上,關鍵的技術方案是輕客戶端。以太坊Altair硬分叉為他們鋪平了道路。這些超輕量級客戶端允許我們在自己的計算機、移動設備或Web瀏覽器上創建我們自己的主權、本地版本的以太坊,我們可以向任何接受輕量級客戶端查詢的完整節點廣播交易並向其發出請求。通過這樣做,dapps可以完成交易,而不是調用像Infura或Alchemy這樣的中心化RPC端點。
輕客戶端不會嘗試檢索整個Beacon鍊或驗證者集。這將是計算密集型的——因此它被稱為“光”!他們只是通過了解點對點節點來同步區塊頭。關鍵是這個過程是通過隨機分配的驗證者組(同步委員會)不信任地執行的。信標鏈PoS輕客戶端的構建也比PoW輕客戶端簡單得多。只需幾個非審查完整節點來回答這些查詢,就可以緩解節點集中問題。有關輕客戶端的更多信息,請參見此處。
解決方案#3
就我們希望依賴外部節點提供商而言, 存在Infura的去中心化替代方案,例如Pocket Network或Ankr,可以最大限度地減少對Infura的需求。
回想一下,這裡的問題是人們缺乏動力來運行自己的節點。這些RPC節點提供者為此引入了經濟激勵措施。以Pocket Network為例,節點提供商質押POKT以運行區塊鏈節點並在不同區塊鏈之間中繼數據,為請求鏈上數據的dapp提供服務。在這個無需許可的市場中,他們服務的中繼越多,他們獲得的POKT獎勵就越多。在需求方面,用戶/dapps也質押POKT,允許它在網絡上請求中繼。請注意,這些項目本身存在中心化點,但有一個移除它們的路線圖。
來源:Sami Kassab
解決方案#4
節點託管問題是一個需要持續監控的中心化風險,但由於退出壁壘低,因此威脅不大。如果AWS決定限制在其云服務器上託管節點,節點運營商可以輕鬆遷移到不同的雲服務器,而不會被鎖定在任何地方。由於Merge,如今使用DIY硬件(Raspberry Pi) 和即插即用解決方案(Avado)可以更輕鬆地設置自己的節點。
2. 搜索者
用戶交易提交成功後,進入mempool,簡稱“內存池”。 mempool是由像你我這樣的普通用戶提交的待處理交易的數據庫,有時被稱為以太坊的“黑暗森林”。 MEV遊戲就是從這裡開始的。
一旦交易進入內存池,搜索者就會開始掃描黑暗森林以尋找有利可圖的MEV機會。搜索者通常是運行套利機器人的大型機構和自營交易平台,但有時也包括個人。他們支付高昂的Gas費來讓驗證者接受他們的交易訂單,而不是通過公共池。
這裡要注意的一件事是,雖然MEV通常被認為完全是一件壞事,但也有好的MEV。 DeFi協議需要在加密貨幣價格波動的情況下快速清算貸方的抵押品,希望支付高昂的Gas費以確保其交易能夠快速執行。如果區塊鍊是按照先到先得的原則設計的,那麼DeFi的效率就會非常低下。搜索者在平衡這種效率和構建高效區塊方面發揮著重要作用。
然而,在MEV壞的方面,雖然搜索者本身並不是中心化風險,但他們通過與區塊構造者勾結,在實現巨大的中心化部分發揮了作用。它們在協議層中的作用是打包交易並將它們傳遞給黑暗森林下一個梯級的區塊構造者。
3. 區塊構造者和驗證者/提議者
在提議者-建造者分離(PBS)之前
在合併前的以太坊中,區塊構造由一個實體執行:礦工。這使礦工能夠通過區分內存池中的交易來利用DEX套利和清算。
時間一長,問題就更嚴重了。搜索者和礦工開始在地下市場勾結,以最有效地選擇交易以最大化他們自己的MEV利潤。這最終增加礦工的固定成本,因為擁有運行複雜算法的資金的大型礦池運營商超過了夫妻店小礦工——這催生了我們所知的MEV。過去兩年在以太坊上提取的MEV總額已達約6.75億美元!
這裡的中心化風險問題是雙重的:首先,它傷害了最終等待更長時間或支付更多交易費用的以太坊用戶;其次,由於政治壓力,資本充足的區塊驗證者更有能力進行審查。
作為回應,以太坊開發人員正在開發一種稱為提議者-建造者分離(PBS) 的協議內解決方案。顧名思義,PBS將驗證者角色分成兩個獨立的原生角色:
1、提議者(即質押32 ETH並構造區塊的驗證者)
2、區塊構造者
在PBS下,區塊構造者相互競爭,以創建來自搜索者的聚合有序交易列表。這些交易包進行了優化,以最大限度地提高建設者自己的MEV費用,然後將其傳遞給區塊提議者。提議者被激勵根據最高費用選擇交易來創建區塊並將其發送到網絡以包含在鏈上。
這減少了區塊提議者審查的中心化權力,因為構造區塊的他/她不是選擇要包含在區塊中的交易的同一個人。正如Vitalik在Endgame中所描述的,PBS的重點是使驗證者去中心化最大化。
但是PBS在技術上很複雜,而且要好幾年才能準備好(可能需要2-8年!)。好消息是,同時出現了解決驗證者中心化的臨時解決方案。
一方面,Merge後的驗證者被隨機選擇為每個slot中的區塊提議者。這與合併前的PoW不同,所有礦工都在競爭解決數學難題以驗證新交易。在以太坊上約42萬驗證者中的一個被隨機選擇為區塊提議者之後,另一個驗證者委員會被隨機選擇提交關於所提議區塊有效性的證明(投票)。這種雙重隨機洗牌層用於遏制以太坊上的驗證者中心化,使攻擊者更難審查或破壞網絡。
其次,像Flashbots這樣的公司已經介入人工創建PBS。 Flashbots開發了一個軟件客戶端(用於PoW以太坊的MEV-Geth,用於PoS以太坊的MEV-Boost),驗證者可以簡單地插入其共識客戶端並在其節點上運行。這實際上將區塊構造的工作外包給了專門的構造者角色(提議者-構造者分離)。
為什麼要使用Flashbot?驗證者這樣做僅僅是因為為他們質押獎勵更有利可圖。 Flashbots的軟件在提議者和構造者之間更公平地分配MEV價值,而不是在大型礦池和搜索者之間共享。 Flashbots所做的是通過創建一個透明、開放的價格發現市場來阻止搜索者和礦工之間的這種內部勾結市場。根據Hasu的說法,使用MEV-Boost已將驗證者的合併後質押獎勵增加了135%。
資料來源:Flashbots
請注意,MEV-Boost是可選的,驗證者仍然可以選擇在其執行客戶端上自行構造區塊。
PBS時代
PBS消除了大型驗證者的中心化權力。但即使在設計了PBS之後,我們還沒有達到去中心化的承諾。中心化部分儘管有所緩解,但仍將存在於後PBS世界中。本節的其餘部分簡要介紹了以太坊面臨的各種審查威脅及其在工作中的相應解決方案。
審查威脅#1
雖然PBS緩解了以前的中心化問題,但它還通過賦予構造者更高的審查交易能力,在構造者級別引入了新的中心化。通過創建專門的構造者角色,構造者將能夠對區塊進行高價競標並排除某些交易。
解決方案#1
第一個解決方案是抗審查列表(crList)或也稱為“混合PBS ”。假設我們懷疑構造者正試圖審查交易。我們知道這一點是因為他們為提議者構建的區塊不滿,但內存池中有符合條件的交易卻在等待包含。
crList讓提議者可以強制構造者充分利用空塊空間,而無需讓提議者俱體規定要包含的交易的順序: “嘿,構造者,請填滿䯠的空塊,否則我選擇的交易將被包括在內。”
堅持審查交易並忽略提議者crList的構造者將被證明者拒絕該區塊(證明者是隨機選擇的驗證者,他們在提議驗證者提議一個區塊後對規範鏈的頭部進行投票)。簡而言之,crLists是一種間接機制,它可以讓提議者在不違背PBS一開始的全部目的(去中心化提議者)的情況下控制中心化區塊構造市場。
解決方案#2
但是如果提議者可以告訴構造者包含交易,如果他們與構造者勾結並告訴他們不要呢?這將我們帶到了第二個解決方案:MEV-smoothing。就像crLists控制構造者一樣,MEV-smoothing 通過消除他們的自由裁量權來控制提議者。
這裡的想法是要求證明者關注區塊構造市場,特別是附加到區塊的費用投標,然後只證明提議者出價最高的區塊。如果提議者沒有提出已經為他們構造者的最有利可圖的區塊,那麼事情就發生了,所以證明者會問,“嘿,提議者,你只是討厭賺錢還是想審查?” 實際上,MEV-smoothing旨在使所有提議者的MEV利潤均等化,並創建一個完全有效的市場,消除提議者參與歧視性審查的動機。
解決方案#3
第三種解決方案是使用加密的內存池。雖然crLists計數器構造者和MEV-smoothing計數器提議者,但加密內存池旨在對抗兩者。這種機制很容易理解:它在進入內存池之前對用戶交易的內容和發送/接收地址進行加密,只有在上鍊時才解密。這使得參與者很難審查或參與MEV提取技術,如交易搶跑。這消除了對像Flashbots Protect這樣的私有內存池的需求。加密內存池技術也是Cosmos開發人員、Flashbot和Aztec等隱私導向的鏈正在試驗的東西。
解決方案#4
第四個也是最後一個解決方案是我們最不希望依賴但又很不錯的解決方案:利他的自我構造,提議者只需選擇構造自己的區塊,而不是將其外包給構造者。這裡的好處是,即使有一小部分約10%的利他主義建設者,以太坊也可以繼續前進。
這裡明顯的缺點是它與經濟激勵措施背道而馳——回想一下,驗證者想要使用MEV-Boost是因為它產生的費用更高。這就是為什麼在社會層面推廣一種抵制審查制度和保持去中心化的文化非常重要的原因。
使用自己擁有的硬件,自己的ISP在家中單獨質押,以在少數共識和執行客戶端上構造和提議自己的區塊,是質押的GOLD標準。還有其他很好的解決方案,但只有這一個黃金標準。 ——superphiz
審查威脅#2
要成為目前的以太坊驗證者,你需要在存款合約中質押32枚ETH,同時運行兩個軟件客戶端:一個執行客戶端(用於執行交易)和一個共識客戶端(用於就新產生的區塊達成共識)。今天的威脅是太多的驗證者正在運行相同的執行客戶端Geth。
來源:clientdiversity.org
如果發現一個客戶端存在錯誤或遭受攻擊,這會帶來更高的網絡中斷風險。這不是理論上的推測,正如2016年上海DOS攻擊所證明的那樣,攻擊誘使Geth客戶端減慢處理速度。在合併後的以太坊上,交易最終確定需要2/3的質押ETH。占主導地位的客戶端故障可能會暫時停止(或更糟:分裂)以太坊網絡——這使得任何給定客戶端運行在不超過⅔的驗證節點上至關重要!
客戶端中心化問題非常嚴重,即使是像Prysmatic Labs這樣客戶端使用率最高的領先公司也建議節點驗證者“使用他們的競爭對手”。畢竟,如果以太坊下跌,那將是所有人的損失。
解決方案
請注意,這裡的審查威脅不僅適用於單獨的質押者,還適用於Infura和Alchemy等中心化節點提供商,或Pocket Network等去中心化節點提供商。以太坊開發人員實施的解決方案包括各種懲罰措施,以懲罰不活躍驗證者的質押,如不活躍減少機制。在今天的Beacon鏈上,如果行為不端的驗證者都在同一個客戶端上失敗,也有反相關的懲罰,對行為不端的驗證者進行更嚴厲的懲罰。實際上,這促進了多客戶端文化,同時鼓勵驗證者在選擇客戶端時不僅要考慮技術風險,還要考慮經濟激勵。
審查威脅#3
最後,更不用說驗證者層的另一個經常提到的審查威脅:ETH質押服務中心化。最大的兩部分,一個屬於流動質押協議,控制著約37%的質押ETH,一個屬於CEX,控制著約31%的質押ETH。這是一個嚴重的問題,因為任何擁有超過33%ETH的實體都可能進行雙花攻擊。
來源:Dune Analytics
解決方案
這裡沒有簡單的解決方案,但有理由保持樂觀。一方面,雖然Lido控制著不成比例的30%質押ETH,但它並不作為一個單一實體存在,對區塊構造沒有直接影響。 Lido的ETH通過數万個節點傳遞給28個節點運營商,防止任何形式的單邊網絡攻擊。
去中心化最大主義者(Decentralization-maxi)不會在28個節點運營商中找到太多的安慰,考慮到什麼是危險的(以太坊網絡!),這仍然太少了。一種可能解決ETH集中問題的技術解決方案是分佈式驗證者技術(DVT),也稱為私鑰共享驗證者技術,這是以太坊基金會自2019年以來一直在積極研究的領域。帶頭開發DVT的公司是機構區塊鏈節點提供商RockX,它是Lido 28 個節點運營商之一。
DVT是一種開源協議,它將節點操作的活動分散在不同驗證者之間,而不是單個驗證者之間。它使用多方計算(MPC)過程來確保節點可以由多個驗證者共同運行,因為私鑰是“共享的”。因此,沒有一個參與者可以完全訪問簽署消息所需的私鑰。這也允許驗證者在基礎設施出現故障時代替另一個驗證者。
最後,雖然持有過多ETH的流動性質押協議非常令人擔憂,但值得考慮的是一個不存在Lido DAO的反事實世界。在那個世界裡,ETH將與Coinbase和Kraken等政治上更脆弱的實體進行質押,這些實體已經持有大量ETH,這種情況比現狀要糟糕得多。
4、中繼者
在MEV-Boost模型中,中繼器充當中間人“經紀人”,位於提議者和構建者之間,任何人都可以輕鬆啟動。中繼者是一種獨特的中心化部分,它是Flashbot試圖解決MEV的結果。要了解這裡的審威脅,首先需要了解為什麼中繼者會出現。
回想一下,想要在PBS下將驗證者角色拆分為提議者和構造者的全部原因是為了遏制驗證者的審查權,並阻止一個實體(例如Coinbase或Lido)持有大量質押ETH的情況可以任意決定在鏈上包含哪些內容。
因此,要讓PBS工作,提議者需要對他們從構造者那裡收到的區塊內容一無所知。否則,提議者將能夠區分他們認為應該在鏈上的區塊,而我們又回到了PBS之前。
這就是Flashbots的MEV-Boost模型下中繼者的用武之地。構建者向中繼者發送一個組裝區塊的費用投標,之後中繼者將區塊發送到一個隱藏的託管,並且只向任何提議者從該中繼接受的有效載荷顯示價格。
只有在提議者承諾簽署區塊頭並接受出價後,區塊內容才會被披露。這樣,想要審查Tornado Cash交易的提議者別無選擇,只能繼續在鏈上提議區塊,因為他們已經為此支付了費用,或者如果他們試圖一次提議兩個區塊,就會被懲罰。
來源:Devcon
審查威脅
但是如果中繼者自己選擇審查呢?這將我們帶到了中繼者級別的中心化風險的核心。今天,以太坊上58%的中繼區塊都在審查Tornado Cash交易,即符合OFAC標準。這58%區塊中的大部分(80%)來自Flashbots的中繼(見下圖)。
請注意,還有許多其他驗證者仍在接受Tornado Cash交易的區塊,不過會延遲幾分鐘,因此這實際上是一種“軟”審查形式,而不是“硬”形式的審查。只要中繼者是非審查的少數群體,這個問題就會給用戶帶來更多的不便,而不是我們傳統上認為的“審查制度”。儘管如此,這個問題導致了最近幾個月對以太坊受到審查的廣泛關注。
解決方案
這裡明顯的解決方案是鼓勵更廣泛的中繼者多樣性。驗證者通常一次連接到多個中繼者。如上所示,七個中繼中的三個(BloXroute 和Manifold)不審查Tornado Cash交易。因為中繼是一個無需許可的實體,所以任何人都可以輕鬆創建自己的中繼(Flashbots自己已經善意地開源了自己的中繼)。創建無審查中繼的准入門檻很低,這意味著這種中心化部分比在驗證者級別要小得多,在驗證者級別阻止不誠實/行為不端的參與者成本要高得多。
好消息是,從長遠來看,中繼者是一個臨時的審查部分。當PBS正式納入協議時,將不再需要中繼者,因為構造者將連接到提議者。
結論…
以上就是全部。整個MEV供應鏈中的中心化問題以及我們正在做的解決方案
請注意,本文僅涵蓋軟審查形式,這通常相當於以秒/分鐘為單位延遲的區塊包含。
這篇文章並不詳盡——我遺漏了更多的中間件協議,如預言機、側鍊和Rollup,它們包含自己的中心化部分。諸如51%攻擊之類的硬審查形式以及針對它們的技術和社會解決方案也被忽略了。