Author

Topic: 以太坊区块链意外分叉了 (Read 220 times)

full member
Activity: 225
Merit: 250
November 24, 2016, 11:28:28 PM
#1
以太坊两个客户端Parity和Geth在处理交易方式的细微差异导致同时出现两个链,影响了交易的正常进行。与几年前比特币的偶然事件如出一辙。为此Parity和Geth已经在商讨解决方案,可能会出现交易回滚。但是无论如何在系统修复前,最好停止交易。

翻译:Annie_Xu

本月24日伦敦时间下午三点,以太坊两个主要客户端Parity和Geth突然出现不同步情况,意外地造成两个链并行的状况。用户,尤其是交易所不得不终止交易,或者等待多次审核确认,直到问题解决。开发者立刻采取紧急处理措施,共同商讨解决方案。

Geth开发员Nick Johnson说:

“根本原因是出现了状态清除的极端情况;如果某个空账‘被人动过’,一般会被删除;但是在该指令缺少‘汽油’(区块链交易中代码运行步数相对应需要支付的货币)的情况下,Geth还是将其删除;而Parity并没有删除”。

EIP(Ethereum Improvement Proposals,以太坊改进提议)没有明确指出哪种做法是对的;只是大家一致认可Parity更合理。只能说标准和共识测试的欠缺是不幸的过失。

目前Geth的解决方案是用补丁修复,使其与Parity同步。预计方案很快就可以完成。

Parity Technologies创始人Gavin Wood说,Geth有漏洞,就是说”一半挖矿网络采用不完善的Geth,另一半用完好的Parity。Parity会继续这样不改变“,但是使用Geth的交易可能需要回滚了。

对此Johnson说:

”Geth的分叉会被视为非常规,因此会被放弃。大多数交易会保存在分叉上,所以大多数用户并不用担心回滚的问题。主要问题是与其他系统交互的时候,可能出现交易最终性的问题,比如说交易所是否会承认该笔存款并兑换成法币“。

Wood说,Geth会修复,”主链会继续正常运行“,只是建议大家谨慎一点,因为以太坊区块链的运行环境已经变了。

这个情形与2013年和2015年比特币分叉类似。都是系统升级的漏洞意外导致出现两个链。之后挖矿在两个链上进行,最后所有交易回滚到一条链,另一条就被放弃了。

以太坊同样是升级造成的。两天前为了修复某些漏洞,以太坊进行优化;但是两个客户端操作的差异还是导致网络分叉。

因此使用Geth客户端的用户最好等待解决方案出来才继续交易。

转自:http://chainb.com/?P=Cont&id=2815
Jump to: