原文標題:《如何實現區塊構建者角色的去中心化?這里有兩種方法》(Decentralizing the Builder Role)
撰文:Jon Charbonneau
快速回顧——本報告的一個關鍵主題是 Vitalik Buterin 在《終局游戲》一文中的想法,即所有前進道路似乎都通向:
中心化區塊生產
去中心化和去信任的區塊驗證
繼續提供抗審查
生產者 - 構建者分離(PBS)試圖將中心化與構建者隔離(遠離驗證者),然后以太坊添加盔甲(例如 crList)以減輕構建者的審查權力。構建者自然會很老練,所以懸而未決的問題主要是他們的中心化程度。我們是在說 1 個構建者?還是 10 個?
一個中心化構建者仍然不理想,那么我們能做得更好嗎?解決這個問題有兩種方法:
擁有許多構建者的去中心化市場 —— 確保構建者市場在沒有根深蒂固的參與方的情況下具有競爭力。許多構建者競爭并只獲得很小的利潤。這個角色變得非常商品化。這需要解決諸如排他性訂單流之類的問題,否則這些問題可能會鞏固單個構建者。
去中心化構建者角色本身 —— 使獲勝的構建者本身成為去中心化的協議。一組去中心化的參與者都有助于構建一個給定的區塊。
本報告主要圍繞 Vitalik 最近的 SBC MEV 研討會演講而構建。我將把它分解并提供進一步的分析。
這里實際上有兩個潛在的問題:
技術可行性——我將介紹一些可行的路徑(存在其他可能性,并且正在積極探索中)
競爭力——用戶真的想使用它嗎?或者一個中心化構建者總是會在功能和效率上勝過去中心化構建者?
中心化構建者很容易。下面考慮了一些可以去中心化的分布式構建者,需要在許多搜索者和用戶之間聚合捆綁和交易:
算法 - 構建者運行算法來聚合搜索者的捆綁包和其他交易,然后自己填寫區塊的其余部分。該算法及其輸入可以分散。(請注意,這里假設分布式構建者僅運行一種算法的簡單情況。實際上,分布式構建者中的不同參與者可能在運行不同算法時貢獻區塊的不同部分。)
Poly Network攻擊者:想為Poly Network提供有關如何保護其網絡安全的提示:金色財經報道,Poly Network攻擊者再次發布了自問自答。攻擊者稱:“歸還代幣一直是計劃中的。我對金錢不是很感興趣。我知道人們受到攻擊時會很痛苦,但他們不應該從這些攻擊中學到一些東西嗎?我在午夜之前宣布了退還的決定,所以相信我的人應該好好休息。我想為Poly Network提供有關如何保護他們網絡安全的提示,以便他們在未來有資格管理這一10億美金級別的項目。 Poly Network是一個設計良好的系統,它將處理更多資產。”對此網友表示,“在午夜之前”似乎暴露了該攻擊者所處的地理區域。[2021/8/12 1:49:25]
資料來源:基于 Vitalik Buterin 的圖片
資源?- 資源需求將顯著增加,尤其是使用 Danksharding。區塊將攜帶更多數據并且構建起來更加復雜→構建它們的帶寬和硬件要求更高。不需要一個節點來構建和分發整個區塊,而是可以在多個節點之間拆分工作。
額外的構建者服務——構建者可以發揮創意并提供新的服務,例如交易預確認。為了使分布式構建者取得成功,他們需要提供與中心化構建者相比具有競爭力的服務。
訪問訂單流(orderflow)——將訂單流發送給單個構建者非常簡單,并且可以為用戶帶來好處。也許他們承諾不搶跑你的交易,他們可以在你后面給你一些回扣。在潛在的許多參與者之間分散對訂單流的訪問是比較棘手的。
隱私——同樣,相信您的訂單將私下執行的構建者是最容易的,因此您可以將其發送給他們。分布式構建者需要一種方法來提供交易隱私,同時在此過程中還包括許多去中心化方。
跨鏈執行——分布式構建者需要一種與外部參與者協調以捕獲跨鏈 MEV 的方法(例如,如果鏈 Y 上的交換將以原子方式完成,則僅在鏈 X 上完成交換)。
如果我們想在整個區塊生產供應鏈中避開受信任的第三方,有幾個障礙需要克服。我將在這里解決的一些挑戰包括:
如果建設者看到搜索者提交給他們的捆綁包,他們可以復制交易,然后用他們自己的地址替換搜索者的地址。構建者在不獎勵搜索者的情況下捕獲了 MEV。
調查:大部分數字資產持有者擔心死后資產如何被處理:2019年10月到2020年6月的調查顯示,大部分數字資產持有者擔心死后如何處理資產,但是其中很大一部分不會使用遺囑、信托或者其它工具。89%的受訪者不同程度上表示他們很擔憂數字資產在他們死后能否傳遞給家人或者朋友,沒有人說完全不擔心。(Cointelegraph)[2020/7/8]
神圣(enshrined)PBS 和 MEV-Boost(加上中間可信中繼)中使用的提交披露方案從提議者 ←→ 構建者關系中消除了同樣的 MEV 竊取威脅,但對于搜索者 ←→ 構建者來說,這是一個未解決的問題。搜索者目前只信任構建者,但信任不是可擴展的解決方案。
保護搜索者免受 MEV 竊取意味著他們的捆綁包不能以明文形式發送。但是,如果它們不在明處,那么構建者如何聚合它們呢?
捆綁內容最終必須明確。從密文→明文的過程是什么,我們如何在沒有信任假設的情況下實現這一目標?
請注意,這并不是構建分布式構建者所面臨的挑戰的詳盡列表。還有其他懸而未決的問題(例如,您如何防止分布式構建者受到他們被迫模擬的大量不良捆綁包的 DDOS 攻擊?)和未知的未知數。
一種方法利用可信硬件 - TPM(可信平臺模塊)。排序如下所示:
在解密區塊之前,TPM 必須確信兩件事:
提議者簽名 - 這種對區塊頭的承諾(沒有看到區塊體)防止提議者竊取 MEV。如果提議者在構建者區塊體被公開后(通過提議替代區塊)試圖為自己竊取 MEV,任何人都可以提出他們最初的承諾。這證明提議者在相同的區塊高度簽署了兩個區塊→他們被削減了。
提議者簽名的可用性證明 - 防止聚合者 + 提議者串通。提議者的承諾存在是不夠的——它必須是可用的。如果只有聚合器收到承諾,他們可以簡單地永遠隱藏它,允許提議者提出替代的 MEV 竊取區塊。TPM 必須確信最初的提議者簽名實際上是公開的。
有幾種方法可以證明提議者簽名的可用性:
證明者 - 驗證者可以證明看到提議者簽名,然后 TPM 可以檢查提議者和這些證明者簽名。這需要更改以太坊協議。
低安全性實時數據可用性預言機——像 Chainlink 這樣的東西可以證明簽名存在并將被重新廣播的事實。
大咖零距離 | 寶二爺,李笑來的成功我們能復制嗎?該如何抓住減半行情?:3月3日18:00,金色盤面邀請幣圈KOL老俞說幣做客金色財經《大咖零距離》直播間,將分享《寶二爺,李笑來的成功我們能復制嗎?該如何抓住減半行情?》,敬請關注,欲進群觀看直播掃描海報二維碼報名即可![2020/3/3]
聚合器內的 M of N 假設 - 聚合器本身可以是分布式 M of N 協議。聚合器協議中可能存在閾值投票,您對此有一個誠實的假設。
這種方法需要 M of N 聚合器,但我們可以擺脫 TPM。該過程如下所示:
搜索者發送加密到一個閾值密鑰的捆綁包。捆綁包包含訪問列表(他們訪問的帳戶和存儲槽的列表)和正確性 SNARK(注意快速生成此內容的技術復雜性)。
聚合器合并不相交的捆綁包,使總出價(bid)最大化。(我們在這里只討論聚合不相交的出價,但有可能進一步改進這一點。)
聚合器必須計算狀態根
最后一步很棘手。計算狀態根需要清楚地看到交易,或者至少看到它們的狀態更新。然而,即使看到狀態更新也可能足以進行 MEV 竊取。對于何時計算狀態,我們有幾個選項:
讓一個聚合器節點解密然后計算狀態。但是,他們可以與提議者勾結。
只有在提議者承諾支持接收到的任何區塊和狀態根之后,才計算狀態根。這種設置將利用 EigenLayer - 提議者讓自己受到額外的削減條件才能參與。提議者發送一條鏈下消息,承諾他們將依次生成的唯一區塊是包含這組捆綁包(無論它們是什么)的區塊。只有在提議者做出承諾之后,捆綁包才會被解密,并計算狀態根。如果提議者違反了這一承諾,那么他們將被削減。
請注意,對于此 EigenLayer 構造,也可以避免前面提到的 SNARK 要求。這里的提議者可以預先提交一個替代區塊或替代區塊組合,如果提交給他們的區塊或替代區塊組合被證明是無效的。然后可以使用一個欺詐證明來檢查第一個區塊組合的無效性。
EigenLayer 技術可以直接用于不相交的捆綁合并,或者它可以依賴于每個插槽內的多輪順序拍賣。(請注意,如果需要,也可以在此順序構造中避免 SNARK 要求。)
例如,以下可能發生在一個區塊中:
第 1 輪
1. 提議者簽署一個 EigenLayer 消息,預先同意一些交易(包括捆綁 1),從而在這一輪中最大化他們的出價以啟動區塊
聲音 | 礦海學院創始人Andy:如何利用金融工具鎖定利潤是新時代礦工必須補的一門課:在今日TokenInsight對話首席第20期《比特幣挖礦,你真的懂嗎?》的直播中,針對“是否在未來會出現更加智能的豐枯水期預測工具以輔助礦工進行決策?的提問,礦海學院創始人Andy指出:枯水期來臨,電力資源減少,勢必會淘汰小算力的機器,受影響的將是這部分礦工群體。2019年四川灃水期延遲,這讓很多礦工機器停放在礦場無電可挖,如果有準確的灃枯水期預測工具,相信會為礦工提供更好的決策參考。現在大部分礦工考慮的是如何能夠找到低價合規穩定的電力資源,然后大部分礦工應該都希望比特幣的價格可以漲起來,早期礦工依靠囤幣就可以賺錢,這在幣價上漲行情下可行,可是2018年持續下行,如何利用金融工具鎖定利潤是新時代礦工必須補的一門課。[2019/9/6]
2. 構建者公布該區塊的這一部分
3. 提議者發布狀態差異
第 2 輪
4. 提議者簽署一條 EigenLayer 消息,預先同意額外的交易(包括捆綁 2),從而在本輪中最大化他們的出價以繼續這個區塊
5. 構建者公布該區塊的這一部分
6. 提議者發布狀態差異
第 3 輪…
一個缺點是這種合并可能不是最理想的。例如,提議者可能已經預先同意捆綁包 1,然后他們收到了與捆綁包 1 沖突的更有利可圖的捆綁包 2。他們將不得不拒絕此捆綁包 2。
具有相同訂單流的中心化構建者可以看到所有交易,當他們在插槽末尾構建區塊時可以包含捆綁包 2(因為他們沒有預先同意捆綁包 1)。
另一個潛在的缺點 - 順序拍賣可能會使非原子 MEV 變得非常困難,因為如果世界狀況發生變化,搜索者將無法取消或更新他們的出價(一旦承諾)。如果您需要在交易被包含之前 10 秒以上提交交易,那么如果您保留更新出價的能力,您將無法承擔盡可能多的風險。
但是,該示例假定相同的訂單流。實際上,由于它提供的保證,這種分布式構建者可能能夠在接收更多訂單流方面勝過中心化構建者。更好的保證 → 更多的訂單流 → 構建最有利可圖的區塊(即使有其他缺點)。然后,由于分布式構建者始終提供最高價值的區塊,因此提議者選擇這種結構(切斷自己接受其他構建器的區塊)將具有經濟意義。
為了取得成功,分布式構建者提供的價值可能需要超過它帶來的缺點(包括效率較低的合并和非原子 MEV 的挑戰)。
布魯金斯學會:全球監管機構之間沒有就如何處理加密貨幣達成協議:據福布斯消息,布魯金斯學會昨日發布關于央行和加密貨幣的研究報告。報告指出,世界各地的銀行監管機構并未采取統一的方式來規范加密貨幣。該報告還指出,目前的大型經濟體中,沒有任何一個國家的央行認真考慮是否推出自己的加密貨幣。然而,美聯儲、日本央行、加拿大央行、英國央行和歐洲央行均表示正在評估央行加密貨幣的利與弊。研究表明,央行領導人目前主要對于加密貨幣潛在的逃稅和洗錢可能表示擔心。[2018/4/18]
Danksharding 使驗證者的節點要求較低。單個節點只負責下載區塊的一部分。
然而,最初提出的設計將有意義地增加構建以太坊區塊的硬件和帶寬要求(盡管驗證者總是可以以分布式方式重建)。那么問題是我們是否甚至可以以分布式方式進行初始構建。這將消除對單個高資源實體構建完整區塊、計算所有 KZG 承諾、連接到許多子網以發布它,等等。
(注意:這個架構是否會使用子網或類似 DHT 的開放研究問題,但我會在這里假設子網)。
實際上很有可能以分布式方式構建。分布式糾刪碼甚至沒有那么難。
首先,包含每個數據交易的人負責對其進行編碼并將 blob 區塊傳播到子網和數據可用性網絡。
當聚合器選擇包含哪些數據交易時,他們可以使用實時 DA 預言機。聚合器不能只自己進行數據可用性采樣 (DAS),因為當只有一方進行 DAS 時,這并不安全。所以一些分布式預言機需要下載整個東西。
然后網絡可以從這里填寫列。請記住,數據在此 2 D 方案中得到擴展。例如,每個 blob 是 512 個 chunks,但它被擦除編碼為 1024 個 chunks。然后擴展也垂直運行。例如,您在此處說圖像中有 32 個 blob,然后垂直擴展為 64 個 blob。多項式承諾在每行水平和每列垂直運行。
資料來源:Vitalik Buterin
由于 KZG 承諾的線性,你可以填寫這些列,這將用于以太坊的分片設計。
KZG 的承諾 (com) 具有線性關系。例如,您可以說 com (A) + com (B) = com (A+B)。
你在證明中也有線性。例如,如果:
Q? 證明 A = 在某個坐標 z 處的某個值,并且
Q? 證明 B = 在同一坐標 z 處的某個值,則
您可以對 Q? 和 Q? 進行線性組合,這本身就是證明 A 和 B 的相同線性組合在相同坐標 z 處具有正確值
更正式地說:
讓 Q? 證明 A (z) 和 Q? 證明 B (z)
然后,cQ? + dQ? 證明 (cA + dB)(z)
這種線性屬性允許網絡填入所有內容。例如,如果您有第 0 列中第 0-31 行的證明,那么您可以使用它來生成第 0 列中第 32-63 行的證明。
只有 KZG 具有這種承諾線性和證明線性(IPA 和 Merkle 樹,包括 SNARK 的 Merkle 樹不能同時滿足這兩個)。
要更深入地了解以太坊的 2 D KZG 方案,您可以查看我的以太坊報告或 Dankrad 最近的 KZG 演講。Vitalik 的這篇研究文章?還談到了將 KZG 與 IPA 用于 DAS 的考慮因素。
這里的 TLDR 是 KZG 有一些非常好的屬性,允許分布式區塊構建和重建。您不需要任何一方來處理所有數據、擴展所有數據、計算所有 KZG 承諾并傳播它們。它們可以為每一行和每一列單獨完成。如果這樣做了,我們就沒有剩余的超級節點要求:
資料來源:Dankrad Feist 和 Vitalik Buterin
如果我們無法實現所有 KZG 魔法,那么這是下一個最佳選擇。
行承諾的前半部分只是 blob,所以沒有問題。然后,構建者必須提供其余部分和一些列承諾。
然后這些承諾必須匹配。所以 j?? 坐標處的 i?? 行承諾 = i?? 坐標處的 j?? 列承諾。
構建者必須提供行承諾 R?…R? 和列承諾 C?…C?,其中 R?(x?) = C?(x?)
以及承諾等價的證明
這可以像討論的那樣以分布式方式完成,但請注意,這樣做更難:
前面描述的 KZG 方法 - 可以在一輪中完成。構建者只檢查所有 blob 然后發布。網絡在不涉及構建者的完全獨立的過程中填充行。
此處的分布式方法 - 至少需要兩輪協議。構建者需要參與。
以太坊區塊時間很慢,用戶喜歡快速的區塊時間。以太坊做出這一犧牲主要是希望支持一個大型去中心化驗證者集——Vitalik 在這里寫過的權衡空間。但是我們能做到兩全其美嗎?
以太坊 rollup 用戶已經了解并喜歡這些預先確認。構建者創新也許能夠在基礎層提供類似的服務。
例如,構建者可以同意:
如果用戶發送優先級費用 ≥ 5 的交易,構建者會立即發送一個可執行的簽名消息,同意將其包含在內。
如果用戶發送優先級費用≥ 8 的交易,構建者甚至提供后狀態根。因此,較高的優先級費用迫使交易以某種順序被包含在內,從而使用戶可以立即知道該交易的結果是什么。
如果構建者不履行他們的承諾,他們可能會被削減。
在具有并行化 EVM 的未來,您還可以通過預先確認獲得更高級的信息。例如,只要用戶關心的狀態沒有改變,即使在給出預先確認之后,構建者也可以重新排序一個區塊中的一些交易。
是的。分布式構建者可以運行一些內部共識算法,例如具有快速出塊時間的 Tendermint。構建者可能會因以下原因受到處罰:
Tendermint 機制內的雙重確定性
簽署與 Tendermint 機制認同的內容不兼容的區塊
請注意,為了在此處獲得最佳安全性,需要對最終構建者簽名進行某種帳戶抽象。閾值 BLS 是不可歸因的——這意味著如果建設者只是 BLS 簽署區塊,如果出現問題,我們將不知道該削減誰。抽象簽名將解決這個問題。
對于任何構建者預確認服務(分布式或中心化的),請注意,預確認僅與他們實際構建獲勝區塊的能力一樣好。具有更高包含率的更占主導地位的構建者可以提供更好的預確認。
但是,您實際上可以通過分布式構建者獲得更強的預先確認,例如 EigenLayer 構造。如果當前提議者選擇了 EigenLayer 并且您獲得了預先確認,那么您的交易必須包括在內。您不再押注于中心化構建者的概率賠率,給您一個預先確認然后最終是否贏得區塊。
假設所有的技術都成功了,分布式構建者有成千上萬的參與者。你甚至可以讓大部分以太坊驗證者選擇加入提供亞秒級預確認的 EigenLayer 構造。與中心化構建者相比,這種分布式構建者具有一些不錯的競爭優勢:
經濟安全——支持預確認服務的巨額安全存款
信任——搜索者可以信任這個分布式構建者,而不是單個中心化實體
抗審查——與決定惡意的單個中心化運營商相比,破壞和控制任何安全的分布式系統都更加困難
中心化構建者可能具有其他優勢,一些是固有的,一些基于分布式構建者的構造:
更快地適應新功能——適應市場需求的靈活性是有價值的,而這可能是上述分布式構建者構造所缺乏的。理想情況下,您可以將來自多方的獨特功能聚合到一個區塊中。
更低的延遲——這總是相關的,但對于跨鏈 MEV 尤其如此,當世界狀態跨域變化時,搜索者更有可能想要更新他們的出價。(如前所述,他們還希望首先在整個區塊過程中靈活地修改出價。)
以太坊在很大程度上是根據最壞情況假設設計的——即使只有一個構建者存在,我們如何才能最好地減輕他們的權力(例如,審查能力)?
然而,我們可以(并且應該)同時努力避免這種最壞情況的假設。這意味著設計一個并不總是導致根深蒂固的中心化構建者的系統。這里描述的兩個想法提供了一些更有趣的可能性。然而,它們遠不是一個詳盡的清單——其他想法正在積極探索中,并且應該繼續探索。
此外,這不應被視為「專有訂單流的問題神奇地消失了,因此我們不再需要圍繞它進行構建。」dApps 必須繼續圍繞 MEV 進行機制設計創新,包括減少對專有訂單流的需求。MEV 不會去任何地方。
特別感謝 Vitalik Buterin、Sreeram Kannan、Robert Miller 和 Stephane Gosselin 的審閱和意見。沒有他們的工作,這份報告是不可能完成的。
DeFi之道
個人專欄
閱讀更多
金色早8點
財經法學
成都鏈安
Bress
鏈捕手
PANews
Odaily星球日報
原文標題:An approximate introduction to how zk-SNARKs are possible原文作者:Vitalik Buterin原文來源:vitalik.
1900/1/1 0:00:00盡管比特幣和以太坊的興起,以及 DeFi、NFT、GameFi 和 DAO 等新類別的出現,web3 開發人員在全球 3110 萬軟件開發人員中的占比不到 1%.
1900/1/1 0:00:00全球首個以古典音樂為依托的NFT平臺KOLO.Market宣布將于2022年9月2日發布KOLO.Market 1.0,同時推出2款全新音樂NFT作品.
1900/1/1 0:00:00Web3由框架和組件組成,這些框架和組件集成了當前的“Web”(即萬維網)和區塊鏈。這不是當前Web(稱為Web2)的替代品,而是一個擴展。這使得所謂的去中心化應用程序或dApp成為可能.
1900/1/1 0:00:00NFT交易市場的近期頹勢頻現,整個市場的流動性大幅降低,而此時8月異軍突起的SudoSwap則憑借一超多強的增長數據,讓基于AMM機制的交易市場映入大眾視野.
1900/1/1 0:00:00從一開始的“門可羅雀”到后面的“門庭若市”,究竟有誰早在那個時候就發掘了BAYC的潛力,并在牛熊輪換中一直持有到現在?原文:《你需要關注的那些BAYC鉆石手》如今.
1900/1/1 0:00:00