在 EOS 社区,经常能听到关于以太坊虚拟机 (EVM) 的讨论。你是否也对这个话题感兴趣呢?对 EVM 是否存在疑问?
这里我们将讲述 “EVM 是什么?”,“为什么 EOS 需要 EVM ?”,“以太坊项目部署到 EOS 上对项目有什么好处?”,“EVM+ 工作组概况” 几个方面的内容。
一、EVM 是什么?
在以太坊上,开发者开发智能合约使用的编程语言是 Solidity。Solidity 是专门为以太坊区块链设计的一款编程语言,一般其他区块链不会默认使用这种编程语言来开发智能合约。 而如果要在非 Solidity 语言的区块链上部署运行 Solidity 语言智能合约,就需要在这个区块链上开发 EVM,以太坊虚拟机,让这些 Solidity 语言智能合约在以太坊虚拟机(EVM)环境下运行。即,以太坊虚拟机(EVM)是这些非以太坊区块链的一个虚拟运行环境,它使得那些 Solidity 语言以太坊智能合约间接地在这些非以太坊区块链上运行。
二、为什么 EOS 需要 EVM?
上图列出了不同区块链项目所采用的编程语言。如图所示,区块链项目使用的编程语言各异,EOS 和以太坊(ETH)也不例外。在 EOS 开发智能合约使用的是 C++, 而以太坊则使用的是 Solidity。这就使得以太坊上项目的智能合约无法直接在 EOS 上部署。目前,如果以太坊上的项目想要同时在 EOS 上部署,就必须使用 C++ 语言重新再编写一遍。
上图是使用不同编程语言的区块链项目的分布情况图,根据该图我们知道,目前的区块链项目,使用 Solidity 语言在以太坊开发的占据了很大一部分。
而如我们前面所述,以太坊虚拟机(EVM)可以让那些 Solidity 语言的以太坊智能合约间接地在这些非以太坊区块链上运行。
于是,我们很容易就会想,“假如 EOS 有以太坊虚拟机(EVM),在 EOS 上部署运行他们项目的成本骤降,那么以太坊上的这些项目是不是就更有可能选择在 EOS 上部署运行了呢?而如果这些项目在 EOS 上部署运行,那 EOS 生态不就能慢慢活跃起来了?”
正是基于以上这些对 EVM 的美好憧憬,EOS 社区成员对此进行了大量的讨论。最终,促使 EOS 网络基金会为此成立了 EVM+ 工作组。
三、以太坊项目部署到 EOS 有什么好处?
EOS 以太坊虚拟机(EVM)可以给那些想要同时将他们都项目部署在 EOS 和 以太坊(ETH)两个区块链上的开发者带来很多好处。
EOS EVM 可能会是最好的以太坊虚拟机。EOS 的区块时间只有 0.5 秒,TPS 高达 10,000,而且转账几乎免费。日前在 Jungle 4(chain-id: 15556)测试网上部署测试的 EOS EVM 实现了每秒 800+ 交换量,比 Solana 快 4 倍有余,这意味着部署到 EOS EVM 的项目可以摆脱在以太坊上的各种限制,为项目提供更多的可能。
从再部署成本上考虑,为了摆脱这种限制,EOS EVM 实现后,这些项目的再开发成本几乎为零。开发者们将不再需要重新用 C++ 语言重新编写一遍他们的智能合约,可以原封不动地将他们的智能合约一键部署到 EOS。
在此,强烈建议项目方加入 EOS Discord 社群,持续关注 EOS EVM 进度。
四、EVM+ 工作组概况
EVM+ 工作组由 EOS Argentina 领衔,旨在为 EOS 创建最佳 EOS EVM 方案。
该工作组正在紧张有序地进行开发工作,2023 年 1 月下旬,EOS EVM v0.2 版本部署到 Jungle 4(chain-id: 15556)测试网络。该版本 EOS EVM 改变原计划,不再发行新代币,改用 EOS 作为网络原生代币,用于支付交易费用。根据该版本的测试数据,EOS EVM 实现了每秒超过 800 的交换量,比 Solana 区块链快 4 倍有余。
EOS EVM 可能会成为 EOS 发展史上的一个里程碑。它可能会为项目以及 EOS 生态带来巨大的益处。不过,为了让 EOS EVM 发挥出它的最大功用,单单在技术上实现可能是不够的,我们同时还需要尽最大的努力拓展 EOS EVM 的函数库(libraries),并且我们可能还需要为这些使用 EOS EVM 项目的资金筹措方面提供便利.
作者: Sangyong Jeong
编辑: Randall Roland
翻译: Josh Chung
资源与引用: