外界似乎对ETC(以太坊原链)硬分叉有所误解。不基于事实的推论就像是没有脚的小鸟。如果ETC不进行硬分叉,它一定会因为挖矿difficulty bomb问题走向灭亡。
部分ETH(以太坊分叉)社区成员把硬分叉当作攻击ETC的武器。只能说明他们对DAO事件的理解有偏差,他们根本就不明白当初为什么有那么多人反对ETH的第一次硬分叉。
为什么不可更改性那么重要?
只有不可更改的公共账簿才能保证区块链的去中心化。之所以区块链网络在挖矿上花费了数百万美元,是因为只有这样才能确保这个账簿上的交易是永久不变的。
去中心化的公链离不开不可更改性,因为这一特点能保证系统正常运行,而不需要信任第三方。
因此,改变账簿交易历史的硬分叉彻底违背了不可更改性,而修复协议漏洞的硬分叉则是可取的。
一旦违背了账簿的不可更改性,就会开创一个危险的先例,这个区块链也就再也不值得信任了。
DAO救助方案
当初ETH切换到homestead时就已经执行了一次硬分叉,当时社区内部并未产生争议。ETH成立之初就定下了一个社会合约,即硬分叉是其发展演化过程中的一部分。作为ETH初始社会合约的一部分,ETC并不会抵制硬分叉,但仅仅将其用于协议更新。
当时DAO的硬分叉之所以会带来那么大的争议,是因为它违背了公共账簿的不可更改性,仅仅为了挽回一个第三方app的损失。那次硬分叉并不是协议层的更新,违反了初始社会合约去拯救了一家私人公司slock.it。
据说,ETH开发者不得不拯救DAO的原因是这个项目实在太大了,经受不住失败。放任投资者损失的几千万美元不管,只会给ETH生态系统带来负面影响。
类似的救助方案在当今社会中十分常见。大型企业,比如说银行,他们的规模实在太大,一旦破产,必定会对经济造成不利影响。问题就是,通常都是纳税人负责出资救助这些企业,而他们却建立起一套裙带资本主义系统。得到救助之后,他们会更加肆无忌惮,因为他们根本不需要为自己的错误买单。
DAO事件就是这样一个不顾一切的后果,整个项目漏洞太多:
- 项目全程都应该设有安全审查,不能等到接收资金之后才开始。
- Slock.it试图从其安全服务中获利。
- 投资者在没有经过基本的尽职调查的前提下就盲目地投了1.5亿美元。
- Vitalik也投资了DAO,也就是说,他之所以那么坚持不涉及协议更新的硬分叉,是因为其中存在利益冲突。
- DAO违反了合约条款,进行了虚假炒作,其实它的系统根本不是不可更改的。
- 投资者过分看好DAO项目,对于违反ETH核心价值主张毫无悔意。
危险的先例
DAO救助方案开创了一个危险的先例,暗示账簿状态可以任意更改。或许Vitalik是出于好意,但他确实改变了游戏规则。危急时刻,他并没有选择不偏不倚地维持中立账簿,而是选择成为智能合约的决策者以及ETH“亲民”的独裁者。
ETH在可更改性的道路上越陷越深。其中一个有争议性的的例子就是EIP156,Vitalik建议,如果遇到智能合约意外崩溃,可以给用户退款。
他写道:
EIP156确保了持有以太币或者其它资产的用户在账户出现问题时进行提现。造成资金‘卡带’问题的情况如下:第一种情况是意外创建了没有代码的合约,因ETC合约创建而遭到重放攻击(replay attacks)产生的损失,发送资金到ETH但却没有创建合约;第二种情况是因使用旧版ETH javascript程序库计算出了错误的ETH地址而产生的损失。请注意,以上所举的例子中,资产的‘合法所有人’是显而易见的,用数学方法可以论证。任何用户都不会被随意剥夺任何资产。另外,这一协议不牵涉任何特定账户、用户或app的利益。
我明白,这个协议的争议会很大,因为它看起来更像是一场‘救赎’而不是‘技术改进’。相对于之前来说,这个协议的干扰性更弱;目前该协议仍处于社区讨论阶段,并没有正式生效。
试想一下,如果比特币开发者决定硬分叉,仅仅是为了给那些意外遗失私钥的用户退款,你会怎么想?虽然这个协议可能是出于好心,但却扼杀了不可更改性,使ETH变得更加中心化。
这种情况还可能开创法律判例。以太坊基金会(Ethereum Foundation)凭什么保证合约不会受到监管部门的审查?他们选择硬分叉是不是有监管部门在施压?其中一个例子就是Augur,它是基于ETH的去中心化市场预测平台,而线上赌博在美国是违法的。
去中心化
我想对批评ETC的人说,ETC是自由市场和去中心化的有力证明。无论你们有多少支持者,都不能强迫别人接受他们不认可的改变。
可以说,Classic是保护ETH免受法律追究的一道围墙。万一ETH因硬分叉遭到起诉,他们可以辩驳说硬分叉是由争议的,造成了网络分裂。
ETC区块链对所有智能合约和账簿上的交易都是公正的。ETC的目标是保证ETH初始社会合约——不可更改性得以延续。像比特币一样,ETC由社区的自愿者共同维护,力求实现真正的去中心化。