以太坊升级Metropolis版本前需要做什么
暴走时评:以太坊平台制定了一系列称为EIPs的改进提案,旨在简化硬编码的功能,给开发者更多自主设计的空间。这些系统升级分四阶段进行,目前处于第三阶段“ Metropolis”。虽然曾经因为黑客攻击导致系统中断,可是项目仍在继续,目前需要编写系统测试代码,并让开发者就系统升级达成共识。Metropolis升级将有利于提高系统灵活性,给开发者更多自由,同时不影响用户的安全性。
翻译:Annie_Xu
以太坊渡过难关,开始进入平台四步发展计划的第三阶段,继续奠定其所谓“世界计算机”的基础。
下阶段称为“Metropolis”,融合了各种看似随机的技术调整,但将是以太坊应用简化与升级的基础。
此次升级耗时比预期时间长。主要是因为去年未知攻击者对以太坊网络发起了拒绝服务攻击,中断了平台上正在进行的交易和项目。
然而最近开发者的会议记录显示项目进展仍在持续,一些团队即将完成调整部署,正在准备测试。
以太坊基金会(Ethereum Foundation)测试工程师Dimitry Khokhlov说,第三阶段开发大致完成一半。
那么还剩下什么要做的呢?
改进建议
首先开发者需要完成升级代码。尽管这个等待已久的版本不会包含很大变化,比如权益证明或分片,可是将综合大约10个以太坊改进提案(EIPs,Ethereum Improvement Proposals)。
这些EIPs旨在减少以太坊硬编码的功能数量,奠定“精简化”的基础。其目的很像以太坊本身的目的,让应用开发者有足够的自由设计空间。
比如EIP 86使用户或者app开发者按照自己喜欢的方式保护账户。
Ethcore发言人说,Rust语言编写的以太坊客户端Parity已经执行了10个EIPs中的七个,但是开发者需要就实际部署哪些调整方案达成共识,因此目前在等待更明确的指示。
这个“粗略的共识”方法在开源开发项目中很普遍。
Parity或Geth不会等待很久,因为这些项目已经接近完成。不过其他代码编写采用了不同的编程语言,包括python和C++。
复杂的流程
其中一个棘手部分是所有以太坊客户端的调整,无论它们使用了哪种编程语言。
以太坊基金会(Ethereum Foundation)的Khokhlov已经在使用Hive工具编写代码测试,以保证客户端正确执行调整的同时,所有客户端就共识层调整达成一致。这是因为如果客户端不遵循同样的规则,可能出现分裂成不同网络的意外情况(就像11月发生的)。
与之前Frontier和Homestead阶段的调整一样,此次升级为Metropolis需要进行“硬分叉”,也就是说没有升级为新区块链的节点或矿工将会落后。由于意外分叉的可能性,硬分叉争议获得了重视。
但是既然这个调整是以太坊的长期技术路线,一般认为此举不会引起分叉。
尽管如此,调整需要格外注意,Khokhlov也说:
“硬分叉过渡规则让我头疼”。
对Khokhlov来说,保证考虑到所有极端情况,保障用户以太币安全,有很多限制条件。
比如他必须确保只有“汽油限制”和交易签名正确,以及不同分叉对应的操作码行为不会打断运行的情况下,新分叉上的交易才可以运行。
“我们的调整越多,代码校验次数越多,校验的逻辑也越多。这就使代码更加繁复”。
潜在利益
但是当该说的和该做的都完成了,Metropolis升级可能带来更好的以太坊应用。
Stefan George
以太坊预测市场Gnosis首席技术官Stefan George说:
“更多的精简总是实现更大的灵活性”。
比如灵活性的提高可以让接收人或中间商,而不是app用户支付交易费。
这可以利用基于以太坊的应用程序给用户带来利益,比如笔记本。通常用户必须购买以太币才可以进行调整,比如增加或删除记录,但是Metropolis升级后,供应商可以支付费用,用户不用购买以太币就可以做出调整。
最终此举使以太坊协议更趋近于传统app商店的用户体验。
“我想如此使用以太坊服务,可以获得更多用户”。
George说,另一个Metropolis修改将有助于解决一些链下技术问题,给以太坊区块链主网络减少数据,改善网络的性能和可扩展性,同时不会影响用户的安全。
其适应性将再次使开发者控制应用设计。
就像Parity团队说的:
“Metropolis是完善协议,进行曾经不可行的用例的重要步骤”。
作者:Alyssa Hertig | 编译者:Annie_Xu | 来源:Coindesk
Scan QR code with WeChat