作者:IttaiAbraham
翻譯&校對:ViloaH&阿劍
來源:以太坊愛好者
如果有人很直接地問你:怎樣才能拓展狀態機復制系統呢?
你應該反問:你系統遇到的瓶頸是什么?數據?共識?還是執行?
1、數據:數據是將所有指令傳輸給所有狀態機副本的載體。舉個例子,如果一個區塊包含1MB的指令,那么你就需要把1MB的數據發送給所有負責驗證的副本。顯然,這種情況下,系統的通道容量是系統可拓展的瓶頸。
2、共識:指令到達本地之后,狀態機們就會參與共識協議。舉個例子,如果一個共識協議需要兩次消息往返,而參與驗證的狀態機分布在全球各地,那么,這里明顯的瓶頸在——由光速和地球大小而導致的延遲。
3、執行:指令到達、共識在指令排序上達成共識后,副本需要執行指令。執行引擎是一個接受舊狀態并應用指令來計算新狀態的函數。又舉個例子,如果執行需要許多密碼學計算,那么很明顯啦,這里的瓶頸就是副本要重復執行的密碼學計算。
需要注意的是,這三個瓶頸不是追求一種折衷,也不是兩難的困境,也不是三難困境。它們是彼此獨立的。所有狀態機復制系統的可拓展能力都受到這三種因素的限制。本文將介紹一些解決這些瓶頸的方案。
以Coinbase創始人的貓命名的Toshi Token成為Base區塊鏈交易者中的熱門MemeCoin:金色財經報道,社交媒體應用X(前身為Twitter)上的交易者之間的討論顯示,一種以Coinbase創始人Brian Armstrong的貓命名的Token正在迅速成為即將推出的Base區塊鏈上熱門的MemeCoin。Armstrong去年在播客中透露了他寵物的名字,稱這個名字是比特幣創造者中本聰的衍生詞。他的另一只貓的名字是Mochi。雖然這聽起來可能很荒謬,但交易者正在將大筆資金投入到toshi (TOSHI) 代幣上,過去24小時內,交易者在Base網絡上的去中心化交易所SushiSwap上交換了價值約1000萬美元的MemeCoin,并為交易對提供了超過100萬美元的以太幣流動性。[2023/8/4 16:18:36]
1.從數據上提高可拓展性
更好的網絡解決方案
對比特幣等密碼學貨幣而言,擴展吞吐量的能力取決于減少延遲——因為某個礦工挖出的區塊需要經過一定的延遲才能傳播給所有其他礦工。像FIBRE、Falcon、bloXroute這些系統會通過使用專用通道來降低延遲,并使用前向糾錯碼來傳播區塊。提高數據可拓展性的另一個辦法是通過內容可尋址網址來發現對等節點并訪問內容。具體可參考Kademlia,它不僅啟發了以太坊的RLPx編碼規范,并在libp2p上得到了推廣。
zkSync官方:已解決zkSync Era網絡停機問題,將發布情況報告:金色財經報道,zkSync官方發布推特表示,zkSync Era網絡在北京時間07:52至12:02出現停機。官方將很快向社區提供包含更多詳細信息的事后分析。[2023/4/1 13:39:34]
把數據遷移到layer-2
另一種思路是,既然瓶頸源于需要復制所有指令到所有狀態機,那我不復制不就完啦!像Lightning、Plasma和其他Layer-2解決方方案都是如此——把中間命令傳播給一個較小的半公開團體以減少數據復制、定期向整個系統報告總結。自然而然地,這種方法的不足在于:不復制所有數據會造成數據的可用性問題。而安全性依賴于每個擁有數據的半公開團體內至少有一個誠實參與者能及時地作出反應。
2.從共識上提高可拓展性
吞吐量和延遲之間的權衡
有人將每秒處理交易數作為衡量協議可拓展性的標準。TPS是對吞吐量的度量,人們存在一個誤解——以為對它單獨優化就可以實現共識可拓展性。共識可拓展性的解決方案必須同時關注吞吐量和確認時延這兩個因素。
通過成批處理來提高共識的吞吐量很簡單:只需要一天一次,而不用每隔幾秒一次,就可以讓人們就被批處理的所有數據的哈希值達成共識。顯然,由于一天只達成一次共識,成本會被分攤,僅就吞吐量而言,共識過程就不再是阻礙實現拓展性的瓶頸了。顯然,批處理雖然能提高共識協議的吞吐量,但也會提高交易確認的時延,并不是什么擴展共識協議性能的萬靈丹。
區塊鏈分析平臺Dune將Dune SQL設為默認查詢引擎:3月10日消息,據官方博客,區塊鏈分析平臺Dune宣布已將Dune SQL設為默認查詢引擎,允許用戶更快、更方便地查詢加密數據。據悉,Dune SQL于2022年9月首次發布,并在12月推出Alpha測試版。
此外,Dune表示,計劃于7月前淘汰Spark SQL,屆時系統將提示遷移到Dune SQL上。同時,Dune基于Postgres的v1平臺只有以太坊數據集仍然可用,該數據集將于2023年7月停用。[2023/3/10 12:54:16]
PBFTjournalversion一文充分地討論了BFT狀態機復制的延遲和吞吐量。
對基于NakamotoConsensus的協議而言,有很多協議都試圖增加吞吐量及時延,如:Bitcoin-NG、Fruitchains和Prism。
性能和安全性之間的權衡
有人建議在更小的狀態機副本小組內達成共識,以優化共識過程的性能。降低驗證狀態機小組的規模的確可以提高性能,但這是以降低降低安全性為代價的。所以,真正的挑戰在于不減少參與狀態機的數量同時提高共識過程的性能。
提高共識協議的復雜性有望魚和熊掌兼得,例如:減少輪數,或者說改變消息傳遞的復雜度,使呈平方級增長的消息數量可以變為線性增長。本文討論了一些部分同步中的協議改進和同步中的協議改進。
The Sandbox計劃于年底前推出DAO來管理元宇宙業務:金色財經報道,The Sandbox的首席運營官Sebastien Borget表示,元宇宙平臺的未來掌握在個人創作者而不是企業品牌手中,Sebastien Borget稱,The Sandbox計劃于年底前推出DAO,并將通過SAND代幣投票來進行撥款等決策。[2023/3/1 12:37:01]
可拓展性和適應性之間的權衡
基于PBFT視圖范式的共識協議容易受到攻擊者的適應性攻擊。共識協議的安全性不僅和攻擊者的規模相關,而且和對手的適應性能力相關。
處理適應性對手的協議通常會導致更高的成本,也會在可拓展性上遇到更大的難題。Algorand建議用基于輪次的密碼抽樣來拓展拜占庭共識,使其免受適應性攻擊者的攻擊。這種方法的模擬結果看起來很不錯。適應性對手可以使用拒絕服務攻擊來阻止系統推進。HoneyBadger提出了第一個實用的異步BFT協議——該協議在不做任何時序假設的情況下,也能保證活性。
避免對所有命令進行全排序
如果所有指令都相互依賴,那么除了對所有指令進行全排序外,別無他選。但是在許多工作負載中,指令不會彼此依賴和彼此干擾。舉個例子,在某些情況下,A給B支付的指令和C給D支付的指令就不會相互干擾;在這種情況下,我們沒有必要浪費昂貴的共識資源為這兩筆指令進行內部排序,沒有理由讓它成為系統的瓶頸。在epaxos非拜占庭模型中就采用了這種辦法。像Avalanche和其他基于DAG的協議,會通過允許并發提交互不干擾的指令來增加共識的吞吐量。
美聯儲戴利:將在下次會議上討論加息50個基點或25個基點:金色財經報道,美聯儲博斯蒂克表示,5%-5.25%的利率峰值是合理的,可能會是這個水平。將在下次會議上討論加息50個基點或25個基點。我不認為加息50個基點是不可能的,畢竟還沒有看到CPI數據。通脹率過高,美聯儲專注于降低通脹率。[2023/1/10 11:03:23]
分片
抽象一點來看,分片是對狀態和狀態機副本集合進行分區。每一分片控制狀態的某個部分,且共識過程是由驗證狀態機總體的某個部分來完成的。這當然也需要一些跨分片交互機制。以太坊的“ShardingFAQ”資源正是一個很全面的資源。
分片是并行化處理數據、共識和執行這三大瓶頸的方法。實現數據和執行并行化的關鍵在于工作負載的低狀態競用。從共識的角度來看,分片本質上就是在性能和安全之間取舍:不是用所有狀態機副本去保障一個狀態,分片技術創建了多個分區,每個驗證者副本會各自保護它們自己的分區。
劃分許多分區會顯著地提高性能。但是,因為每一分區的驗證狀態機都變得更少,安全性自然就降低了。
想了解使用分片技術,請參閱Omniledger和Ethereum2.0。以太坊2.0計劃將每個分區的低安全性和全局鏈的高安全性結合起來。就像Layer-2方案一樣,低安全性的分片可以定期上傳自己的狀態到高安全性的全局鏈上,并將狀態更新確定下來。這也是在安全性和延遲之間取舍——想獲得高安全性,就得等待全局鏈的周期性敲定。
3.從執行上提高可拓展性
共識和執行的分離是狀態機復制系統的基本架構設計之一。分離的好處可參見Yinetal2003。在傳統的狀態機復制系統中,命令不僅要復制并傳播到所有副本,還得在所有副本上執行。
在很多系統中,可拓展性的瓶頸是執行指令的成本。對SMR系統的一種主要拒絕服務攻擊工段是發出合法的命令,讓整個系統浪費時間在執行上。很多系統通過設計領域專用語言來避免攻擊。比特幣用比特幣腳本,小心翼翼地限制每筆交易的計算復雜性。以太坊用gas機制來限制執行的復雜性,并用效率來激勵人們對Gas的使用。
并行化執行
讓狀態機并行化執行也是一種提高執行能力的方法。當在區塊中的大部分命令無狀態競用的情況下,這個方法是有效的。它的主要思想是設想一種在無競用的條件下并行執行、在有競用時維護安全性的協議,用該協議模擬出連續執行的結果。詳情請參看Eve2012、Dickerson、Gazzillo、Herlihy、Koskinen2017和Saraph和Herlihy2019。
不在SMR內執行,使用經濟激勵和錯誤性證明來驗證
在這類解決方案中,指令作為數據提交到SMR內,但是執行不是由驗證狀態機副本完成的。狀態機副本僅充當數據可用性層。
不用副本來執行指令,而用經濟激勵機制——玩家可以通過發布債券來成為執行者。鎖定了保證金的執行者都可以提交執行結果,而其他人可以通過提交錯誤性證明來舉報執行人提交了不正確的執行結果。如果這份錯誤性證明是正確的,執行者將受到懲罰,而提交者將得到部分獎勵。如果挑戰者在錯誤性證明上說謊,那他的保證金就會大幅罰沒。
實現高效挑戰的協議起源于FeigeKilian2000,而Canetti,Riva,Rothblum2011沿著這條道路推進,最終演化成采用鏈上激勵的TrueBitTeutsch,Reitwie?ner2017和Buterin’sOff-ChainOracles。如今,這種方法在名為optimisticrollups的方案中中得到進一步發揚。
不在SMR內執行、用簡潔的證明來驗證
在本方案中,指令同樣作為數據提交到SMR中,執行同樣不關驗證狀態機副本的事。副本只是作為指令的數據可用性層。
不同于用挑戰游戲和錯誤性證明來驗證執行結果,利用簡潔的非交互式證明也是可以的。這些密碼學技術允許驗證者生成非常短的證明,同時對這些證明的驗證在密碼學上具有高度的可靠性和完整性。執行只能由同一實體完成。有了簡潔證明后,驗證狀態機副本只需要驗證簡潔證明,而不需要重新執行長交易。Zexe用這個方法來建構了基于nano-kernel的證明系統,人們因此可以在UTXO中實現隱私交易。
Buterin論述zk-roll-up的文章和Ben-Sasson的podcast強調了這種拓展交易處理量的方法。詳情請查看Buterin的視頻,進一步去了解如何將隱私添加到簡潔的證明中中。
這種簡潔的證明有很多好處:驗證證據正確性的成本非常低。而短處在于構造指令執行的證明通常比單單去執行指令的成本要高得多。還有一個壞處在于這些協議增加了大量的復雜性。此外,某些協議還需要繁復的受信任初始設置儀式。
需要注意的是,以上介紹的方法意在克服執行可拓展性的瓶頸,而不在改變數據可拓展性的瓶頸。
感謝
我們想借此機會感謝LingRen、KartikNayak、AlinTomescu、PratyushMishra、LouisGuthmann和JohnAdler。感謝他們給本文提供了富有教益的反饋。
來源:證券時報,原題《官方認證!權威區塊鏈概念名單曝光,六大規則選股,隱藏多只翻倍牛股》 作者:數據寶謝伊嵐 區塊鏈官方名單來了.
1900/1/1 0:00:00來源:21世紀經濟報道 作者:包慧 金融科技正日益成為區塊鏈技術落地應用的主戰場。各大銀行、互聯網巨頭和傳統的IT服務商都紛紛加入這一戰局.
1900/1/1 0:00:00據Cointelegraph報道,澳大利亞聯邦銀行旗下的新西蘭ASB銀行參與了區塊鏈初創企業TradeWindow新一輪170萬美元的融資.
1900/1/1 0:00:00證券日報記者?李?冰 來源:證券日報 目前區塊鏈正與金融、實體經濟深度融合,推動產業變革升級。但不容忽視的是,在國內區塊鏈的發展過程中,國外區塊鏈開源技術在中國市場仍占據主流.
1900/1/1 0:00:00作者:互鏈脈搏·元尚, 未經授權,不得轉載! 網易圈圈官宣明年2月1日停止運營,有朋友就說,你還是寫點東西吧。畢竟這個產品一上市,你就看到它的死亡.
1900/1/1 0:00:00作者:XiuMU 來源:比推bitpush.news加密機構經紀人BitOoda宣布已經獲得了700萬美元的種子輪投資.
1900/1/1 0:00:00