以太坊:什么是以太坊虚拟机(EVM) 它是如何工作的?

以太坊已成为仅次于比特币的第二重要区块链。以太坊能发展得这么好,它的原生Solidity编程语言和以太坊虚拟机(EVM)发挥了重要的作用。

以太坊区块链凭借自身拥有的灵活性、大量可用的开发工具和庞大的用户基础,继续吸引着去中心化应用(DApp)开发人员的加入。

作为区块链架构的核心,EVM是执行以太坊应用代码或智能合约的程序,并为它们提供在以太坊网络上运行的环境。

此外,EVM是图灵完备的( 一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的),因此理论上,它可以运行所有以编程语言编写的程序,从而让开发人员可以轻松地创建自定义智能合约和DApp。

除了这些,EVM还可以访问网络中的所有节点,处理智能合约的执行,并有效地管理以太坊区块链上的所有交易,这也使其成为当今世界上最强大的虚拟机之一。

华尔街分析师:比特币什么都不是,只是一股蒸汽:华尔街“全明星”分析师安迪·凯斯勒在1月31日《华尔街日报》观点版面发表文章《比特币泡沫背后》。

文章中他表示:比特币什么都不是,它只是一股蒸汽,一种想法的概念。使用比特币的交易非常少。它缺乏价值存储属性——任何一种一周下跌30%的东西都不能发挥这种作用。但彭博社(Bloomberg)的财富报道称:“比特币新手告诉我们,是什么促使他们以创纪录的价格买入。“很多负担不起的人可能因此受到严重伤害。Robinhood周五限制了一些加密货币的购买。

所以加密领域都将目光聚焦于二月中旬。我不知道纽约总检察长会发现什么。她可能会结束调查,继续自己的快乐生活,因为根本就没有犯罪,或者发现一个让伯尼·麦道夫看起来像从柠檬水摊上偷东西的局。我们知道当热空气耗尽时泡沫会发生什么。[2021/2/2 18:41:07]

以太坊网络的概念是程序员Vitalik Buterin在2013年提出的。

