以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

ALPHA:Phase one and done:Eth2 作為數據可用性引擎

Author:

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

編者注:這篇文章的原標題為 “Phase One and Done: eth2 as a data availability engine”,在發表當時(2019 年 4 月),作者意在為 Eth2.0 提出一種替代 Phase 2 的路線圖,也就是,如果僅用分片來保證數據可得性,這樣的系統是否有用,還需要增加哪些部分來使之變得有用。令人驚訝的是,在一年半以前,作者就已經認識到,對 zk-rollup 這樣的系統來說,底層必須保障的是 “狀態轉換的執行和數據可得性必須是原子化地綁定在一起的”,因此底層必須具備執行能力,哪怕是非常簡單的無狀態執行;而且,(作者也通過層層推理指出)為保證用戶體驗,還缺少的主要部分是數據怎么上分片的手續費支付協議(這兩點認識,即使放到今天,也仍然稱得上是前沿,甚至是超前)。手續費協議在 Phase 2 的規范中,目前也仍然是缺失的。

順帶說一句,本文作者是 Casey Detrio,他是 Ewasm 團隊的一員,之前也為 Phase 2 提供過很多想法;他也認為,應該以 “保證 Eth1 的合約到了 Eth2 能夠如常執行” 為核心來設計 Eth2.0。他是被低估的一個開發者。

目前,限制 Eth1 吞吐量的瓶頸是狀態增長。因此,如果我們想要擴展以太坊,從邏輯上來說,1000 個具有獨立狀態的分片能夠將吞吐量提高 1000 倍。

去中心化云計算平臺 Phala Network 與 SaaS3 達成合作:1月13日消息,去中心化云計算平臺 Phala Network 宣布與 SaaS3 達成合作,并將協助 SaaS3 運用 Phala 鏈下計算編程模型 Phat Contract 提高其預言機服務的安全性和性能,構建去信任化、低延遲的預言機解決方案。[2023/1/13 11:10:41]

但是,從 Eth1.x 的路線來看,Eth1.x 想要對兩類資源的成本進行重大調整:存儲(storage)和交易數據(tx data)。目前,存儲的定價過低,而交易數據的定價過高。這會激勵 dApp 開發者在編寫合約時更多使用存儲而非交易數據,從而導致存儲成為吞吐量的瓶頸。針對這一問題提出的解決方案是增加存儲的定價,并減少交易數據的定價。經過這些成本調整,開發者將受到激勵更多地使用交易數據,而非存儲(即,他們會編寫更多無狀態合約而非狀態合約)。因此,在不久的將來(如果 Eth1.x 的路線圖獲得廣泛采用),我們預期 Eth1 的吞吐量會受到交易數據的限制,而非存儲的限制。

如果我們假設吞吐量受到交易數據的限制,那么為了擴展以太坊,Serenity 上的分片不需要有狀態。如果吞吐量受到來自無狀態合約的交易數據的限制,那么 1000 個無狀態分片就會將吞吐量提高 1000 倍。

這聽起來不錯,但是需要通過分片來實現,按計劃要等到 Phase 2。與此同時,我們可以將 Phase 1 作為數據可得性引擎。數據可得性引擎一詞似乎逐漸流行起來。我們來思考一下它是如何運作的。

DeFi協議Alpha Homora V2已上線Fantom:3月16日消息,Alpha Finance Lab宣布其 DeFi協議Alpha Homora V2已上線Fantom。Alpha Finance Lab表示,盡管許多人針對Fantom的方向和未來持有疑問,Alpha Finance Lab始終相信Fantom的基本價值觀以及它為社區中的建設者和用戶創建的區塊鏈基礎設施,因此,團隊決定將Alpha Homora V2上線Fantom。[2022/3/16 14:00:34]

以 zk-rollup 為例,zk-rollup 受到數據可得性的限制。Eth1 上的 zk-rollup 合約能否有效地將 Eth2 作為橋接式可用性保障提供方?如果在執行(即,驗證 SNARK 證明并更新狀態根)過程中無法同時保障數據可得性,你就會得到一個類似 plasma 的 zk-rollback 系統。這個系統雖然能夠大幅提高 TPS,但是會引入復雜的權衡關系,需要處理像 plasma 那樣的運營者挑戰和退出機制。在可用性挑戰中,任何人都可以提供數據來證明可用性,因此目前還不清楚將數據放入橋接的 Eth2 分片中能不能讓事情變得更簡單。

