以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > PEPE幣 > Info

無版本區別的EVM(以太坊智能合約虛擬機)_ADE:Ethereum Gas Limit

Author:

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

編者注:本文為Parity開發者WeiTang寫作的,關于如何增強EVM后向兼容性的文章,改進Gas機制的方案堪稱大膽。

如果我們有機會可以重新設計EVM、提升其后向兼容性、讓它對功能升級更為友好,而且可以完全不必考慮我們現有的歷史包袱,我們該怎么做呢?

在這篇文章中,我會探究這個問題,并記錄下由此演化出來的技術說明和設計哲學。

目標

Web是沒有版本區別的,而且已經存在了幾十年。因此我在此假設,我們想做一個同樣沒有版本區別的EVM。

我們同樣希望保證,這種虛擬機具備良好的后向兼容性。也就是說,至少能良好兼容我們現有的合約,而且,也可以輕松加入新功能。

Degen Zoo:項目代碼安全,為防止再次停機檢查正考慮添加代理合約:4月3日消息,針對昨日的安全事件,DAO Maker項目Degen Zoo官方團隊在Telegram中表示,調查結論是發現可以添加代理合約以使代碼可升級。代理合約允許項目在不停止游戲的情況下構建固定合約并測試內容。

目前有兩個方案正待投票:1.審查發現代碼很安全,出錯率很低,但無法100%保證完美,這意味著如果再次出現問題,則必須再次停止游戲并重新部署。選1則今晚可恢復游戲即保持周一早上之前的狀態。2.將代理合約添加到所有重要的智能合約中hatch()、kill()、burn()、speedup()、evolve(),以便更改這些合約,而無需在未來重啟游戲。選2則需24-48小時添加代理并恢復。目前在Telegram群中,第二種方案支持率占優。

此前昨日消息,Degen Zoo疑遭黑客攻擊,目前團隊已暫停游戲并啟動調查。[2023/4/3 13:41:36]

無效操作碼

Trade Republic在意大利注冊為加密貨幣運營商監管:金色財經報道,意大利最大的金融監管機構Organismo Agenti e Mediatori (OAM)已于7月19日同意德國投資平臺 Trade Republic 在該國注冊成為加密貨幣運營商。Trade Republic成立于 2015 年,擁有超過 100 萬客戶,去年以 50 億美元估值完成了一輪 9 億美元的融資。除了意大利,Trade Republic也為西班牙的用戶提供數字資產服務。[2022/7/20 2:25:04]

要設計一個永續的EVM,最簡單可能也最重要的改動便是為合約部署添加一個驗證過程。并非所有的字節序列都是有效的EVM代碼,任何無效的操作碼都不應該被部署到鏈上,因為在未來,這些代碼可能會被分配以一個新的操作碼,有不一樣的功能。

鮑威爾:對穩定幣、數字金融市場進行監管的時代已經到來:6月23日消息,美聯儲主席鮑威爾表示:對穩定幣、數字金融市場進行監管的時代已經到來,盡快完成這件事很重要。如果有數字美元,它需要由美聯儲發行,任何涉及支付的事情,美聯儲都應該參與監管,我們不希望私人發行的穩定貨幣變成數字美元。不知道我們現在是否需要數字美元。(金十)[2022/6/24 1:27:59]

此種檢查的技術詳述初次成文化是在EIP-1712中。簡要來說,在執行合約創建的狀態轉變函數之前,執行下列檢查:

遍歷代碼的字節碼

如果代碼是一個PUSH(n)操作碼,則跳過接下來n個字節

如果字節碼是一個有效的操作碼,或者指定了無效指令,繼續

否則,捕捉到錯誤

上述檢查有點類似于jumpdestination檢查。注意,對于例外情形,我們在這里使用的是“trap”,下文我們會詳細解釋。

功能調查

如果EVM要消弭掉版本的差別,基于EVM的代碼執行應有能力調查出底層環境是否支持一種特定的功能。給定EVM所承擔的角色,我們總是希望一個已經定義好的操作碼的功能可以保持不變,并且還可以引入新的操作碼來添加功能。而一些合約可能在引入某些特定功能之前就已經部署上去了。這些合約可以安排一個備用的子程序,在EVM不支持某功能的時候就運行子程序,而一旦硬分叉激活后就立即開始使用新功能。功能調查組件就像這里要用到的跳轉器。因此,我們正式地定義一種新的操作碼HAS_FEATURE。

