DAO被黑已经超过48小时了!社区里仍然在热议,最终的解决方案似乎仍未确定!就像是面对情节拖沓的电视剧,渐渐地已经开始让人失去耐心甚至信心了……
北京时间6月19日早上,黑客发布了公开信,声称其能够通过DAO获得以太币,是因为“DAO代码本身就包含这种功能”,其行为并非盗窃,而是“合 法并正当的”。黑客的理由是(为了表明其正当性、合法性,该理由还是“律师事务所建议的”):DAO的智能合约代码没有任何解释,也没有任何其他文本限定 超出DAO代码设定以外的东西。在公开信的后半部分,黑客还不忘强调,任何软分叉或硬分叉,都是在侵犯其“合法且正当获得的以太币”权益,甚至带有威胁性 的指出,分叉将会有害以太坊生态。
面对黑客抛出的这封公开信,逻辑的焦点其实很简单,就是其行为是否是“DAO规则的合理运用”,相信无论我们是不是DAO的股东,都应当有大致类似 的基本判断吧?暴走恭亲王举了一个形象的例子:一群人用自动麻将机打麻将,然后有个人发现麻将机下面有个洞,把牌换了然后把所有人的钱都赢走了。虽然比喻 也有不恰当之处,但却非常形象地展现了这次DAO被黑事件。黑客的行为、用麻将机下面的洞换牌的行为,是对规则的合理运用吗?很显然不是!
那么,问题来了,谁都知道不是合理运用,但谁来主张呢?谁来解释呢?白硕老师如此质问,社区里却无人能回答。因为,DAO是“无主的”,无法确定有权对DAO规则进行解释的主体,也难以拿出做解释的依据,除了DAO的代码。
于是有人追问,DAO的代码是谁创建的?是Slock.it的DAO研发团队,而以太坊的创始人Vitalik Buterin亦是该团队的成员。所以,也只有DAO研发团队和Vitalik来牵头应对黑客的攻击行为了,而事实上,DAO研发团队在事件发生后,确实 迅速提出了一系列的备选解决方案。哪知方案提出后,立即就有人质疑,认为智能合约就应当遵循代码的自治,而不应当用中心化的方案去解决问题。
当然,多数声音仍然是支持对DAO的代码和规则进行改进的,毕竟,黑客的行为触及了人类文明的底线。二战后的纽伦堡审判,针对屠杀犹太人的行为,盖世太保辩称其行为是符合当时德国法律的,可是法官认为,法律不能违背基本的道德,恶法非法,道理很明了,无须赘述。
正当人们为一些形而上的问题争得不可开交的时候,有人指出了更重要紧迫的问题,或许他们是占较大份额的DAO股东吧,他们说:不管什么自治、去中心 化或者道德、法律,我只在乎我的财产,现在以太币被转到了黑客的账户(虽然依照规则还在冻结期),我们该怎么做,才能尽快挽回损失?
该怎么做,似乎问题又回到了原点,既然DAO是一个“无主的”组织,那么,就让我们发起一场投票吧,是软分叉,是硬分叉,还是什么都不做,让黑客把 财产“按照规则”拿走?用民主来体现民意,这个方法看起来不错!可是,面对社区里的投票,又有人提出了不同意见,认为社区意志并不能代表DAO的股东,更 无法体现出DAO股东的份额权重,甚至黑客如果派来水军或者干脆把投票系统也给黑了然后投足够量的利己票,怎么算?性急的人干脆认为,拖拖拉拉的民主,跟 黑客讲道理,无异于宋襄公之仁,先把盗走的财产夺回来,让警察先把黑客抓起来再说。于是,有人给公安网监报了案。
向警方报案多少有点黑色幽默的意味,对于如此新兴的事物,警方即便有回应,也不会这么快的。正当舆情趋于缓和之时,黑客一方发起了攻势(该声明尚未 验证是否真是黑客方面所为,所以只是疑似),通过代言人发声,他们(此时代言人声称黑客是一个团队)将建立一个智能合约,用100万以太币和100个比特 币奖励那些拒绝分叉方案的矿工。这就是所谓的“贿赂”吧!在去中心化自治的代码世界里,这似乎是允许的,即便不允许,又能有什么办法阻止呢?甚至,这不是 矿池的主持人能决定的,即便目前分布图显示算力集中在某几个大矿池,但实际上每一个矿工都是可以随时选择去别家的,没有任何方法可以左右成千上万的矿工的 行为,除了他们内心真实的想法。既然代码的问题只能留给用代码的方法来解决,那么针锋相对的,Ethcore(前以太坊首席运营官、以太坊黄皮书即形式化 推导证明的作者Gavin Wood创立的技术公司)提出了反过来“贿赂”矿工的方案,从DAO的本金中拿出一部分设立奖励基金,用于奖励支持分叉、反对黑客行为的矿工。而 且,Ethcore已经迅速推出了代码。
看起来不错的解决方案,依然不能让所有人都满意。有人认为,这个方案并不是民主的,他们质问,为何不是由DAO的股份持有人来决定是否分叉,而是由 矿工来裁决股东的财产归属?想想也是,财产被黑客夺去,却要让并无干系的矿工来决定是否能夺回,命运不能把握在自己手中,也难怪他们会不爽了。
这也不行,那也不对,部分人极端起来:干脆把DAO里面的以太币“燃烧”掉吧!就像合约币(XCP,Counterparty)那样把比特币打入没 有私钥的“黑洞地址”吧!这样“壮士断腕”、“鱼死网破”,股东们无法赎回,黑客也拿不到,将这些以太币永久冻结吧!我不禁想思索,DAO的初衷不是要建 立一个去中心化的自治经营组织吗?这些众筹来的以太币本来是要在正常投票后用于选定项目的经营的,这是与合约币的理念所不同的,如果不能取出和使用,如何 用于经营,如何为股东们实现价值的增值呢?很显然,我们不能为了所谓的“安全”,把DAO变成一个僵尸组织吧?除非DAO是准备变成另外一种与现在截然不 同事物。
DAO被黑事件,无疑给蓬勃发展的区块链技术和去中心化的理想泼了一盆冷水。在北京时间19日晚间DAO官网发起的投票,与之前若干个投票一样,与 庞大的众筹3亿美元的体量相比,已投票人数是微不足道的。难道大多数人根本就不懂技术原理,而只是在盲目的炒币?不得而知。社区里还充斥着失望的言语:原 来code根本不是law,我们诟病语言文字不够精确,所以期望用代码来实现精确的表达和执行,但是现在才发现,原来code只是看起来比law更精确, 实际上却永远也无法逾越能指与所指之间的鸿沟,甚至现在看来,code还不如law,至少law还有国家机器维护,而code的世界里一旦出问题,连个具 体的负责人或组织都没有,非常的不适应啊!
失望的情绪是难以避免的,毕竟我们的财产和理想都受到了损害。但是,如果更理性地思考这些问题就会发现,其实,现在之所以社区里乱哄哄一团糟,一个 周末落得满地鸡毛,混乱无序的本质原因是因为,在区块链、去中心化的世界里,还缺少法治的基础设置。这里的法治并不仅仅指传统的由国家权威保障的强制性规 则,因为正如去中心化的精髓所展现的,传统的法律对区块链上具体事物的控制是无法实现的,但是,这并不意味着传统法律在区块链的世界里彻底退场;这里的法 治应当包括区块链上的去中心化应用在纠纷发生后一系列的纠纷处置、权利救济方案;这里的法治还应当包括区块链的代码与传统法律之间的有机衔接。混在一起不 太好表达,我分为四段来描述:
1、智能合约是对法治精神的最好诠释。
教科书上谈到法治思想的历史,都会先讲柏拉图在《理想国》中提出的“哲学王”,柏拉图原本希望有一个全知全能、道德完美的哲学家成为城邦的统治者, 可是在其晚年,他发现这样的人在世界上是不存在的,于是,提出了“次好的方案”,即法律之治,法治(rule of law)。法律虽然存在效率较低、语义模糊、反应滞后等缺点,但是与专制、反复无常的人治相比,却具备维系社会存续的优良品质。从法治的定义可以看出,一 旦确定,非经法定程序,不得随意更改,法律的执行不以人的意志为转移,这些描述用在区块链上的去中心化应用,特别是用来形容智能合约,也是非常契合的。所 以,莱斯格教授才会提出“Code is Law”的主张(当然,那是在十年前),看穿传统权威、中介存在的各种诟病,我们才会对区块链、去中心化的事物抱有如此之高的期望,因为,智能合约是对法 治精神的最好诠释,是未来实现法治的重要形态之一。
2、去中心化应用的研发,应当法治先行,而不是金融先行。
DAO是一个金融项目,是目前全世界最大的众筹项目,在区块链的生态里,交易所、挖矿、发行新币的众筹,无不是金融项目,这是人的逐利本质所导致 的,市场经济,无可厚非。但是,西部狂野的时代应该结束了,如果去中心化应用发生了类似DAO这样的问题,在区块链的世界里,连个定纷止争的规则都没有, 将何谈财产权利、何谈金融发展?我的建议并非是将区块链上的纠纷直接诉诸传统的法律和机构,前面已经说过了,传统的法律和机构对区块链上的事物是无能为力 的,如果只是一纸空文的判决书,而无法强制执行,毫无意义。我的建议是,包括DAO在内,今后所有的去中心化应用,都应当将尽可能完善的纠纷处置机制作为 其代码的一部分。甚至,我提议在github上面建立一套去中心化应用纠纷处置的通用代码,集众人之智进行完善,供将来的去中心化项目直接调用,这样一套 代码的名字可以叫“BlockChainLaw”。
3、区块链尚不能完全自治,传统法律和司法机构还无法彻底退场。
正如我在向身边的技术达人们介绍区块链技术细节时,遇到最多的质疑,就是“既然是一个去中心化技术,为什么还需要用到服务器?”虽然我可以回答: “存储和程序都是公开透明及确定的,无论用哪台服务器,都可以运算得到相同的结果。”但是,与许多演讲和文章中激情高昂的宣传相比,在现阶段要宣称区块链 可以实现理想中绝对的去中心化,实际上是底气不足的。区块链的自治属性也是如此,DAO被黑事件中人们的手足无措,已经充分展现了,在现阶段,区块链上的 去中心化应用还不能实现完全、完美的自治,甚至如果不采取修改代码的行动,在现有的代码框架内,要阻止黑客的行为,是不可能的。
去中心化不是绝对,自治尚未完全完美,因此,我们现在仍是需要传统的法律和司法机构的。可以设想,攻击DAO的黑客仍然会在未来的某天站在传统的法 庭上,作为(民事)被告和(刑事)被告人;可以设想,如果分叉的方案没有通过,而DAO的股东要自行主张权利,一定会向法院申请强制执行。毕竟,我们是有 血有肉的人,发明机器是要让它为我们服务的,而不是让它来桎梏和为难我们自己的,回到本文开头讨论黑客公开信的逻辑原点,传统法律虽然对于区块链上的事物 没有控制力,但是,可以设置一个界限,区块链中具体的事务,传统法律不干涉也不能干涉,但是,所有的应用都不能超出范围、触及底线(人类社会存续的基本道 德),任何胆敢触犯底线的人和事物,传统的法律和司法仍将具有管辖权,毕竟,黑客再高明,也是地球上的人,盗走了再多的财产,也是要将其进行价值变现的, 而对于这些,传统的法律和司法是丝毫不弱的。
这里还想多说几句:区块链固然是一种共识的产物,但它是一种“机器共识”,机器共识固然透明公开且忠实执行,可是面对千变万化的世界和未知未来,面 对突如其来的“黑天鹅”,面对恶意使用,面对情势变更,将可能把事物引向歧途。说到底,“机器共识”只是“人的共识”在代码层面的一种体现,如果机械地遵 循机器共识,就是一种舍本逐末、削足适履,最终会忘记初心。当机器共识不足以自治,我们仍然要回到人的共识层面来解决问题,今天针对DAO被黑事件的处理 不正是这样吗?只是今天,我们还没有把从应用层的“机器共识”到基础层的“人的共识”之间的道路铺设好,还是一条泥泞崎岖的道路,所以我们需要付出翻山越 岭的努力。
4、区块链的世界与传统的世界之间应当做好有机衔接,Code与Law要融为一体。
无论是区块链上的智能合约,还是其它去中心化应用,技术上,从基础架构到外围调用,都有各种各样的接口和协议将它们整合成一个有机的整体,区块链世 界的代码与传统世界的法律之间,也应当有某些接口和协议(“Code is Law”意味着它们是同质的、兼容的)。正如前面分析的,区块链世界的代码控制具体的事务,而传统世界的法律守护着人类社会的底线,这就像现在我们在以太 坊上写一个去中心化的智能合约,要让普罗大众使用到它,仍然还是离不开中心化的服务器提供的web服务,但是这真的并不重要,因为我们要的并非来自乌托邦 的概念,而是要通过各种技术手段各显神通、取其所长、优势互补,从而让这个世界变得更加美好。
具体来说,我为之前设想的“BlockChainLaw”开源项目,想到了一个功能:为传统的法律留下一个终极入口,这个终极入口可以在极端紧急特 殊的情况下让传统司法机关介入区块链系统的运行,当然,该终极入口的设定需要人们的共识,其运行和启动也需要人们的共识,也就是在极端紧急特殊的情况下, 人们通过投票来打开一个类似多签账户控制的密码学闸门,才能让司法机关获得区块链系统的某些终极控制权。这样,就可以避免紧急事态发生后应接不暇,避免将 来发生诸如机器杀人却无法阻止这样让人类手足无措的悲剧。是的,我们仍然需要一个中心化的终极控制,因为“人的共识”永远比“机器共识”有潜能、有智慧, 但是无需垂头丧气,因为通往这个“终极控制”的路径(程序)是去中心化的,其实,我们是前进了一大步的,失去的不过是一点点名义上的缺憾(去中心化不再完 美),但得到的,却是全人类基本道德的遵循和有力的安全保障。
“BlockChainLaw”项目要达到这些目标,绝非易事。区块链是世界的区块链,而每个国家的法律制度甚至每个国家内部的法律制度都不一致 (想想美利坚联邦各州,想想中国的“一国两制”),要想它们与区块链系统纷纷达成共识,无异于是在创设一项联合国的法律制度。换个角度看,区块链系统更像 是各国(地区)之间法律制度达成共识的一个平台、桥梁和纽带,“BlockChainLaw”这个“野心”会不会太大了呢?
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。