現在有了另一個版本的 zk-rollup,即,500 TPS 的 zk-rollup,一切都變得簡單多了。不再需要指定的運營者,任何人隨時都能充當中繼者,并生成 SNARK 證明來更新狀態。事實上,數據可得性保障始終伴隨著狀態更新,也就是說不需要處理像 plasma 那樣的運營者挑戰和退出機制。但是這需要執行和數據可得性保障都發生在同一筆交易中,而遺憾的是我們無法使用橋接式可用性引擎做到這點。換言之,橋接對于 zk-rollback 這樣的欺詐證明系統來說足夠了,但是對 zk-rollup 這樣的有效性證明系統來說還不夠。結論是,為了將 Layer 2 上的有效性證明簡單化,Layer 1 上的可用性引擎需要具備的一項重要功能是,能保證數據可得性與狀態轉換的執行是原子化地一起發生的。

SingularityDAO完成270萬美元私募融資,AlphaBit領投:據官方消息,SingularityNET生態系統內以DeFi為中心的獨立項目SingularityDAO宣布,完成270萬美元私募融資,AlphaBit領投,SMO Capital、Jun Capital、Magnus Capital、QCP Capital、Moon whale Ventures和AU21等參投。SingularityDAO是第二層非托管DeFi解決方案,旨在提高收益。(zycrypto)[2021/4/29 21:09:27]

或許我們不應該對這一認識感到驚訝。如果單靠數據可得性(沒有執行)就有用的話,就不會有人說 Phase 1 啟動只是為了確保一堆非零 blob(二進制大型對象)的可用性,也就不會有人抱怨必須要等 Eth2 進入下一階段才能真正發揮作用了(除了 PoS 之外)。我們正在努力將 Phase 1 作為數據可得性引擎,但是它依然無法執行任何操作,因此令人感到失望。(哇,我們可以構建 Mastercoin 2.0 了!)

那么,為什么 Phase 1 會與執行相沖突?好吧,假設是有狀態執行,則每個分片都要維護一些本地狀態。如果驗證者需要維護很多本地狀態,那么驗證者混洗就會復雜得多。反之,如果沒有執行,就不用擔心本地狀態。驗證者混洗就會簡單得多,我們就可以專注于使用數據 blob 構建分片,然后更快地啟動分片。

Alpha Finance官方:債務不在用戶而在兩個協議之間 正尋找補救措施:剛剛,Alpha Finance Lab官方推特發布關于Alpha Homora V2漏洞的剖析。Alpha Finance Lab稱,債務不是在用戶和Alpha Homora v2之間,而是在Alpha Homora v2和Cream v2之間。這是因為Alpha Homora V2以協議到協議借貸的方式集成了Cream V2 (Iron Bank)。因此,債務在兩個協議之間,而不是用戶之間。

Alpha團隊將與Andre Cronje和Cream Finance團隊正尋找解決債務的補救措施。目前,借貸(新的杠桿頭寸和借入更多的現有頭寸)現已暫停。貸款人仍然可以貸款。收益率高的流動性挖礦者仍然可以償還債務,增加抵押品和平倉。此漏洞很復雜,涉及超過9筆交易。[2021/2/14 19:43:12]

但是,我們先不假設執行是有狀態的。如果我們嘗試使用非常簡單的無狀態虛擬機來執行操作會怎么樣?

假設信標鏈狀態中有 3 個新的驗證者字段:code、stateRoot和deployedShardId。這里還有一個函數process_deploy(就在 process_transfer 下方)。一旦代碼部署完成,驗證者必須保證賬戶余額不低于某個閾值[至少鎖定 1 ETH。如果代碼中沒有自毀程序(SELFDESTRUCT),那么這部分 ETH 就等同于銷毀了,代碼也會永久部署]。

