首頁 網路3.0 以太坊虛擬機器EVM是什麼,有何用處?

以太坊虛擬機器EVM是什麼,有何用處?

Mar 06, 2024 pm 01:39 PM
虛擬機 區塊鏈 比特幣 以太坊 標準函式庫 optimism 以太坊區塊鏈 比特幣 (bitcoin) 區塊鏈(blockchain)

早前 Optimism 宣布將升級為 EVM 全相容,開發者可使用 Solidity 智慧合約直接在 Layer2 部署以太坊上所運行的工具,這意味著以太坊網路的可擴展性進一步增大。

那麼,這裡面提到的以太坊虛擬機,也就是EVM(Ethereum Virtual Machine,EVM)是什麼意思,又有何用處呢?今天就讓我們來一探究竟。

01
什麼是以太坊虛擬機器?

電腦專業的同學對「虛擬機」應該並不陌生,「虛擬機」是指透過軟體模擬的具有完整硬體系統功能的、運行在一個完全隔離環境中的完整計算機系統。

通俗點講,虛擬機就是我們透過軟體模擬出了跟我們個人電腦一模一樣的虛擬機器,它擁有跟實際實體電腦同樣的軟硬體資源。

進入虛擬系統之後,我們日常的所有操作都可以在這個全新且獨立的虛擬系統裡面進行,可以獨立安裝運行軟體,保存資料等等。

這樣一來,我們大可在虛擬機中盡情的折騰,各種病毒和攻擊都不怕,大不了重裝一下虛擬機,並不會對真正的系統產生任何影響。

以太坊虛擬機器EVM是什麼,有何用處?

就好比《西遊記》中的六耳獼猴跟孫悟空有著同樣的外表,也都擁有降妖除魔的能力,但他們又是獨立的個體。即便六耳獼猴被打死之後,也不會對孫悟空本身造成任何影響。

我們知道比特幣網路像是一個巨大且即時更新的分散式帳本,世界上任何地方的電腦均可以透過網路連接到比特幣系統,它有著有去中心化、不可篡改和公開透明的特點。

在這個網路裡面沒有虛擬機,比特幣更主要的功能是用來記錄、儲存鏈上隨時進行的交易資料。

而以太坊虛擬機顧名思義則是建立在以太坊區塊鏈上的一個抽象的機器,它可以使在其上面運行的程式彼此隔離,並且與主鏈分離。

02
以太坊虛擬機器有何用處?

相較於比特幣被視為分散式的記帳本,以太坊致力成為“下一代智能合約和去中心化應用平台”,則可以被看作是可以運行程序的分散式運算平台。

Vitalik 也將其構想為一個去中心化的「世界電腦」。作為計算機,就需要有計算,存儲,執行等功能。

所以,以太坊在擁有比特幣網路中基本的資料儲存功能之外,還需要運行各種程式碼進行計算,由以太坊虛擬機(EVM)所編譯和解釋執行的軟體或應用就是「智能合約」。

當以太坊鏈上發生轉帳交易的時候,以太坊虛擬機(EVM)會進行以下一系列工作:

· 調取轉帳的數值,分析合約的指令。

· 計算Gas的消耗(手續費), 確保發出轉帳的地址有足夠的Gas費。

· 執行合約,實現轉帳到對應的位址。

從上面以太坊虛擬機器(EVM)的工作流程中,我們可以窺見EVM對於以太坊的幾個功能:

· 方便測試:為了確保各種「智慧合約」的順利執行,我們需要為它們創造一個安全的運作環境,以太坊虛擬機器就是一個程式碼的運作環境。

正如我們上文所說,在虛擬機器裡的各種操作不會影響主機一樣,任何想要在以太坊虛擬機創建智能合約的開發者可以在虛擬機器上測試各種應用而不佔用主鏈資源也不受其他區塊鏈的影響。

· 增加安全性:以太坊上承載著具有強大功能的各種應用,其邏輯也就更加複雜,開發者也越容易出現各種漏洞。 而以太坊虛擬機器是一個完全獨立的沙盒,合約程式碼可對外完全隔離並在 EVM 內部運作。

不僅可以防止因為不法分子或程式設計師的程式錯誤而影響整個主鏈,還可以防止運行智慧合約的實體設備遭受攻擊。

· 保障穩定性:由於以太坊虛擬機器部署在以太坊網路的每個節點,整個以太坊網路的資料由眾多節點共同維護和更新,這保持了整個區塊鏈資料的一致性,這也使以太坊有極高的故障容錯性,保證零停機。

03
小結

#可見,以太坊虛擬機在以太坊區塊鏈中扮演重要的角色,為智能合約的實現提供了技術基礎,不僅整體上可以為開發人員提供應用測試環境,一定程度上提升了以太坊主鏈的安全性、穩定性。

