導航:首頁 > 源碼編譯 > 以太坊evm源碼分析

以太坊evm源碼分析

發布時間:2024-12-19 00:04:00

⑴ 以太坊虛擬機(EVM)是什麼

以太坊是一個可編程的區塊鏈。與比特幣不同,以太坊並沒有給用戶提供一組預定義的操作(比如比特幣交易),而是允許用戶創建他們自己的操作,這些操作可以任意復雜。這樣,以太坊成為了多種不同類型去中心化區塊鏈的平台,包括但是不限於密碼學貨幣。

EVM為以太坊虛擬機。以太坊底層通過EVM模塊支持智能合約的執行和調用,調用時根據合約的地址獲取到代碼,生成具體的執行環境,然後將代碼載入到EVM虛擬機中運行。通常目前開發智能合約的高級語言為Solidity,在利用solidity實現智能合約邏輯後,通過編譯器編譯成元數據(位元組碼)最後發布到以坊上。

EVM架構概述

EVM本質上是一個堆棧機器,它最直接的的功能是執行智能合約,根據官方給出的設計原理,EVM的主要的設計目標為如下幾點:

針對以上幾點通過對EVM源代碼的閱讀來了解其具體的設計思想和工程實用性。

EVM存儲系統機器位寬

EVM機器位寬為256位,即32個位元組,256位機器字寬不同於我們經常見到主流的64位的機器字寬,這就標明EVM設計上將考慮一套自己的關於操作,數據,邏輯控制的指令編碼。目前主流的處理器原生的支持的計算數據類型有:8bits整數,16bits整數,32bits整數,64bits整數。一般情況下寬位元組的計算將更加的快一些,因為它可能包含更多的指令被一次性載入到pc寄存器中,同時伴有內存訪問次數的減少。目前在X86的架構中8bits的計算並不是完全的支持(除法和乘法),但基本的數學運算大概在幾個時鍾周期內就能完成,也就是說主流的位元組寬度基本上處理器能夠原生的支持,那為什麼EVM要採用256位的字寬。主要從以下兩個方面考慮:

時間上主要體現在執行的效率上,我們以兩個整型數相加來對比具體的操作時間消耗。32bits相加的X86


的匯編代碼

mov eax, dword [9876ABCD] //將地址9876ABCD中的32位數據放入eax數據寄存器

add eax, dword [1234DCBA] //將1234DCBA地址指向32位數和eax相加,結果保存在eax中

64bits相加的X86匯編代碼

mov rax, qword [123456789ABCDEF1] //將地址指向的64位數據放入64位寄存器

add rax, qword [1020304050607080] //計算相加的結果並將結果放入到64位寄存器中

鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。

⑵ 詳解 EVM 生態多簽錢包 Gnosis Safe 產品特性

Gnosis Safe,一款在以太坊生態上廣受歡迎的鏈上多簽錢包解決方案,由Gnosis在2018年推出。憑借其自託管解決方案,Safe已成為當今最受信賴的數字資產管理平台,處理超過60萬筆交易,保護價值超過400億美元的數字資產,包括13%的所有Cryptopunks。自成立以來,Safe為超過90%的Dapp、DAO以及機構提供了服務,2022年承載的資產價值高達760億美元,超越了同期最大的中心化託管商Coinbase。

Safe的多簽管理、Spending limit等功能,不僅提供了基本的安全保障,還通過集成Zerion等應用,提升了用戶體驗的便捷性和可組合性。通過「Add custom ap」按鈕,用戶可以擴展使用范圍,甚至通過Wallet Connect來訪問更多應用。盡管Safe已經在多簽錢包領域取得了顯著成就,但仍有建議指出,Safe團隊應更深入地探索智能合約賬戶的潛力,將其作為賬戶的內核,以實現賬戶的可編程化。

智能合約賬戶,或稱Programmable account,是將賬戶編程為用戶所需的形式或賦予特定特徵的系統,本質上是基於以太坊底層賬戶體繫上的智能合約。當前以太坊支持兩種類型的賬戶,而智能合約賬戶則允許用戶實現更多Web2級別的賬戶體驗。由於EOA(以太坊普通賬戶)在支持用戶需求方面存在局限性,智能合約賬戶成為了解決方案之一。

智能合約賬戶能夠實現的特異功能包括但不限於資金管理、自動化執行、數據存儲等。這些功能通過智能合約的靈活性和圖靈完備性得以實現,為用戶提供更高級別的安全性、透明性和個性化體驗。此外,通過Web3 OS的演變,智能合約賬戶被認為是可能演化出Web3操作系統的路徑。

Gnosis Safe在Web3 OS的衍化中已經做了大量准備,包括定義智能合約的核心開發框架,並提供與之配套的指引和擴展形式。作為多簽賬戶應用的Safe,已經開始作為一個中間件對外輸出能力,通過生態夥伴的影響力和Safe作為多簽賬戶的資產規模,為Web3操作系統的未來鋪路。基於Gnosis Safe開源框架搭建的項目,如金融相關業務和訪問管理的創新,為用戶提供更多選擇和便利。

閱讀全文

與以太坊evm源碼分析相關的資料

熱點內容
安卓手機如何快捷打開健康碼 瀏覽:1
b站程序員公開代碼 瀏覽:68
創建卷組使用命令 瀏覽:612
電腦如何從伺服器上安裝系統 瀏覽:527
remix解壓曲 瀏覽:59
程序員做海鮮超市 瀏覽:895
有雲伺服器後現場還需要伺服器嗎 瀏覽:551
外匯分析pdf 瀏覽:899
javasqlserver查詢 瀏覽:977
密信id伺服器時什麼 瀏覽:588
圖書借閱app哪個好用 瀏覽:858
辦進京證app叫什麼 瀏覽:775
外國加密貨幣與中國數字貨幣 瀏覽:651
java數字轉化成字元串 瀏覽:161
不用解壓就可以更改內容的軟體 瀏覽:827
android解析pdf下載 瀏覽:889
linux設置時間片 瀏覽:104
如何刷新發布伺服器 瀏覽:819
app設計是什麼專業 瀏覽:646
羊小樣app通過初審是什麼意思 瀏覽:766