買以太坊 買以太坊
Ctrl+D 買以太坊
ads

ARK:讀懂加密內存池:解決 MEV 和審查問題的全新設計空間_NAR

Author:

Time:1900/1/1 0:00:00

撰文:Jon Charbonneau

編譯:0x11,Foresight News

加密內存池是解決 MEV 和審查問題的強大工具,目前已有多種可以單獨使用的相關方案,它們之間也可以組合使用。

這篇文章概述了 Justin Drake 圍繞該主題的演講(Columbia、Amsterdam 和 Flashbots Roast)所構建的設計空間。你們中的大多數人可能在第一次觀看時感到難以理解,所以我試著簡單地進行分解和擴展。

基本思想:允許用戶提交加密交易,區塊生產者提交這些交易才能解密:

用戶加密并廣播交易

加密交易提交

交易被解密

事務執行(注意:提交、解密和執行可能在單個 slot)

兩個問題似乎可以迎刃而解:

MEV:如果我看不到它,我無法搶先交易

審查:除非排除所有加密交易,否則我無法審查交易(如果許多交易是加密的,成本可能會非常昂貴)

這里需要確保的一個關鍵點是保證解密不依賴于用戶。有幾種方法可以實現這一點:

相信某個第三方,私下向他發送數據,他可以解密和查看數據,但承諾在數據提交到鏈上之前不會公開披露。這就是 Flashbots Protect 等產品的工作方式。

你可以利用受信任的硬件。明文可以在受信任的硬件中運行,但在提交交易之前不會公開解密。最著名的例子是 Flashbots SUAVE 的 SGX。

一個委員會可以聯合起來強制解密密文,但是需要簽名者達到一個門檻才能做到這一點。例如,你的「閾值」可能是需要 2/3 的驗證者同意解密。TED 已經在幾個不同的領域進行了研究,包括:

以太坊 L1——Shutterized Beacon Chain

Shutter Network —— 以太坊 L2s

Arbitrum —— Chainlink 的 FSS

Osmosis & Anoma —— Ferveo

仔細查看 Shutterized Beacon Chain 提案,驗證器的一個子集(「keypers」)使用分布式密鑰生成器(DKG)生成公鑰 / 私鑰對。每個人都可以看到公鑰,但私鑰在委員會中被分成多份保管。重建私鑰和解密需要密鑰份額達到一定閾值(例如,2/3)。 

央行副行長范一飛:著力構建更加完備的農村數字金融體系:10月8日消息,中國人民銀行副行長范一飛日前在《中國金融》上撰文指出,將繼續牢牢錨定鄉村振興戰略目標,踔厲奮發、勇毅前行,切實發揮金融科技的創新賦能作用,著力構建更加完備、更為高效、更具普惠性的農村數字金融體系,為推進新時代鄉村振興貢獻更多金融力量。[2022/10/8 12:49:30]

用戶可以有選擇地加密交易,這些交易在其內容被解密和執行之前被包含在鏈上。區塊生產者使用明文交易(立即執行)和加密交易(計劃在未來的區塊高度)創建區塊。 

在生成并證明區塊 n -1 之后,keypers 應該生成并發布區塊 n 的解密密鑰。該密鑰可以解密區塊 n 內的交易。區塊 n 必須包含解密密鑰才能被視為有效。區塊的后狀態是這樣計算的:即在執行區塊中的明文交易之前執行區塊中的加密交易(按照它們的設置順序)。

TED 有幾個缺點:

缺乏問責機制:與傳統的安全假設不同,這里的惡意行為不可歸因或不可報告。Keypers 可以立即解密,你無法對其進行歸因。即使你假設驗證者的行為與激勵相容,驗證者集之外的三字母機構(譯者注:三字母機構是 CIA、FBI 等機構的總稱,它們保衛美國,但通常行事神秘)也可能會對他們施加影響。 

