03-以太坊的EVM
1 啥是以太坊虚拟机 EVM
EVM,ETHereum Virtual Machine,以太坊虚拟机。就像所有区块链,以太坊会使用在自己计算机上运行的节点,来保证安全性同时也保持信任。每个参与到以太坊协议中的节点都会在各自电脑上运行软件,这就被称为以太坊虚拟机(EVM)。
首先,EVM会通过防止DOS(拒绝服务攻击)攻击来保证安全性,这个攻击是加密货币领域的挑战。
其次,EVM会解释并执行以太坊编程语言,并确保可在没有任何干扰的情况下实现通信。
可简单把EVM理解为一个系统,其存在是为让我们用Solidity编写的合约代码,运行在以太坊的环境。以太坊相当于计算机环境,EVM把合约代码编译成以太坊能识别的机器码运行。
2 EVM有什么作用?
当以太坊区块链上有转账时,EVM按如下步骤执行:
- 确认转账是否有正确的数值,确认签名的有效性以及是否转账nonce符合特定转账数量的nonce。如有误差,转账会被作为错误返回
- 计算转账需要的费用,并且收取燃料费用
- 执行数字资产转账到特定地址
如EVM检测转出者无足够的手续费用,转账将被回滚。且转账费用不会退回,这会支付给矿工。
如转账失败是因为接受者地址有问题,EVM会把发出的资金数量及相关手续费,退还给出发出者(没有矿工收到费用)。
获取更多干货内容,记得关注我哦。