IOTA Streams已正式推出最終Alpha版本:10月15日,IOTA基金會官方宣布,IOTA Streams已正式推出最終Alpha版本。IOTA Streams是一種開源DLT框架,用于分散數據流和嵌入式系統上的加密。[2020/10/16]

現在,我們假設全局狀態中已經有了一些帶有代碼的賬戶。

接下來,我們嘗試將特定數據 blob 打包到分片上,但是該怎么做?據我所知,對于 phase 1 的分片驗證者來說,如何決定將哪些數據 blob 打包到分片區塊中仍是個懸而未決的問題。假設 phase 1 規范中沒有詳細說明這一點。那么,對于用戶來說,如果他們想要將自己的數據 blob 打包到分片上,就只能通過兩種方式:(1)聯系驗證者,并通過協議外的方式(例如,eth1 支付通道)向其付款;(2)自己成為驗證者,就可以(在他們被隨機選為分片的區塊提議者時)將數據 blob 打包到分片上。這兩種方式都是下策。

比較好的方法是,將事情擺到臺面上,允許驗證者通過一個交易協議向當前區塊提議者支付費用。作為交換,區塊提議者要將驗證者的數據 blob 打包到分片鏈上。但是,如果信標鏈區塊操作(如驗證者轉賬)有最小容量要求,這種方法就行不通了。如果沒有一個能夠讓驗證者決定數據 blob 打包優先級的交易協議,那么“將 phase 1 作為數據可得性引擎” 的用例將無法實現(無論是通過橋梁連接到信標鏈的 eth1 合約,還是 Truebit、Mastercoin 2.0 或其它我之前聽說過的數據可得性用例)。不管怎么說,我們先假設,不管分片提議者在 “沒有執行的數據可得性引擎” 模式中如何打包數據 blob,都可以在 “簡單無狀態執行的數據可得性引擎” 中都同樣能做到。

好了,那么假設特定的數據 blob可以打包進區塊了。每個區塊都將執行限制在一筆交易中(例如,整個數據 blob 必須作為一筆交易)。我們還未明確交易要用密鑰簽署(存在交易協議),還是不需要簽署(不存在交易協議)。假設是后者,且代碼實現了自己的簽名檢查(類似賬戶抽象;存在區塊 gas 上限,但是沒有費用轉賬機制,因此沒有 gas 價格和 GASPAY 操作碼)。如果 blob 能夠作為交易成功解碼,則以數據和當前狀態根作為輸入執行目標賬戶代碼。如果執行成功,則返回數據為新的狀態根。

我們如何更新驗證者賬戶的stateRoot(狀態根)?我們無法在每個分片區塊的 BeaconState(信標鏈狀態)中更新狀態根(因為信標鏈操作在數量上有嚴格限制)。但是,信標鏈的狀態中的分片字段,會隨著交聯(crosslink)而更新。取同一個分片上所有賬戶的已更新狀態根,假設對它們進行哈希運算,得到shard_state_root(分片狀態根)。shard_state_root似乎與 phase 1設計中已有的crosslink_data_root差不多(二者都是取決于之前分片區塊內容的哈希值)。

不可否認的是,不是每挖出一個信標鏈區塊,所有分片狀態根都會更新,因此存在一些本地狀態。但是,如果賬戶是全局的,狀態根數據就是最小化的。這就與混洗期間驗證者之間需要轉移部分分片區塊的數據差不多。

這里當然忽略了很多細節。我想要表達的是,無狀態執行的大部分要求似乎在 phase 1 就能滿足。我認為,最大的問題在于,目前尚未明確用戶可以通過哪種方式將他們的 blob 打包上鏈(如果這個問題不解決,phase 1 就無法成為橋接式可用性引擎)。或許這只是第一個問題,還有其它嚴重的問題被我忽略了。我忽略了什么?如果要在 phase 1 上允許用戶通過某種方式將 blob 打包上鏈,那么最困難的部分是什么(如果你喜歡的話,也可稱之為 phase 1.1)?