誠實多數假設:不誠實的委員會可能會產生問題,例如選擇從不解密某些消息,或秘密解密他們不應該解密的消息(例如,在政府機構的要求下,或自私地進行 MEV 提取)。在大多數情況下,區塊鏈實際上依賴于經濟上理性的多數(即,罰沒的懲罰通常超過惡意雙花等行為的經濟激勵)。通過閾值加密,這個假設被轉移到真正誠實和無私的多數。

破壞協議的穩定性:本質上是上面兩點的結合,TED 增加了驗證者作惡的動機,并且不容易受到懲罰。

活躍度減弱:更高的解密閾值增強了協議安全性)。然而,這直接削弱了活躍度。例如,大規模的網絡中斷會導致一半的驗證者中斷,現在可能造成協議停止。特別是對于非常強調「第三次世界大戰」活躍度的以太坊來說,這是一個不可接受的權衡。 

糟糕的用戶體驗:TED 可能會根據實施細節增加不同程度的延遲和成本。

次優價值分配:讓我們看一個簡單的搶跑(frontrunning)示例:

1 ETH 價格為 1000 美元 

美聯儲卡什卡利:我們可能在不久的將來陷入衰退:8月11日消息,美聯儲卡什卡利:我們可能在不久的將來陷入衰退。經濟衰退的風險不會阻止我們采取必要的行動,我們將把通脹率降至2%。(金十)[2022/8/11 12:16:40]

如果我將交易發送到 vanilla 內存池 ——我得到 990 美元(搜索者 frontruns 和 backruns,凈賺 10 美元)

如果我將交易發送到 TED 內存池——我得到 995 美元(搜索者無法搶跑,但我推動了本地現貨價格,為搜索者創造了 5 美元的套利機會)

我將交易發送到最佳訂單流拍賣——我得到了 1000 美元(我沒有得到 frontruns 或 backruns。或者類似地,我確實獲得 frontruns 和 / 或 backruns,但搜索者必須在競爭性拍賣中出價 10 美元獲得這樣做的權利,最終結果是相同的。)

在這種情況下,你會將錢留在桌面上讓其他人拿走。一個經濟上理性的用戶應該公開足夠的訂單信息,這樣他們就可以得到接近訂單全部價值的補償。他們不應該天真地對他們的交易進行閾值加密,隱藏它提供的價值(允許其他人捕獲它)。 

這是一個超理想化的例子,但你明白了,掩蓋問題并不總能解決問題。TED 可以是一個有用的工具,但它不是 MEV 的靈丹妙藥。在某些情況下, CR 來說可以說更好。 

此外,以太坊帶來了額外的復雜性。例如,它缺乏即時終結性(盡管這可能有一天會隨著單時隙終結性而改變)引入了圍繞重組的問題。我相信至少在以太坊的 L1 中,這里的權衡利大于弊。增加以太坊的信任假設,增加共謀的動機(不被發現),以及降低其活躍度所帶來的傷害可能比好處更多。 

然而,與以太坊 L1 相比,這些權衡中的一些對于 L2 或其他 L1 可能更容易接受。 

使用延遲加密,你可以將加密信息設置為在一定時間后自動解密,這是與 VDF 相關的順序計算。

要實際實施 DED,你需要 VDF ASIC。幸運的是,以太坊基金會和協議實驗室一直致力于構建它們,最近獲得了 GlobalFoundries 構建的芯片的第一批測試樣本。這些 VDF 評估器應該能夠進行極快的順序計算。這些 VDF ASIC 也適用于時間鎖定謎題和 DED。 

VDF 還需要生成 SNARKs。這可以使用 GPU 來完成,但理想情況下,以太坊基金會也希望為 SNARK 生產相關的 ASIC。 

總的來說,你不再信任某個委員會,因此通常首選安全假設。但是,需要專門的硬件并不那么理想,所需的延遲還可能會增加系統的延遲。有趣的是,你可以結合使用 TED + DED 的優勢……

WED 很強大,但別高興太早,它不會很快到來。這是非常奇特的東西,還需要很多年來實現。但它很酷并且有助于理解,所以我將簡要介紹一下。 

