The DAO 被攻击后的思考

2016-06-20 16:18 来源:chainB 阅读:3763
5月份刚创造了众筹项目世界记录的区块链项目The DAO昨天(6月17日)遭遇了重大事故,一份合约利用DAO的漏洞,劫持了高达360多万以太币(按事发前价格折算约值5亿人民币)。以太坊维护者和社 区参与者迅速做出了反应,例如号召大家通过发送垃圾交易阻止转账过程。

The DAO 被攻击后的思考

作者:雍亲王是谁


5月份刚创造了众筹项目世界记录的区块链项目The  DAO昨天(6月17日)遭遇了重大事故,一份合约利用DAO的漏洞,劫持了高达360多万以太币(按事发前价格折算约值5亿人民币)。以太坊维护者和社 区参与者迅速做出了反应,例如号召大家通过发送垃圾交易阻止转账过程。对于这种创新的项目,出现类似事故一点都不意外,可以说是发展中的必然过程。更值得 关心的是如何应对和处理,形成有效的机制,并预防类似问题的发生。

基于DAO合约的程序设计,这些被挟持的以太币需要27天之后才可能被提取变现。按照目前已经提出的某些措施,理论上有办法追回被劫持的以太币,至少是冻 结。然而,到底采取怎样的措施,正在引发激烈的争论。争论的主要焦点,在于是否因为这个事件(目前被定性为攻击)而采纳一些特殊的措施——例如撤销/更改 已经发生的交易,或通过修改软件“临时地”修改规则。任何对交易的人为干预,或临时改变规则,都会被认为是对区块链最基本的信条的损害。

可以看到,即使以太坊的创始人及以太坊基金会成员、核心开发人员想要在正常交易操作之外做些什么,例如修改软件,也必须得到区块链网络参与者(主要是矿 工)的同意,因为区块链基于对等网络分布式存储和协同维护的特点决定了,这种改变不仅仅要写成新的软件代码,还必须有足够多的节点共同采纳这些新的代码 ——如果不是所有的人都一起更新软件,少数人最终只有服从多数人的选择或退出,若分歧双方相对均衡则可能造成原区块链的分裂。在这个过程中,可以看到许多 有趣的现象。

社区的领袖与核心成员一方面在挨骂(例如有人会说,怎么这么长时间才做出反应);另一方面,某些措施的建议刚刚提出,又有人在说,这损害了去中心化的根 本,质疑他们权力过大,等等。还可以看到,矿工似乎是不可怠慢的,他们拥有比数量更多的普通节点更强的影响力。但后者,却可能是直接承受损失的普通用户, 常常是不懂技术的“小白”,又怎样在影响自身利益的处置方案的“技术”争论中获得应有的影响力?他们甚至可能发觉,不知道谁是自己的代表或服务的真正责任 人,那怕是信息的告知,紧急应对方法的指示。

由此联想到最近一直在思考的,区块链所面临的主要问题到底有哪些。我觉得,诸如区块容量、交易效率之类的技术问题最终都不难克服。区块链发展最大的挑战也许是来自社会经济层面的运行与治理架构问题,价值链重构问题。

首先是大家已经充分关注的,所谓政府管制问题,最明显的例如货币、有价证券发行这样的应用领域。

其次就是最近围绕The DAO正在热烈讨论的,法律适用性问题,这个问题与前面所说的监管问题相关,但并不完全相同。前一个主要是准入或许可问题,而这一个则涉及到原有法律完全空白的地方。

The DAO 被攻击后的思考

另一个至关重要的,是区块链生态中各种参与者之间的责任与利益关系问题。

例如,假设这次事件最终给某些DAO筹码拥有者造成了经济损失,他们似乎根本就找不到责任方。甚至所谓黑客若被找到,也可能会做出无罪辩护:他/她只是完 成了一些系统规则允许的操作,得到了利益,怎样判定这些利益是否非法的恐怕也有一争。又比如,DAO的发起人(目前未知)有责任吗?他/她也许只是提出设 想和“触发”了这个项目,甚至可能已经没有利益关联。DAO合约程序编写者有责任吗?他/她也许完全是义务地向开源社区提供了代码,其个人收入和代码生产 不具有确定的关联。现代公司制度的关键之一就是明确了财产权力和责任承担(主体),公司成为法律上的责任主体——法人,从而可以让投资者只承担有限责任, 管理者也要承担管理责任但主要与其报酬挂钩。而最为典型的公有链,是没有责任主体的,因此,任何参与者遭遇的损失可能完全无从追责,虽然这损失可能是具体 的人蓄意或过失造成的。这种责任链条的断裂,可能是合理的社会制度无法或不应容忍的。良好的发展需要完整和高效的责任链和价值链。

如何确立一个区块链生态中各种角色的责任与利益关系,是一个很大的挑战。最重要的角色可能包括:开源软件的编制、维护者、系统运行的参与者(主要是矿 工)、系统功能的使用者(用户)、以及“第三方”应用的或服务的提供者。这不仅涉及到明面上的责任划分或承担,还涉及很多深层次的问题。例如,开源软件代 码贡献者和项目(应用)之间的价值链条可能是断开的,责任的链条同样如此。又如,匿名者的代码是否应该采纳?怎样避免在区块链上有自己商业开发的人或企业 利用某种资金或人才优势,达成利己的不公平决策?怎样避免软件开发者利用自身的专业技术优势获利而忽略或损害公平或公共利益?当系统高度复杂,代码很可能 只有少数人才能理解和维护;当这些代码直接支配了实际运行的社会经济系统,他们无疑在事实上拥有了巨大的权力。这种情形下,仅靠代码开源、公众审核、自由 采纳等机制,其督效率与效力到底如何?

与上述问题相关,还有区块链开发社区或生态系统的治理架构和决策程序问题。一个区块链生态,将会面对技术开发与应用及社会伦理等纠结的复杂的问题。例如许 多人指出以太币社区所谓扩容之争,更多地表现为一种“政治问题”。它可能涉及多方利益的复杂平衡,没有一个完善的机构和制度,仅凭一群自然地凑在一起的 人,能否及时做出适当的决策。又如正在发生的DAO攻击事件的对策问题。从问题的监视,出现问题后信息的发布,紧急措施的采纳,到完整应对方案的开发,没 有一套适当的组织架构和流程,能否应付未来更广泛、更大规模和更多样性的应用?这种治理架构又怎样产生出来?怎样从现有的开源软件社区发展、衔接到大规 模、完整的商业生态?这都是重大的挑战。

区块链或基于互联网的价值传输与交换网络,带来在新的工具和可能性基础上,从一张白纸出发,重新思考和设计更加合理高效的经济架构的机会。在这个过程中, 有可能消除掉在原有技术条件下逐渐形成的一些不合理的社会经济结构,例如中介/权力机构过高的成本和价值分配,既得利益者的寄生,可以消除的人为操作和决 策等。然而,整个系统的开发、维护、治理终究是依赖于具体的人达成的,区块链生态中的社会性治理架构和价值链的形成也许会是比技术更大的挑战。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文

相关阅读