這個執行模式相比 phase 2 的提議更加簡單,一大原因是合約賬戶是全局的,就像驗證者賬戶一樣。這就意味著,合約賬戶的數量必須設有上限,而且部署代碼的成本與成為驗證者的成本一樣高(也有可能低于后者)。但是,如果這能夠讓我們更快地將執行引入 Eth2,我們是否可以接受這種權衡?代碼部署后,就無法更改合約存儲,因此也可以說,我們這是在嘗試不擴展合約存儲而為 Phase 1 提供執行功能。這里還有一大重要用例:具備數據可得性的超高吞吐量(將交易吞吐量增加 1000 倍)。

即使有了基礎的無狀態執行,用戶也可以通過將一個合約的狀態證明作為交易數據發送到另一個合約,從而實現跨分片合約調用。合約也可以實現自己的類似收據的功能(合約狀態根中的收據就像區塊頭中的收據字段一樣可驗證)。開發者體驗不是很好,因為協議不會提供任何幫助。但是現有的 phase 2 提議似乎缺乏實際的功能來促進跨分片合約交互(這些麻煩都留給了 dApp 開發者,他們必須實現從不同分片中獲取收據的邏輯,確保收據沒有雙花等等)。因此,就開發者體驗而言,基礎的 phase 1 無狀態執行聽起來沒有比 “簡單的” phase 2 構想糟糕很多。基礎的無狀態執行也足以實現信標鏈上的 BETH 和主鏈上的 ETH 之間的雙向錨定。

Phase 2 提議與我們這里的提議的最大區別在于,Phase 2 的目標是擴展合約的 storage。但是存儲,以及相應而來的富狀態執行(stateful execution),同樣似乎就是大多數復雜性的來源,也正是使我們無望在 Phase1 引入執行的原因。

原文鏈接:

https://ethresear.ch/t/phase-one-and-done-eth2-as-a-data-availability-engine/5269

作者:?Casey Detrio

翻譯&校對:?閔敏?& 阿劍

Tags:PHAETHALPHAALPHAlphacatSTKETHAlphaSwapAlphaslot

芝麻開門交易所
比特幣:金色觀察 | BTC大漲帶動礦工收入重回減半前高點 部分舊機重啟

伴隨著近期比特幣的大漲,礦工市場行情火爆,礦機廠商的預售也已經排到明年的4月份。Glassnode數據顯示,截止11月18日,比特幣礦工的總收入(包含Coinbase獎勵和交易手續費)達到2,0.

1900/1/1 0:00:00
比特幣:中銀全球策略證券投資基金曾持有1.3萬股灰度BTC信托

隨著本輪機構牛的持續深入,市場對于灰度的關注居高不下。今日網絡上盛傳一張GBTC股東持股排名,其中中銀全球策略證券投資基金(FOF) 1.3萬股GBTC引發市場討論.

1900/1/1 0:00:00
BLOC:BlockFi計劃明年于美國推出首款加密Visa信用卡

據彭博社報道, Visa和BlockFi將聯手推出一款新的信用卡,以比特幣獎勵用戶,為更廣泛地采用主流數字貨幣奠定了基礎.

1900/1/1 0:00:00
區塊鏈:金色趨勢丨知史鑒今 BTC又將迎來新一輪拉升?

哈希率指標是通過量化哈希率相對增長率來展現比特幣哈希率的變化趨勢和比特幣挖礦生態系統的健康狀況。具體數值是用比特幣哈希率的近一個月均值減去近兩個月均值的差值除以一個月均值數據.

1900/1/1 0:00:00
SEC:火鏈科技出席G20青年企業家聯盟中國理事會 共議后疫情時代的科技新起點

日前,G20青年企業家聯盟中國理事會“后疫情時代的新起點”主題交流會在中國互聯網新聞中心舉辦。太和智庫高級研究員、國家互聯網信息辦公室原專職副主任彭波、中國互聯網新聞中心副主任趙林等數十位行業專.

1900/1/1 0:00:00
COI:NFT簡史:非同質代幣如何一步步成為獨特的數字資產

這是 Andrew Steinwold 在2019年10月寫的一篇 NFT 歷史回顧,雖然在2020年,NFT 領域迎來了非常大的進展,也幾乎所有加密世界的人均了解并參與到了其中,然而.

1900/1/1 0:00:00
ads