烏方:俄軍或重新集結部隊,為下一階段攻勢做準備:7月17日消息,據路透社報道,當地時間16日,烏克蘭國防部情報總局發言人表示,俄軍不只是從空中和海面上發射導彈,整個前線都遭受炮擊,俄軍“確實在整個前線動員起來,顯然在為下一階段的攻勢做準備。烏克蘭軍方表示,俄軍似乎正在重新集結部隊,準備進攻頓巴斯地區一個具有象征意義的城市斯拉夫揚斯克。(金十)[2022/7/17 2:18:57]

WED 允許任意見證人強制解密密文。例如,你的規則可以是「只有在以太坊完成包含加密有效負載的區塊后才能解密」,并且只有在證明這一點的情況下才會解密。你可以想象基本上任何你想要實現的復雜語句都需要 SNARK。

WED 實際上是 TED 或 DED 的概括。你甚至可以構建兩者的混合體。例如,指定證人可以證明:

快樂的結果:門檻委員會已經簽署了解密,或者 

預備方案:所需時間已過,返回以延遲解密

這提供了一個預備,以防閾值委員會沒有響應。這也允許你在參數化 m/n 閾值假設時更加保守(即,你可以要求每個委員會成員或幾乎所有成員都簽字)。

快樂的結果:最佳用戶體驗,整個委員會即時確認 

預備方案:延遲和 UX 暫時受到影響,但活性得以保留

實際上,WED 可能會針對你想要的任何聲明驗證 SNARK。例如: 

TED :你可以有一個 SNARK 來證明「我有 n 個簽名中的 m 個簽名」來強制解密。

DED :你可以使用 VDF 并進行順序計算(這非常昂貴)。然后在你的計算結束時,你有一個簡短的證明。然后你拿那個簡短的證明并將它包裝在一個 SNARK 中(讓它更短),然后輸入它來強制解密。

這里的每個加密方案(閾值、延遲和見證),你都可以具有同態性。也就是說,可以創建閾值 FHE 、延遲 FHE 和見證 FHE 方案,以實現對密文的任意操作。

in-flight 和可信硬件(例如,SGX)解決方案也可以模擬相同的功能——對私有數據進行操作。這是因為在這兩種情況下,受信任的第三方或硬件都可以訪問明文本身進行操作。不過,在理想情況下,我們希望移除這些信任假設,僅依賴強化密碼學。

我們可以想象一個例子:

m1 = 事務 1

m2 = 事務 2

f(x) = 構建一個區塊 

然后所有五個解決方案都可以復制以下功能: 

Cosmos社區提案:建議提供15萬枚ATOM資助轉移至Cosmos的藍籌項目:6月27日消息,Cosmos社區發布新提案,該提案建議提供15萬枚ATOM資助轉移至Cosmos的、將基于CosmWasm建立的藍籌項目以及consumer chain的啟動。該提案表示,將重點關注可以從流動性質押以及鏈間安全性(Interchain Security)中受益的項目,使得Cosmos Hub鞏固作為Cosmos生態流動性質押資產主導的地位。此外,該資金還將用于資助驗證節點“P2P”啟動consumer chain,并將其作為托管Lido Finance流動性質押的鏈。[2022/6/27 1:34:09]

當我們考慮如何隱藏交易元數據和使用加密輸入構建最佳區塊時,請記住這種能力。理論上,這里的五個選項中的每一個都可以用于下面需要「同態」的解決方案。 

元數據是提供有關其他數據的信息的數據,但不提供該數據的內容(例如消息的文本或圖像本身)。出于我們的目的,交易元數據可以包括發送方的 IP 地址、隨機數、Gas 支付等。

理想情況下,我們希望隱藏盡可能多的元數據。否則,它可能會泄露信息,讓外人可以推斷你的交易(可能會為他們提供足夠的信息以試圖搶跑或審查等)。但是,我們需要元數據來驗證交易是否有效、是否支付了必要的費用、是否是垃圾郵件等。

讓我們來看看屏蔽各種元數據的一些解決方案。