不過它同時也存在著許多缺陷深受詬病,例如 EVM 常用的 Solidity 語言缺乏標準函式庫、合約程式碼不支援升級只支援部署,儲存空間碎片化和維護等。

以上是以太坊虛擬機器EVM是什麼,有何用處?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

歐易是乾嘛的 歐易是什麼 歐易是乾嘛的 歐易是什麼 Apr 01, 2025 pm 03:18 PM

歐易(OKX)是一個全球性的數字資產交易平台,主要功能包括:1. 買賣數字資產(現貨交易),2. 進行數字資產之間的交易,3. 提供市場行情和數據,4. 提供多樣化的交易產品(如衍生品),5. 提供資產增值相關服務,6. 方便資產管理。

數字貨幣如何滾倉?數字貨幣滾倉平台有哪些? 數字貨幣如何滾倉?數字貨幣滾倉平台有哪些? Mar 31, 2025 pm 07:36 PM

數字貨幣滾倉,即利用借貸放大交易槓桿以提高收益的投資策略。 本文詳解數字貨幣滾倉流程,包括選擇支持滾倉的交易平台(如Binance、OKEx、gate.io、Huobi、Bybit等),開通槓桿賬戶,設置槓桿倍數,借入資金進行交易,以及實時監控市場並調整倉位或追加保證金以避免爆倉等關鍵步驟。 然而,滾倉交易風險極高,投資者需謹慎操作並製定完善的風險管理策略。 了解更多數字貨幣滾倉技巧,請繼續閱讀。

C語言中 sum 一般用來做什麼? C語言中 sum 一般用來做什麼? Apr 03, 2025 pm 02:39 PM

C語言標準庫中沒有名為“sum”的函數。 “sum”通常由程序員定義或在特定庫中提供,其功能取決於具體實現。常見的場景是針對數組求和,還可用於其他數據結構,如鍊表。此外,“sum”在圖像處理和統計分析等領域也有應用。一個優秀的“sum”函數應具有良好的可讀性、健壯性和效率。

c語言多線程的四種實現方式 c語言多線程的四種實現方式 Apr 03, 2025 pm 03:00 PM

語言多線程可以大大提升程序效率,C 語言中多線程的實現方式主要有四種:創建獨立進程:創建多個獨立運行的進程,每個進程擁有自己的內存空間。偽多線程:在一個進程中創建多個執行流,這些執行流共享同一內存空間,並交替執行。多線程庫:使用pthreads等多線程庫創建和管理線程,提供了豐富的線程操作函數。協程:一種輕量級的多線程實現,將任務劃分成小的子任務,輪流執行。

Go語言中哪些庫是由大公司開發或知名的開源項目提供的? Go語言中哪些庫是由大公司開發或知名的開源項目提供的? Apr 02, 2025 pm 04:12 PM

Go語言中哪些庫是大公司開發或知名開源項目?在使用Go語言進行編程時,開發者常常會遇到一些常見的需求,�...

gate.io交易平台交易手續費怎麼計算? gate.io交易平台交易手續費怎麼計算? Mar 31, 2025 pm 09:15 PM

Gate.io交易平台手續費因交易類型、交易對、用戶VIP等級等因素而異。現貨交易默認費率為0.15%(VIP0等級,Maker和Taker),但會根據用戶30天交易量和GT持倉量調整VIP等級,等級越高費率越低,並支持GT平台幣抵扣,最低可享55折優惠。合約交易默認費率為Maker 0.02%,Taker 0.05%(VIP0等級),同樣受VIP等級影響,且不同合約類型和槓桿

虛擬幣app軟件推薦網站有哪些? 虛擬幣app軟件推薦網站有哪些? Mar 31, 2025 pm 09:06 PM

本文推薦十個知名的虛擬幣相關APP推薦網站,涵蓋幣安學院(Binance Academy)、OKX Learn、CoinGecko、CryptoSlate、CoinDesk、Investopedia、CoinMarketCap、火幣大學(Huobi University)、Coinbase Learn和CryptoCompare。這些網站不僅提供虛擬貨幣市場數據、價格走勢分析等信息,還提供豐富的學習資源,包括區塊鏈基礎知識、交易策略、以及各個交易平台APP的使用教程和評測,幫助用戶更好地了解和使

distinct函數用法 distance函數c  用法教程 distinct函數用法 distance函數c 用法教程 Apr 03, 2025 pm 10:27 PM

std::unique 去除容器中的相鄰重複元素,並將它們移到末尾,返回指向第一個重複元素的迭代器。 std::distance 計算兩個迭代器之間的距離,即它們指向的元素個數。這兩個函數對於優化代碼和提升效率很有用,但也需要注意一些陷阱,例如:std::unique 只處理相鄰的重複元素。 std::distance 在處理非隨機訪問迭代器時效率較低。通過掌握這些特性和最佳實踐,你可以充分發揮這兩個函數的威力。