1. 主页 > 币园地 > 币圈知识

什么是EVM?探索以太坊的虚拟机

okx

okx欧易APP

全球顶尖交易所,注册即领最高¥3000数字盲盒

APP下载   官网注册

以太币(ETH)是以太坊生态系统的原生代币,是市值第二大的加密货币,极受投资者欢迎。然而,对于开发者社区来说,最受好评的还是以太坊虚拟机(EVM)。那么什么是 EVM,它对这个区块链意味着什么?

OIP.jpg

什么是EVM?

EVM,即以太坊虚拟机,构成了以太坊运营的核心,充当“虚拟计算机”或软件平台,用于在以太坊网络上执行消息和智能合约。在这个机制中,EVM将充当中介,帮助智能合约以安全、去中心化的方式执行。

以太坊网络上的每个节点都会配备自己的EVM,以确保系统的安全性和去中心化。这帮助以太坊为开发区块链应用、推动技术进步营造了良好的环境。

同样,软件开发人员必须使用 Microsoft Visual Studio 或 Xcode 等集成开发环境来编码和打包其应用程序,然后将代码编译成计算机可以理解的语言。

通常,以太坊上的智能合约是用 Solidity 语言编写的,EVM 引擎在将源代码翻译为字节码方面发挥着重要作用。字节码相当于计算机代码,包含操作码(操作码),以便以太坊网络能够理解并执行控制命令。

EVM 是如何工作的?

EVM的运行机制包括以下步骤:

编译和部署合约:用户用Solidity或Vyper语言编写智能合约,然后编译成字节码。字节码被部署到以太坊网络,形成智能合约。
字节码执行:当以太坊网络上发生交易或合约调用时,EVM 接收并执行相应智能合约的字节码。
结果和状态变化:执行完成后,EVM 返回智能合约的结果,并更新内存和存储单元中的合约状态。

执行字节码包括具体步骤:

身份验证: EVM 通过检查签名和其他约束来检查交易或合约调用的有效性。
Gas 和 Gas 成本确定:EVM 确定执行字节码所需的 Gas 量,并估计每个指令代码和操作对应的 Gas 成本。
代码执行: EVM 执行智能合约字节码中的每个代码,使用堆栈、内存和状态变量来执行数学运算。
状态更新:在执行过程中,EVM 会更新合约的状态以及内存和单元中的变化。
Gas 消耗:执行每个代码时,EVM 会消耗与其 Gas 成本相对应的 Gas 量。如果消耗了gas,执行就会停止,交易或合约调用也会中止。

EVM的运行机制是为了保证以太坊网络上智能合约执行的一致性和安全性。它使用gas来控制资源消耗并防止无限运行或作弊的攻击。

以太坊虚拟机(EVM)的目的

EVM 为以太坊网络上运行的所有应用程序提供支持。对于开发人员来说,EVM 充当主程序,在以太坊中运行称为智能合约的较小可执行程序,同时还为他们提供了用 Solidity、Vyper、Python 和 Yul 等多种语言编写这些智能合约的自由。

由于 EVM 提供的灵活性,以太坊在去中心化金融(DeFi)领域催生了数千个 DApp。这些 DApp 和组成它们的智能合约中的每一个都被转换为字节码进入 EVM 并分布在网络中的所有节点之间。一旦部署了智能合约,EVM 就负责与所有节点进行通信,并在达成共识时进行状态更改。

也就是说,EVM 被插入到每个以太坊节点中,使用字节码而不是底层编程语言来执行智能合约,从而将物理服务器与以太坊运行的机器代码隔离开来。

以太坊虚拟机(EVM)的优点

对于开发商

EVM 作为在以太坊中运行智能合约执行程序的主程序,同时也为开发者提供了用多种编程语言(包括 Solidity、Vyper、Python 和 Yul...)编写这些智能合约的自由。
根据 EVM 的工作方式,开发人员可以执行代码,而不必担心其对网络其余部分的影响。
此外,开发人员还可以通过分布式共识在不同的计算环境中运行复杂的智能合约。这确保了一个节点的故障不会对 DApp 或智能合约的运行产生任何负面影响,因为 EVM 代码在所有节点上保持相同。此外,由于账户数据在 EVM 中进行全局维护,开发人员发现它是编写自定义智能合约和创建可在此全局数据集上访问并产生可靠输出的单独 DApp 的完美场所。

对于用户

类似的多链体验:截至目前,加密货币领域拥有数百条区块链,这些区块链服务于各种目的,例如 dApp 平台、dApp 专业化和隐私保护等。当将两个以上的区块链集成到去中心化应用程序(dApp)中时,用户可以轻松地在区块链EVM之间切换,而无需改变用户界面和使用体验。
速度和gas效率:以太坊用户为他们进行的每笔交易支付费用。有时,由于区块内交易空间稀缺,这些费用可能会超过 100 美元。在稀缺时期,完成交易可能需要花费大量时间,影响用户体验。然而,将 dApp 转换为以太坊以外的 EVM 链可以部分解决速度和 Gas 费问题。
更大的可扩展性:使用多链有助于项目水平扩展到各种区块链生态系统,并为加密货币项目拥有更大的用户群创造机会。此外,各种加密产品参与生态系统有助于促进竞争和发展。