非常簡單——人們可以使用像 Tor 這樣的服務來私下廣播并屏蔽他們的 IP 地址。

你需要在 p2p 級別知道加密交易是有效的,特別是它具有有效簽名。我們可以使用 SNARK 來證明簽名有效,這將伴隨每筆加密交易。SNARK 包含三個重要部分:

用戶想證明自己的交易密文是有效的,它對應交易明文,它的簽名是有效的。要證明任何簽名有效,你需要與帳戶關聯的公鑰來驗證它。

查找以太坊狀態根(公共)。

提供與此狀態根相對應的發送者公鑰 Merkle 證明(私有)

驗證簽名,你需要根據狀態根驗證發件人公鑰 Merkle 證明。用 SNARK 證明你的發送者公鑰 Merkle 證明是有效的并且你的簽名是有效的。

你需要證明加密交易的發送方有足夠的 ETH 來支付這筆費用。我們可以再次使用 SNARK。 

這是一個類似的過程,但現在你提供了一個 Merkle 路徑到狀態根,它證明了發送者的余額(而不是發送者的公鑰)。你驗證 Merkle 路徑并驗證余額是否足以支付所需的 Gas。

僅執行反序列化交易、檢查其余額和檢查簽名等基本操作所需的最低 Gas。你可以規定發件人始終必須支付此最低金額。 

現貨黃金短線拉升5美元,現報1851.56美元/盎司:行情顯示,現貨黃金短線拉升5美元,現報1851.56美元/盎司。現貨白銀短線上漲0.15美元,現報22.11美元/盎司。[2022/6/7 4:08:56]

但是在執行時間上,你還需要有實際交易本身的 Gas limit,這個 Gas limit 也可以加密。所以當你去實際執行交易本身時,你會檢查發送者是否有足夠的余額來支付當時交易的全部 Gas:

如果是:運行交易并在最后發出退款

如果否:中止交易,發送方只需支付 21000 Gas

隨機數是一個值,等于從一個地址發送的交易數量(或一個賬戶創建的合約數量)。用戶的隨機數從他們的地址開始交易時每次交易都會增加 1。 

我們今天擁有隨機數的一個原因是,用戶無法通過大量交易向 mempool(DoS 攻擊)發送垃圾信息,以增加他們交易被執行的可能性。節點將只查看具有該隨機數的一筆交易并丟棄其他交易。 

對于加密交易,你將通過 SNARK 證明其隨機數是之前的隨機數 + 1。然而,如果節點將不再能夠分辨出許多加密交易具有相同的隨機數,那么上述的 DoS 攻擊可能會帶來不利影響。

為了保留這種反 DoS 屬性,我們想添加一個「重播標簽」。它對交易進行了獨特標記,因此你不能再為一個地址發送大量交易垃圾。要創建此標簽,你可以簡單地散列(隨機數,私鑰)。因為隨機數和私鑰都是固定的,如果用戶嘗試使用相同的隨機數和私鑰發送兩者,不同的交易將具有相同的重播標簽。

最后,你可能希望保留一定程度的靈活性。假設 Gas 價格已經變動,你有理由希望以更高的價格重新廣播交易。為了緩解這種情況,你可以散列(隨機數、私鑰、slot)。現在,你可以在每個 slot 調整一次你的交易,每個 slot 每個地址只能發送一筆交易。  

加密數據大小為 n 的明文將創建大小為 n 的密文。即使是這個大小也足以從概率上計算出某些交易。我們可以通過「填充」來緩解這個問題——在加密之前向明文添加 0,將位數擴展為 2 的下一次冪(例如,向 5 位的密文添加三個 0)。 

在以下示例中:

白色 = 填充的 0

其他顏色=實際交易數據

當你構建區塊時,你可以連接這些密文,但這有兩個問題:

不完美的打包——額外的 0 意味著你必須為額外的數據可用性付費

不完美的隱私 - 也許 2 的冪就提供了足夠信息。交易規模分布不明確,因此某些規模仍可能從概率上揭示足夠的信息。

