以太坊是一個可編程的區塊鏈。與比特幣不同,以太坊並沒有給用戶提供一組預定義的操作(比如比特幣交易),而是允許用戶創建他們自己的操作,這些操作可以任意複雜。這樣,以太坊成為了多種不同類型去中心化區塊鏈的平台,包括但是不限於密碼學貨幣。
以太坊在狹義上表示一套協議,這套協議定義了去中心化應用的平台。它的核心是以太坊虛擬機(EVM),EVM可以執行任意算法複雜度的代碼。在計算機科學的術語中,以太坊是圖靈完備的。開發者可以使用語法上類似JavaScript和Python的編程語言(Solidity)創建運行於EVM上的應用程序。
以太坊虛擬機(EVM)使用了256比特長度的機器碼,是一種基於堆棧的虛擬機,用於執行以太坊智能合約。由於EVM是針對以太坊體系設計的,因此使用了以太坊賬戶模型(Account Model)進行價值傳輸。
與其他區塊鏈系統一樣,以太坊同樣包括了一個點對點(P2P)協議。以太坊區塊鏈數據庫由連接到網絡的多個節點維護和更新,這個網絡上的每個節點都運行EVM並且執行相同的指令。因此,以太坊也可以被稱為“世界計算機”。
EVM有什麼作用?
當以太坊區塊鏈上有轉賬的時候,EVM會按照下面的步驟來執行:
-
確認轉賬是否有正確的數值,確認簽名的有效性以及是否轉賬nonce符合特定轉賬數量的nonce。如果有誤差,轉賬會被作為錯誤返回。
-
計算轉賬需要的費用,並且收取燃料費用。
-
執行數字資產轉賬到特定地址。
如果EVM檢測到轉出者沒有足夠的手續費用,那麼轉賬將被回滾。而且轉賬費用不會退回,這會支付給礦工。
但是,如果轉賬失敗是因為接受者地址有問題,EVM會把發出的資金數量以及相關的手續費,退還給發出者(沒有礦工收到費用)。
因此,以太坊虛擬機是以太坊區塊鏈中,非常重要的部分。它在智能合約存儲,執行和驗證過程中,都有非常重要的作用。
有了以太坊虛擬機和智能合約,你可以通過簡單地點擊按鍵,就可以在全球進行交易,而且還無需任何中介,因此也避免了多餘的費用。
總地來說,以太坊虛擬機會是以太坊區塊鏈中最重要的作用,同時會在2018年以及以後,有著顛覆性的影響。