声音 | BM:李嘉图合约意在用简单英语告知用户代码将会做什么:4月18日晚,BM发推称,李嘉图合约(Ricardian contracts)意在用简单英语告知用户代码将会做什么。在大多数情况下,他们不应该添加额外的无法执行的法律条款。安全的钱包应在你签名之前显示此说明,否则该应用可能会你。(注:近日,Block.one在Github发布李嘉图合约说明(Ricardian Contract Specifications)和模板工具箱(Template Toolkit)[2019/4/18]

作为DApp开发者的首选区块链,以太坊的成功有赖于Gavin Wood在以太坊任职期间设计的以太坊虚拟机(EVM)。

EVM用C++编写并使用 LLVM项目编译器(LLVM是架构编译器的框架系统,用于优化任意程序语言编写的程序的编译时间、链接时间、运行时间以及空闲时间),它是一种可以连续运行的特殊的状态机,决定着以太坊区块链中每个区块的状态。

IT记者刘韧:区块链和互联网一样是创业公司机会,没BAT什么事:知名IT记者刘韧今日发表朋友圈说:“1996年到2004年,我对互联网的错误认识。1.1998年完成《知识英雄》,可以去做门户,但我选择写作《企业方法》,我当时的想法和现在很多人对区块链的认识相同,互联网还处在早期,我先将中国IT史写完,互联网机会有的是,等技术成熟了,我再介入不迟。结果到2000年我只有做Donews的机会了。2.《中国.com》很多篇幅写联想怎样转型互联网。我提问《杨元庆会不会掉队?》但依然看好杨元庆。区块链和互联网一样是创业公司机会,没BAT什么事,更不必去看京东的白皮书。3.以传统企业为本,传统企业崇拜,但传统企业使用互联网或互联网化,和互联网公司是两码事。今天传统企业Tokenize,肯定也不是区块链公司,别跟。”[2018/3/22]

EVM不仅管理着节点对分布式账本的操作范围,还定义了在不同区块之间改变状态的具体规则。后一种功能是以太坊智能合约成功运行的基础。

Game.com创始人徐乐:现在谁都定义不了什么是区块链游戏 :Game.com的CEO徐乐接受采访时说:“我的第一条twitter是在07年发的。进入游戏领域10年后,我发了第二条twitter,说Game.com会告诉全世界什么是区块链游戏。我说那句话的意思是:目前没有人能够定义什么是区块链游戏。目前的概念都是错误的。只有干出来,干成了标准,做成了老大,再去定义才有意义。”后又在朋友圈分享想法:“1.首先需打造基础服务,甚至比交易所还要安全的数字货币充提币的自动化系统加人工风控,冷钱包存储永不联网的保障用户的数字资产安全;2.有基础后,才有资格为数字货币玩家群体提供娱乐服务,服务端的内容只有在非常必要的情况下才有必要放在区块链上;3.一定要用区块链思维去思考和设计新玩法,进行再创造,舍弃旧世界的东西。”[2018/3/3]

要了解以太坊虚拟机的作用,需要知道它在确保以太坊网络平稳运行方面都做了些什么。

薛蛮子:什么是区块链企业家精神?: 今日知名投资人薛蛮子在三点钟区块链社群回应问题“您经常提到的区块链企业家精神具体是指的什么”时表示:我这次在京都附近的天桥立看了一个奇景是屁眼看天。原本是海中有了一个长几公里的沙堤,和西湖的苏堤白堤一样,仅是一个美景而已。可是到了上顶上有个地方,叫裤裆看天。每个游客必须把头伸到裤裆底下看景。这时候,这个沙堤就不是一个普通的沙堤,而是宛如一条巨龙,直飞天际。我之所以句这个例子,就是因为区块链颠覆了以往的商业逻辑。因此,颠覆是第一条。第二个精神是有抡开膀子 时不我待的精神。第三个精神是要有超强的学习能力,才能与时具进。眼界,胸怀,识人之能和容人之量是前所未有的重要。[2018/2/25]

对于接收到的每一个输入信息,EVM都会产生一个本质上具有确定性的输出信息。

EVM的运行方式类似于将瞬态值推入和推出下推栈的堆栈机器,其深度为1024个项,而每个项都是256位字。

此外,它还以字节数组的形式维护临时内存。已编译的智能合约代码由EVM以140个标准操作码集合的形式执行,其他区块链特有的堆栈操作也由它实现。

因此,EVM在处理交易过程中具有本质上不稳定的机器状态,同时它又具备全局或世界状态以容纳以太坊区块链上的不同账户信息。

以太坊上的所有操作均由EVM代码管理,自2015年以太坊网络推出以来,EVM代码本身经历了多次迭代,这也使得目前存在多种EVM实现工具。

EVM负责维护数千个以太坊节点和执行代码之间的抽象层级,以及在不向客户端或节点泄露过多细节的情况下起到传送一致信息的作用。

EVM一直在为以太坊上的所有应用提供可靠的动力。

对于开发人员来说,EVM是运行较小的可执行程序(在以太坊中称为智能合约)的首要程序,同时为他们提供了用各种编程语言(如Solidity、Vyper、Python和Yul等)编写这些智能合约的自由。

由于EVM提供的这种灵活性,以太坊区块链在DeFi和NFT领域催生了数千个DApp。

每一个DApp和组成它们的智能合约都被转换为字节码,这些字节码被传送至EVM并分布在以太坊网络的所有节点中。

当部署智能合约时,EVM负责与所有节点联系,并在达成共识后进行状态更改。

可以说,正是因为EVM,以太坊得以使用字节码而非基本编程语言来执行智能合约,从而物理主机与以太坊运行的机器代码可以被区分开来。

EVM的运作方式为开发人员执行代码扫清了一些顾虑——不会影响网络的其他部分或影响托管在任意节点的数据或个人文件。

此外,开发人员可以在具有分布式共识的不同计算环境中运行复杂的智能合约。

这确保单个节点的故障不会对DApp或智能合约的整体运行产生任何负面影响,因为所有节点上的EVM代码都是相同的。

不仅如此,因为账户数据在EVM中维持着一种全局状态,这为开发人员创造了良好的条件以编写自定义智能合约代码和创建可以访问全局数据集并产生可靠输出的独特DApp。

总体上来说,以太坊区块链非常适合于DApp和智能合约的可持续扩展。

除了上述提到的,EVM还有可供开发人员选择的标准代码库、越来越多与之兼容的第2层区块链和大量潜在的EVM用例,这就是为什么EVM是Web3开发的首选平台。

但EVM并非十全十美,打算在以太坊上发展项目的开发人员和企业家也需要了解一下EVM的不足之处,比如高额交易费或者说Gas成本。

这些费用需要用户通过ETH进行支付并且会根据智能合约的复杂性和当时网络拥塞情况变化,这要求开发者和企业家必须对服务进行相应定价。

此外,Solidity是EVM上最受欢迎的编码语言,这意味着开发人员需要有足够的经验和一定的技术专长,才能利用Solidity创建高效的智能合约。

这一点很重要,因为任何额外的计算需求都将导致更高的Gsa成本,而这不利于项目的成功。

如果开发人员选择使用其他语言进行编码,那么他们需要认真解决代码中的任何固有重复问题。

EVM给区块链生态系统带来了革命性的变化,但许多区块链项目也正在改进这种用于读取和执行代码的技术。

跨链互操作性对于开发人员来说是最重要的,许多与EVM兼容的区块链已经发展起来了,其中大多数都提供了比以太坊更低的费用和更快的交易速度。

以太坊用户可以直接与这些区块链进行无缝交互,并通过跨链桥将以太坊上的资金转移到这些区块链。

还有必须提到的是,随着在2022年9月完成合并,以太坊的下一个目标是完成从EVM到以太坊WebAssembly (eWASM)的范式转变。

以太坊旨在将eWASM打造成一个高度模块化并独立于平台的虚拟指令集体系架构。

很多人将eWASM吹捧为以太坊的下一个游戏规则改变者,并认为它可能为其他区块链所使用。

然而,eWASM到底能否取代EVM成为最受信任的智能合约机制呢?这个问题,或许只有时间能回答。

NFT中文社区

个人专栏

阅读更多

金色早8点

金色财经

去中心化金融社区

CertiK中文社区

虎嗅科技

区块律动BlockBeats

念青

深潮TechFlow

Odaily星球日报

腾讯研究院

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:0ms0-0:915ms