一個更好的解決方案涉及「剪掉」填充: 

將每筆交易填充到最大大小(此處為 16)并同態加密

在密文上應用一個函數以有效地打包明文,刪除不必要的填充

現在你得到了最佳打包。

通過填充到「最大」尺寸,這實際上可以將最大值設置為實際區塊大小限制轉換為的值(即,如果 30mm Gas 轉換為大約 x kB)。這意味著將每個事務填充到 x kB 的大小。或者,如果說 99.9% 的交易通常在 y kB 范圍內, 你可以設置更小更實用的 y kB 大小。

同樣,可以使用可信硬件而不是前面討論的 FHE 來模擬這種「剪輯」。例如,你可以運行 SGX 并將加密交易接收到你的可信飛地。在飛地中,可以對數據進行明文操作,以剪掉不必要的填充以密集打包區塊。然后數據被加密并運回,隨后是一種強制解密方法(閾值、延遲、見證)。 

請注意,在任何一種情況下,輸出都應該是某個固定大小,因此你可能會留下少量填充。 

交易包選擇:同態和不相交的狀態訪問列表

假設我們解決了上面的所有問題,區塊生產者能夠根據大小將所有內容最佳地打包到一個塊中。但我們還有另一個問題——區塊生產者能否在經濟方面最優地打包所有東西?我們希望在不丟棄價值的情況下去中心化構建區塊。否則,它無法與中心化實體競爭。

解決方案 1 - FHE EVM

直接的答案:完全在 FHE 中運行 EVM。這將允許去中心化構建最佳區塊,為區塊生產者獲取最大價值。他們選擇并排序使價值最大化的交易。 

不幸的是,這并不是件簡單的事。FHE 電路最大的成本是它的「深度」(即最長路徑中的門數)。特別是,它的乘法深度非常重要。例如,前面描述的刪除填充的事務「裁剪」是一個相當「淺」的電路(即,它非常簡單)。通過硬件加速,此類用例可能在 2-3 年內在計算上可行。 

但是,使用 FHE 運行整個 EVM 需要非常深且復雜的電路。我們終于開始在 zkEVM 電路方面取得一些有意義的進展(這比運行標準 EVM 的計算密集度高幾個數量級),但 FHE EVM 甚至更遙遠。 

再次注意,使用可信硬件模擬此功能也是可行的(例如,SUAVE 中的 SGX 這樣做)。

解決方案 2 - 狀態訪問列表

或者,我們可以更有限地使用 FHE 和訪問列表。這比運行完整的 FHE EVM 更容易實現——它是一個更淺的電路。在這個設置中,交易包可以包括一個加密的狀態訪問列表及其出價。這確切地指定了他們的包將訪問狀態的哪一部分。 

現在,區塊生產者的同態電路只需為具有不相交狀態訪問列表的交易包挑選最高出價。 

請注意,這并不是嚴格意義上的最優。例如,一個區塊中的第二高出價 (T 2 ) 可能達到與最高出價 (T 1 ) 完全相同的狀態。在這個訪問列表范例中,區塊生產者會丟棄第二筆交易。但是,有可能 T 1 和 T 2 都有效。在這種情況下,FHE EVM(或今天的中心化區塊生產)將獲得更多價值。 

它并不完美,但從我們今天的情況來看,這條捷徑應該足夠接近最優了。絕大多數 MEV 仍然會使用不相交的訪問列表,因為像上面這樣的沖突示例非常罕見。 

你甚至可以通過允許驗證者進行「虛擬」交易來試圖隱藏交易存在的泄漏,因此內存池總是被填滿。驗證者還需要一個 SNARK 來證明他們是被允許創建這些虛擬交易的驗證者。當「真實」交易出現峰值時,驗證者將廣播較少的虛擬交易。當真實交易下降時,驗證器將發出更多虛擬交易。 

假設一切都使用 FHE 加密,你將能夠檢測到添加到相應交易的「虛擬標志」。你可以在打包實際區塊時忽略這些交易。

