為什么需要OVM?
我們團隊中的許多成員都曾參與過致力于支持智能合約的第一代通用plasma網絡的架構設計。然而,部署plapps需要借助一整套新的開發工具。我們很快意識到,人們對于以太坊Layer2的期待遠不止此——以太坊L2不只意味著擴展以太坊的應用,還要擴展以太坊本身。
以上原因促使我們開發了OptimisticRollup——首個能將以太坊智能合約的全部功能引入擴展層的L2架構。Unipig
}
把這個合約重新部署到L1上之后,還能返回相同的值嗎?
-不同的鏈,不同的結果-
明顯不行!即使是在同一條L1上,如果將智能合約重部署在不同的兩個區塊,返回值也不一樣——因為重部署的合約會獲取L1的時間戳,而正確執行?execute_l2_tx?則應該返回L2的時間戳。
美國共和黨官員:幣安案表明加密貨幣需要明確的監管規則和框架:金色財經報道,美國共和黨眾議員希爾表示,幣安案表明加密貨幣需要明確的(監管)規則和框架,正在制定數字資產立法以帶來明確性。[2023/6/7 21:22:12]
如果你深入思考,你會發現這個問題幾乎會發生在所有智能合約上。比如對于某個ERC20智能合約來說,你將合約重部署在L1上之后,你要怎么設置L2上的余額呢?諸如此類,不可勝數。
解決之道:OVM
過去曾出現過兩種解決“EVM中的EVM”問題的辦法:要么是對EVM進行分叉,要么是硬著頭皮用Solidity重新實現整個EVM;OVM是一種全新的方法,對于當前的以太坊1.0有著更好的性能和靈活性,而且不需要分叉!
容器化:執行管理器
加密錢包公司Dfns:“Magic Links”存在嚴重漏洞:金色財經報道,加密錢包初創公司 Dfns 表示,越來越多的加密錢包和網絡應用程序采用的無密碼登錄方法 Magic Links 存在嚴重漏洞,Dfns 將其發現的漏洞歸類為“零日”漏洞利用。Dfns 在一份聲明中表示,該漏洞可能“對全球經濟的很大一部分構成相當大的風險。 受影響的服務表示,在 Dfns 發布詳細介紹所謂的零日漏洞的博客文章之前,他們幾乎沒有收到任何通知。
Magic Links是由網站或應用程序生成的唯一的一次性 URL,用于驗證用戶身份而無需他們輸入密碼。當用戶單擊 Web 應用程序發送給他們的Magic Links時,它會驗證他們的身份并將他們登錄到他們的帳戶中。[2023/2/24 12:27:50]
OVM能夠解決問題的最重要原因是,它引入了一個全新的智能合約——作為OVM智能合約的虛擬容器。執行管理器會虛擬化所有可能導致L1、L2出現不同結果的執行,包括:
美國紐約南區法院:預計將于明天早上公布針對SBF的起訴書:12月13日消息,美國紐約南區檢察官Damian Williams表示,今晚早些時候,巴哈馬當局根據SDNY(美國紐約南區法院)提交的密封起訴書,應美國政府的要求逮捕了Samuel Bankman-Fried,我們預計將在明天早上公開起訴書,屆時會有更多話要說。[2022/12/13 21:40:32]
智能合約存儲內容
交易內容——如區塊高度、時間戳、tx.origin?的帳戶的地址),等等。
跨合約信息的路由
基本上,對于可能導致L1、L2出現不同結果的EVM功能,執行管理器都提供了保證其結果一致的函數。
舉例來說,我們構造一個容器來解決上述提到的時間戳不一致的問題:
泰國JSCCIB宣布其基于區塊鏈的國家數字貿易平臺的首批試點:金色財經報道,泰國的 JSCCIB 宣布了其基于區塊鏈的國家數字貿易平臺 (NDTP) 的首批試點。它還集成了日本?區塊鏈TradeWaltz?和新加坡的單一窗口網絡貿易平臺 (?NTP?)。
NDTP 的目標是將貿易流程數字化,以加快進出口速度并改善中小企業獲得貿易融資的機會。這是一個私營部門項目,由三個行業協會、泰國銀行家協會、泰國工業聯合會和貿易委員會共同運營。政府通過公共部門發展委員會辦公室參與其中。[2022/11/22 7:54:24]
現在我們重部署上面的合約,這回我們使用虛擬容器:
如此一來,我們就能夠在驗證fraudproof的時候,設置L1容器中的“虛擬區塊高度”,來保證正確的返回值!
-新的TimeShifter函數,使用TimestampManager作為容器。-
這就是"EVM中的EVM"——OVM的核心概念:虛擬化所有可能在不同鏈上返回不同結果的EVM組件。具體點來說,約有15條以太坊指令需要被虛擬化,你可以從以下入口查看真正的執行管理器長啥樣。
安全性:容器純度檢查
當然我們還需要稍微修改上面的合約,才能真正調用timestamp容器而不是拿到錯誤的?block.timestamp。
雖然我們解決了結果差異性的問題,但這只作用于該智能合約而已。因此,為了保障L2的安全性,我們需要確保L2上的所有合約都使用了timestamp容器,沒有錯誤使用?block.timestamp?的漏網之智能合約。
OVM提供了“容器純度檢查”的服務——檢查目標智能合約“是否只通過執行管理器來調用虛擬化指令”,而不允許像是?block.timestamp?這樣的操作!不論有沒有其他智能合約調用了目標合約,只要合約未通過檢查,就無法部署到OVM。這樣就能保證L2的安全性。
開發體驗:轉譯器
要讓智能合約只通過執行管理器來調用某些指令,還有一個問題就是開發體驗——如果開發者需要遍歷整份智能合約,然后把所有?block.timestamp?替換為?getOvmTimestamp(),這種費力不討好的活肯定沒人愿意做。
為了解決這個問題,我們搭了一個轉譯器——輸入普通EVM字節碼,然后轉譯器會輸出使用上述容器的OVM字節碼。對于使用轉譯器的開發者來說,完全不需要和OVM直接打交道?——只需要在Waffle、Truffle等你喜歡的測試套件中加入我們的?solc-transpiler?包。
展望
我們認為OVM的出現代表著以太坊L2的飛躍,因為它不同于變著招?使用?以太坊,它就是以太坊本身的進步。只要加上幾行代碼,就能夠實現快速且低成本的Solidity智能合約遷移,這也是當前關于以太坊擴展方面最令我們興奮的topic。如果你想要自行體驗一把,可以關注我們最近的OVM測試——在標準的以太坊工具中,實時運行部分的Synthetix復雜交易合約。
原文鏈接:
https://medium.com/ethereum-optimism/ovm-deep-dive-a300d1085f52
作者:?EthereumOptimism
翻譯&校對:?IANLIU?&阿劍
Tags:OVM以太坊TIMAMPFLOVM以太坊交易所委托掛單要收手續費嗎optimus幣發行量bitstamp中文叫什么
撰文:錢柏均,就職于HashKeyCapitalResearch審核:鄒傳偉,萬向區塊鏈、PlatON首席經濟學家編者注:原標題為《加密貨幣托管機制》加密貨幣托管合規及保險制度尚未完備.
1900/1/1 0:00:002020年春,一場突如其來的新冠肺炎疫情席卷全球,對各國的社會治理能力形成了極大的考驗。值得欣慰的是,各類前沿的數字化技術在緊急關頭臨危受命,在諸多的抗疫實踐案例中起到了卓越成效.
1900/1/1 0:00:00被判刑25年、販、殺人兇手、開發世界上最先進的ASIC礦機、中本聰真身......但凡有人打算把這些事實柔和起來,統一到單個人身上,無論如何聽起來都像是在忽悠,然而.
1900/1/1 0:00:00一項新的調查顯示,當前有46個國的中央銀行正在考慮使用改造過的分布式賬本技術創建中央銀行數字貨幣,這其中立陶宛央行的發展速度位于前列.
1900/1/1 0:00:00文|秦曉峰?編輯|?Mandy王夢蝶出品?|?Odaily星球日報 近日,伴隨著減半的如期而至,歐美機構高歌猛進,泰達的不斷增發,“牛市將至”的情緒濃重了許多.
1900/1/1 0:00:00作者|凱爾 編輯|文刀 從年初的幣安女團開始,一系列負面聲音此起彼伏地涌向幣安,其中最引起行業關注的恐怕要數幣安收購CoinMarketCap的舉動.
1900/1/1 0:00:00