以太坊虚拟机(EVM)的缺点

虽然EVM可以给开发者和用户双方带来很多好处,但它也有一定的缺点:

Gas 费:最重要的一点是在以太坊网络上运行智能合约所涉及的高额交易或 Gas 费。由于它们是以 ETH 支付的,因此这些费用将根据合约的复杂性和执行时的网络拥塞情况而有所不同。
技术:由于 Solidity 是 EVM 上编码的首选编程语言,因此开发人员需要拥有足够的经验和技术专业知识才能使用 EVM 创建有效的智能合约。
安全性和黑客/漏洞:如果开发人员选择使用其他语言进行编码,他们需要小心解决代码中任何固有的重复问题,因为 EVM 仍会编译它们。虽然可以在后期升级智能合约,但它会带来与创建引用原始智能合约地址的中间智能合约相关的安全风险。

评估板兼容性

EVM 兼容性是区块链和去中心化金融 (DeFi) 领域的一个流行概念。当区块链兼容 EVM 时,意味着开发人员已经按照 EVM 标准编写了操作和执行智能合约的代码。许多区块链的目标是实现 EVM 兼容性,以简化从以太坊到区块链的迁移。

随着越来越多的区块链出现,如果需要新代码,扩展的需求将变得更加困难。想象一下,如果每个区块链智能合约都需要一种新的编程语言来编写合约,那么吸引程序员参与这项工作将不是一件简单的任务。

创建一个执行 EVM 兼容代码的环境将帮助以太坊开发人员轻松地将智能合约迁移到 EVM 兼容链,而无需从头开始重写代码。这被认为是提高以太坊可扩展性效率的最佳解决方案。

EVM区块链如今很流行

EVM区块链是一种与以太坊虚拟机兼容的区块链,允许在其上运行以太坊智能合约。这意味着以太坊上的去中心化应用程序(DApp)可以轻松部署在这些区块链上。 

EVM区块链分为两种类型:

第 2 层解决方案:这些是基于 EVM 构建的平台,有助于提高可扩展性并降低交易成本。得益于这些新技术,项目可以满足对速度和规模日益增长的需求。
独立EVM区块链:这些是独立于以太坊独立运行的区块链。这为开发人员和用户提供了灵活性,同时也有助于最大限度地降低以太坊遇到问题的风险。 

以太坊的第 2 层解决方案

Layer-2 解决方案建立在以太坊平台上,发挥了该平台的优点并克服了其缺点。

一些最著名和成功的项目包括:

Starkware:著名的项目之一是 Derivatives dYdX,它建立在 Starkware 平台上并取得了巨大成功。这帮助 Starkware 在加密货币市场建立了声誉。
Arbitrum:有很多项目选择 Arbitrum 作为其产品的扩展解决方案,其中包括 Sushi、AnySwap、Synapse 等知名品牌……尤其是Abracadabra和 Curve Finance 正在引领 DeFi 趋势 2.0。

EVM区块链独立

与以太坊上的第 2 层项目相比,第 1 层区块链构建了自己的平台和区块链设计,从而产生了显着差异。一些著名的区块链 EVM 包括:

币安币链(BSC)

BNB Chain(BSC)取得了巨大成功,TVL价值超过3万亿美元,仅次于以太坊和Tron。

BSC的生态系统目前拥有900多个DeFi应用,其中包括50多个去中心化交易所(DEX)。最值得注意的是,PancakeSwap DEX 项目的 TVL 达到了 15.03 亿美元大关,取得了巨大的成功。

多边形

最初Polygon只被认为是以太坊的第2层解决方案,但现在Polygon网络已经发展成为一个独立的区块链,使用MATIC(Polygon的主要代币)来支付交易费用。该 EVM 区块链提高了可扩展性,并允许主网的交易和工作负载更加顺畅和高效地流动。

雪崩

Avalanche 是一个多链网络,可提供相当高的吞吐量和低延迟,从而实现快速且低成本的交易。它有一个名为Avalanche-X的共识机制,可以进一步增强用户体验。

概括

以太坊的快速增长使 EVM 成为行业标准。考虑到与 EVM 兼容的第 2 层区块链的数量以及可能出现的大量潜在 EVM 用例,EVM 成为 Web3 开发的重要工具是完全可以理解的。让我们在以下 MarginATM 文章中了解有关 EVM 的更多信息。

icon

okx欧易APP

全球顶尖交易所,注册即领最高¥3000数字盲盒

APP下载   官网注册
bi'an

火币 Huobi

官网注册

老牌交易所,交易用火币

比特儿

币安 Binance

官网注册

选择币安,探索无限可能

联系我们

Q Q: 510662654

微信号:ATM6086

工作日:9:30-18:30,节假日休息

微信