背景速覽:ZK Rollup 的一個優勢是他們不需要在鏈上發布完整的交易數據。他們發布狀態更新之間的「狀態差異」就足夠了。相反,Optimistic Rollups 必須在鏈上發布完整數據,以防對欺詐證明進行仲裁。這種較低的數據要求為 ZK Rollup 節省了成本,因為它們在數據可用性層消耗的資源較少。 

將這一點帶入我們的對話中——理想情況下,你不希望在加密內存池的情況下失去這種好處。你想要獲得加密的內存池,并且仍然保留 ZK Rollup 僅發布狀態差異的能力。答案在這里——FHE zkEVM。聽起來很酷,但你可能又要等待良久。

一個缺點是單獨發布狀態差異可能會降低 Rollup 完整節點的響應速度。例如,在純分叉選擇規則 Rollup 中,完整節點可以在數據可用性層完成并確保有效性時立即完成他們對 Rollup 的視圖。如果你只發布狀態差異(而不是完整的交易數據),即使是完整的節點也需要提交 ZK 證明才能確認他們對 Rollup 的視圖。就目前的情況而言——這些證明需要一段時間才能生成,但可擴展的數據可用性層有望很快變得非常便宜。

加密內存池是一個迷人且有前途的設計空間,但仍然存在一些實際挑戰。例如,你可能只是將某些問題轉移到堆棧的其他地方。錢包可以在源頭上審查你以防止交易加密 / 路由,他們可以提交有效負載以在你的交易前 / 后運行(或出售權利)等。一個可能的答案是用戶在本地創建交易而不依賴于服務提供商。 

關鍵是這里沒有靈丹妙藥,但如果設計得當,它們可能是解決方案的重要組成部分,可以通過不同的功能和信任假設來改善當前情況。

Foresight News

企業專欄

閱讀更多

金色財經 善歐巴

金色早8點

白話區塊鏈

Arcane Labs

Odaily星球日報

MarsBit

歐科云鏈

深潮TechFlow

BTCStudy

Tags:NBSBSPNARARKNBS價格BSPT價格lunar幣今日最新價格Baby Shark Tank

火幣下載
BIT:Web3 游戲:Arbitrum上的游戲分析_WEB

Mar. 2023, Daniel數據源: Arbitrum Ecosystem Overview雖然L2的甜蜜點一直是DeFi.

1900/1/1 0:00:00
比特幣:金色早報 | SVB銀行被加州監管機構關閉_EDEL幣

▌ 美國聯邦存款保險公司:SVB銀行被加州監管機構關閉金色財經報道,美國聯邦存款保險公司稱,SVB銀行被加州監管機構關閉,硅谷銀行擁有約2090億美元資產,該銀行是今年第一家破產的受保險機構.

1900/1/1 0:00:00
COI:市場凌晨集體跳水 誰在裸泳?_transfercoin

金色財經記者Jessy 市場終于跌了,3月10 日凌晨,加密市場集體跳水,比特幣最高跌幅達近9%,大多數幣種的跌幅都在10%左右,加密總市值跌破萬億.

1900/1/1 0:00:00
TPS:梳理三大ZK系Layer2交互策略_SWAP

受 Arbitrum “撒錢”刺激,業界的空投熱情再次被點燃,而 ZK Rollup 系 Layer 2 們則成為了所有羊毛黨們關注的焦點.

1900/1/1 0:00:00
USD:美國銀行業巨震后 各領域Dapps受何影響_BSPAY

上周末,市場因美國銀行界可能發生的系統性危機而受到沖擊。伴隨硅谷銀行(SVB)正式破產,其客戶之一 Circle 的 USDC 部分質押品存在損失可能,隨之 USDC 脫鉤.

1900/1/1 0:00:00
馬斯克:特斯拉的AI野心:向人類預警 給硅基帶路_人工智能

作者:戴老板/何律衡 2017年6月,Google發表了一篇名為Attention Is All You Need(注意力是你需要的全部)的論文.

1900/1/1 0:00:00
ads