第二阶段:智能合约
到了第二阶段,以太坊 2.0 就有点类似于我们熟悉的以太坊了。随着第二阶段成果的不断发布,分片链将从简单的数据容器逐渐转变为结构化的区块链状态。这时 BETH 将可以自由地转移,并且系统将重新引入智能合约。每个分片链都将通过基于 eWASM 的以太坊虚拟机(我们称之为“EVM2”)进行管理。我们希望 EVM2 支持我们当下所熟悉的帐户,智能合约,状态以及其他 Solidity 中的抽象概念。然而,底层的大规模改动让这种想法成为我们的一厢情愿,大多数现有的工具都不再适用于以太坊2.0。不过幸运的是,eWASM 团队为以太坊智能合约命令行编译工具 Solc、开发框架 Truffle 和测试环境 Ganache 做了一些底层的工作,所以在第二阶段的测试网络发布之前最迟发布期间,我们可以看到一些最常用的工具开始支持 EVM2 虚拟机。
在第二阶段中很可能会加入状态租金,这对当下的 Solidity 开发人员提出了一些有趣的挑战。状态租金机制下区块链并不会无限期地存储代码和数据,而是要求智能合约开发人员和用户随着时间的推移为 EVM2 虚拟机的存储付费,这样做是为了确保未使用的信息随着时间的推移而逐渐脱离状态,防止状态规模膨胀,它的目标是让用户而不是完整节点支付状态的费用。业界针对状态租金已经提出了许多不同的模型,但最终花落谁家还未成定局。
有趣的是,随着一些以太坊升级计划和著名的以太坊核心开发者推荐,状态租金可能是不同路线图中唯一的相同点。因此,我强烈建议在当前部署的智能合约中支付状态租金,并设计模型来转移状态租金给未来的用户。虽然我们不知道状态租金机制的精确设计,但我们应该准备好支付状态租金。
除此之外,我觉得第二阶段没有什么值得期待的了,因为它仍处于早期研究的阶段,还有几个核心问题亟待解决。考虑到当下非正式的规范和开发流程,以及第二阶段在第一阶段上的升级范围,2020 年之前启动第二阶段的建议似乎并不合理,也就是说,虽然以太坊 2.0 可能在今年推出,但是预计至少要到 2020 年以太坊 2.0 才能支持资产转移和智能合约。
|