該操作碼接收一個堆棧參數。它會檢查該參數是否位于0到2^8之間,如果不是,就捕捉錯誤

如果參數不受支持,就把0x0推回棧中;否則就推入0x1

例外與捕捉

在EVM的運行過程中,可能有很多因素會導致執行失敗。單個交易可能因為耗盡Gas而失敗;調用棧中的每一層都可能單獨失敗,而其錯誤必須被父調用框架明確處理。這些特性給了我們一定的彈性,但對于要運行在區塊鏈上的合約來說,并不必然就是好事。這里,我們想重新定義一下,任何EVM本身發出的異常,都可以有trap行為,作為對fail的替代。也就是說,所有調用框架的所有執行過程中、消耗任意gas的時候、甚至被當前的狀態函數回滾變更的時候,都可以有trap。合約接下來就被會鼓勵使用返回值,在它們想跟父調用者交流非致命錯誤的時候。

Gas消耗量

過去的經驗已經證明,我們總是想調整Gas消耗量。因為我們要這樣做,我們不希望合約開發者對交易的Gas消耗量甚至是任何操作碼的Gas消耗量作任何假設。要實現這一點,只需將EVM內所有關于Gas消耗量的公開信息都移除。這樣Gas消耗量就成了一個外在于EVM、被隱藏起來的“實現上的細節”,只需在區塊層執行中妥善處理。正式地移除0x5a的Gas操作碼。此外,重新定義CALL、CALLCODE和DELEGATECALL,不再使用gas棧參數,而是采取現有執行框架中所有可用的Gas。

原文鏈接:

https://that.world/~essay/nevm/

作者:WeiTang

翻譯:阿劍

Tags:GASTRAADEBLIEthereum Gas LimitFox TradingSafe Trade CoinSHIBLITE

PEPE幣
暴風雨前的平靜?比特幣波動率創四個月來新低_區塊鏈:比特幣是什么時候誕生的

比特幣最近幾周一直處于盤整狀態,描述比特幣波動性的關鍵指標今天跌至四個月來的最低點。據Forbes報道,根據資產管理公司BlockforceCapital的研究,使用來自不同交易所的價格數據計算.

1900/1/1 0:00:00
“綠洲”們的通證尬局_GOF:FUN

文|嚯嚯編輯|文刀 新浪最新發布的社交APP“綠洲”引入了數字資產“水滴”。盡管產品或因涉嫌Logo抄襲而下架,但它利用區塊鏈元素的做法備受市場關注.

1900/1/1 0:00:00
Bakkt:比機構入場更重要的利好_加密貨幣:比特幣

Overview概述 由洲際交易所(ICE)推出的新型加密貨幣交易平臺Bakkt終于開始營業了.

1900/1/1 0:00:00
大餅再回調試探支撐 不妨如此建倉_區塊鏈:區塊鏈專業好找工作嗎

今天的封面是《田野里的獵狗》,科爾·維爾據外媒消息,鮑威爾近日在瑞士論壇上發言,表示美聯儲會持續關注數字貨幣的發展,但不會“積極考慮”數字貨幣.

1900/1/1 0:00:00
揭秘沃爾瑪、騰訊、京東、浙商銀行的供應鏈管理方案_區塊鏈:EDG

自從區塊鏈技術火起來之后,許多公司都想要“蹭一蹭”這個熱點,但也出現了很多亂象:例如美國的長島冰茶集團將公司名稱改成“長島區塊鏈集團”.

1900/1/1 0:00:00
冰火兩重天:比特幣牛市 山寨幣卻一路下跌 Staking價值縮水48%| Fun Twitter_STA:I-STABLE幣

01 Staking價值近三月縮水48%TheBlock發布了一份Staking分析報告指出:Staking生態現在有48億美金資金體量,公司和投資者將繼續參與其中,盡管目前行業表現并不樂觀.

1900/1/1 0:00:00
ads