上周3以太坊由于The DAO被盗事件所提出的硬分叉方案最终得到超过85%的算力支持,而完成了硬分叉的实施。许多人认为硬分叉完成后,随着支持硬分叉的算力逐步增长,短链将被抛弃而成为历史,而The DAO的资金也应该被逐步提取完毕。然而出人意料的是,不仅在分叉后仍有价值6000多万美元的以太币未被从The DAO取出,支持硬分叉的算力也基本停留在90%左右,而剩下的10%的算力仍然一直支持着分叉前的短链,而让短链持续保持着新区块的发现。
而支持短链的组织则是硬分叉提案被提出时即宣布反对硬分叉的Ethereum Classic。他们在最初以太坊社区中出现的时候大家都只是付之一笑,认为他们的存续并不会长久,实际上即使发现有10%左右的算力仍然在短链上报块,大多数人仍然未对其有太多关注。真正的转折来自于上周日全球最大的山寨币交易平台Poloniex(P网)上线了一种叫做ETC的数字货币,也就是属于Ethereum Classic的代币。这一行为使得ETC有了交易价值,于是也使得那些支持短链的10%矿工从“为了信仰”变得真正有利可图。
ETC的影响还不止于此,由于ETC与以太币ETH共享192000个区块之前的区块链,因此在分叉之前即存有以太币的人会相应地在P网上获得相同数量的ETC。而ETC有了交易价值也就意味着原本持有以太币的人额外获得了一笔数字资产。于是在其他在线钱包或者交易所中存有以太币的人也纷纷将自己的以太币转入P网以获得“免费”的ETC。万万没有想到的是,有人发现将“免费”获得的ETC卖出后,将等量的以太币再次转回原本的在线钱包或者交易所,并重新重复向P网转移以太币的行为,就能够再次在P网账户中获得ETC。而这,就是重放攻击。
事实上,关于重放攻击的威胁早在硬分叉实施之前就在以太坊社区有所讨论,但若ETC本身不被任何人认可,或短链被抛弃,则反复获得ETC的行为也不会持续。就好比你去银行柜台不断地存款取款,能够一直获得交易凭条一样,这张交易凭条并不会激励你去再次重复这样的操作,因为它并不值钱。而P网上线交易ETC的行为就好比打开了用交易凭条换人民币的通道,有了价值的交易凭条就成为了人们反复去尝试获得它的动力。
不管是短链的持续存在,还是因为ETC上线交易而产生的重放攻击,笔者个人都认为它们违反了区块链的最长链原则以及唯一性,甚至于产生了实际上的“双花”。而为了坚持区块链不可更改性,保持区块链原则而持续支持短链的Ethereum Classic,实际上也在违反着区块链最原始的存在意义。
Ethereum Classic表示将持续为短链上提供与以太坊一样的智能合约功能,但会坚持PoW的挖矿机制,而不会随以太坊升级为PoS或者Casper。重放攻击也会随着各种交易所与线上钱包的隔离机制被阻止,最终可能将成为完全无关的两个独立区块链并行。目前以太坊的链仍然领先Ethereum Classic链3000多个区块。
此次分叉事件或许就像英国退欧公投一样,是一个大多数人都没有预料到的结果,也同样说明了算力民主与现实社会的民主一样,远没有大家想得那么简单。