這周我們將對技術樹 (tech tree) 進行更新,為以太坊1.x研發添加一些新的主要里程碑,這些里程碑并不算是無狀態以太坊的完整實現,而是我們在中期能夠合理實現的目標。
其中最重要的更新是Alexey的reGenesis提案。雖然這是遠未規范化的更新,但是從研發的角度來看,reGenesis為“完全無狀態”的終極目標提供了一種更保守更切實可行的路徑。在其他方面與reGenesis互補的技術是靜態狀態網絡,能夠幫助在比特流 (bittorrent) 式的基于DHT的網絡中傳播狀態快照和歷史鏈數據。
同時,一些距離我們比較近的目標已經在為EIP化做準備,例如代碼分塊 (code merkleization) 和狀態二進制樹。在本文中,我會為大家闡明已經實現的進展,并且附上鏈接,以便讀者深入了解感興趣的領域。
Nexus Mutual將存入2900萬美元ETH至Maple Finance:8月12日消息,去中心化保險項目Nexus Mutual已通過將約2900萬美元的ETH存入Maple Finance獲取收益的提案。據悉,存入金額為國庫的10%,預計年收益率為9%。[2022/8/12 12:21:45]
目前以太坊使用十六叉Patricia默克爾樹來編碼狀態,但如果轉變為二進制式會帶來顯著的效率提升,尤其是在見證大小這個方面。對以太坊狀態進行完全重新編碼需要制定新范式,以及清晰的過渡策略。最后,還需要決定是否將智能合約代碼分塊,并且將該過程合并到二進制樹過渡中還是作為獨立更新。
ETH突破3500美元關口 日內漲幅為2.39%:火幣全球站數據顯示,ETH短線上漲,突破3500美元關口,現報3500.3美元,日內漲幅達到2.39%,行情波動較大,請做好風險控制。[2021/10/6 20:08:05]
與當前的十六叉樹結構相比,二進制樹的概念要簡單一些。十六叉樹從樹根遍歷到子節點有十六條可能路徑,二進制樹只有兩條。隨著狀態樹的重新規范,我們有機會解決以太坊運行五年以來顯著的低效問題。此外,我們也有機會使狀態更適應現實世界中數據庫編碼的性能挑戰 (在上一篇有關狀態增長的文章中有提到)。
有關正式二進制樹規范和分塊規則的討論可以參見ethresearch.
重要的不僅僅是二進制樹范式這個目的地,旅途本身也非常有價值!在理想的過渡過程中,不會對網絡的交易處理產生干擾,也就是說客戶端將需要在處理每十五秒出現的新區塊的同時構建新的二進制樹。
ETH突破620美元關口 日內漲幅為0.23%:火幣全球站數據顯示,ETH短線上漲,突破620美元關口,現報620.01美元,日內漲幅達到0.23%,行情波動較大,請做好風險控制。[2020/12/4 23:02:41]
目前看起來最有希望的過渡策略被稱為“覆蓋”法,該方法部分基于geth的新快照同步協議。總的來說,新的狀態改變會以二進制范式被添加到現有的十六叉樹中,也就是說在過渡過程中會存在二進制和十六進制混合體。不受影響的狀態會被轉換為后臺處理。一旦完成轉換,這兩層會被合并到一個二進制樹中。
請務必注意,客戶端多樣性在二進制轉換過程中也起到了非常重要的作用。每個客戶端將需要實現自己的過渡版本,或是依靠其他客戶端進行轉換,然后在另一端等待新的樹。
這需要我們“三思而后行”,所有客戶端需要協同工作來進行測試并協調轉換。出于安全性的考量,在過渡過程中網絡有可能需要短暫停止服務 (例如挖出一些空塊),但是目前就任何具體計劃達成共識還為時尚早。
行情 | ETH 出現劇烈波動 請密切關注行情:當前 ETH 價格¥1959.27,5分鐘上漲¥91.38,波動較大,請密切關注行情走勢,做好風險控制,數據來自 Bitfinex。[2018/8/21]
以太坊狀態樹的很大一部分由智能合約代碼組成,約占50GB狀態的1GB左右。所有用于智能合約交互的見證 (witness) 都必須提供其交互的代碼,以計算codeHash, 而這可能產生大量額外數據。
代碼分塊 (Code Merkleization) 旨在將合約代碼切分為較小的塊,然后將codeHash替換為另一個默克爾樹根。這種方式使得我們可以使用參考哈希來替代見證中潛在的大部分智能合約代碼,從而省去數千字節的見證數據。
進行代碼分塊有多種方式,按復雜度來看,比較簡單的就是通用分塊 (例如每塊大小64字節),而較為復雜的方式就是基于Solidity functionId或JUMPDEST指令的靜態分析。最優的代碼分塊策略最終還是取決于是否適用于從主網收集到的真實數據。
過去一小時推特討論量:BTC和ETH大幅領先:根據CoinTrendz數據,過去1小時推特討論量前10分別為:BTC、EHT、XRP、LTC、XVG、TRX、NEO、BCH、ADA、XMR。但從具體數據看,BTC和ETH幾乎相同,但第三名XRP討論量僅有ETH的三分之一。[2018/3/17]
要了解reGenesis提案的最佳去處是@mandrigin給出的解釋,以及@realLedgerwatch提交的完整提案,概括來說reGenesis基本可以說是“區塊鏈的大掃除”。完整的狀態將從概念上分為“活躍”和“非活躍”狀態。整體“活躍”狀態會按一定周期被停用,然后新的交易會再次幾乎從零開始建立新的活躍狀態 (因此被稱作“reGenesis”)。
如果交易需要之前的狀態,將會提供一個見證,這非常類似于無狀態以太坊所需的證明:證明狀態更改與某個非活躍狀態相一致的默克爾證明。如果一筆交易需要狀態的“非活躍”部分,它將自動將其轉變為為“活躍”狀態 (無論交易是否成功),這該部分將會留至下一次reGenesis發生。
這樣做的一個好處在于,在使用狀態時創建一些經濟限制,而實際上不會刪除任何狀態。其次,如果交易發送方盲目地反復試圖交易,則無法生成見證。
關于reGenesis的意義,它使得以太坊朝著終極的無狀態目標跨進了一大步,并且避開了要實現無狀態面臨的最大挑戰,即EVM執行時如何計算見證的gas。同時它還使得某個版本的交易見證能夠在網絡中傳播,讓更輕量級的客戶端和dapp開發者能夠有更多機會熟悉無狀態范式和見證生成。
reGenesis之后“真正的”無狀態性就只是程度上的問題了:無狀態以太坊其實只是每個區塊之后的reGenesis。
從一開始,網絡協議的優化只是技術樹中的一個“支線任務”,但隨著reGenesis進入無狀態以太坊的版圖,為分享以太坊鏈數據 (包括狀態) 探索替代的網絡原語也成為了主線任務。以太坊當前的網絡協議是一個整體,但事實上有多種類型的數據能夠通過不同的“子網絡”來進行共享,而這些“子網絡”能夠滿足不同的需求。
之前在無狀態會議中討論到這個話題時,我們稱其為“三個網絡”,基于DHT的網絡能夠更高效地服務于不常改變的數據類型。隨著reGenesis的引入,“非活躍”狀態能夠被納入這類不常變化的數據,從理論上來說也就能夠適用于比特流式的swarm網絡,而不是當前由全節點進行逐條廣播。
自上一次reGenesis之后,在網絡中傳播不變狀態的網絡就是靜態狀態網絡 (static state network),可以基于devp2p庫 (以太坊網絡協議) 中新的Discovery v5.1規范進行延展。
之前類似Merry-go-Round sync和更為成熟的SNAP protocol,可用于同步活躍狀態,是邁向完全分布式動態狀態網絡的重要步驟,使得客戶端能夠快速同步完整狀態。
什么是區塊鏈?什么是分布式數據庫?相信很多人容易混淆這兩個概念。表面上看,區塊鏈打造的不可篡改、分布式的數據庫,和傳統分布式數據庫在基礎技術方面有很多相似的地方,但也僅僅只是相似而已.
1900/1/1 0:00:001946年誕生了第一臺數字計算機ENIAC(埃尼阿克),有別于模擬計算機,數字計算機以01二進制數字形式存儲和處理數據,從而開啟了人類社會的數字時代。20多年后的1968年,互聯網誕生了.
1900/1/1 0:00:00有一些去中心化金融項目可以提供閃電貸款。?Yam Finance(YAM)是一個DeFi項目,只是曇花一現.
1900/1/1 0:00:00【行情回顧及官方解讀】 【OKEx交易大數據解讀】 【大V及機構解讀】 一、本周重要行情回顧及官方解讀 行情回顧: 美股方面,美股周四收盤漲跌不一,標普500指數再創盤中與收盤新高.
1900/1/1 0:00:00文章系金色財經專欄作者幣圈北冥供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別,謹防上當.
1900/1/1 0:00:001.DeFi總市值:179.65億美元 金色相對論 | Esther:以太坊2.0新路線圖一定程度上對Staking起到助推作用:11月27日消息,在今日舉行的金色相對論中.
1900/1/1 0:00:00