找回密码
 立即注册

扫一扫,登录网站

首页 自媒体 查看内容
  • 4072
  • 0
  • 分享到

醒醒吧!你们口中的智能合约并不智能。

2018-4-24 11:12

来源: qukuaixiangduilun

最近有很多区块链项目找到我,项目方动不动就说我要开发个公链;动不动就说老子还要做个侧链;动不动就说自己的智能合约所向无敌;动不动就整出一堆的专业性名词,节点、共识机制、去中性化。然后白皮书上列上一堆专业数学计算公式整的跟数学家一样,最后只不过就想发个币。

我也就是一脸的呵呵!!!


吐槽完后,今天想和大家聊聊大家口中的智能合约其实并不智能。


150万份现有智能合约,用真实价值跑动的不到500。

当下炒的火热的区块链智能合约起源于以太坊。

2014年,19岁加拿大籍俄罗斯的少年天才程序员 Vitalik Buterin受比特币启发后提出以太坊概念并通过ICO众筹得以发展。基本理念是在区块链之上运行程序协助合约谈判,来有条件的执行承诺交易。


少年天才程序员 Vitalik Buterin

智能合约的意义在于可以让众多组织的数据库得以用低廉的成本交互,并且让用户写下精密的合约,功能之一是产生去中心化自治组织(DAO),也就是一间只是由以太坊合约构成的虚拟公司。

这个理念对区块链技术是一个创新,但实质上这自动执行的功能绝非新概念。

自动售货机就是我们日常生活中最多见的例子:你给它5块钱,它会自动给你一瓶可乐。它并非多么智能,同时它也不是一个法律意义上的合约,当事人无追索权。因此,专题嘉宾前摩根大通区块链负责人Amber Baldet认为区块链智能合约 “命名不当”,充其量仅仅是“分布式世界计算机 (decentralized world computer)”。



智能合约的意义在于执行的确定性,与法律合约受当事人及律师主观解释的不确定性形成鲜明对比。而正是由于这样按照事先写好的电脑程序的确定意义的执行,省去了交易双方对信任的需求。


中间:Amber Baldet;最右:Lee Schneider


150万智能合约中有多少靠谱?


区块链上的智能合约的许多细节仍在研究中,包括如何写出完善的合约以及验证合约的功能。合约的公开性也意味着如果合约中有漏洞,任何人都可以立刻看到,而修正程序可能会需要一些时间。


黑客可以利用这个时间进行攻击。区块链智能合约从出现至今的短短数年屡屡受到大规模的攻击或自射乌龙。最早引起人们关注的被袭事件是2016年6月的 “The DAO Hack”。一个“攻击者”利用了“The DAO”(一个德国初创公司的网络融资)软件代码的一个漏洞,即“递归调用错误”,在以前的提款生效之前不断地提取数字货币。攻击被发现之时,存在DAO系统内的大量数字货币(价值约5,000万美元)已被转移至DAO成员无法控制的一个独立账户内。更近的影响力较大的例子还有2017年11月以太坊执行自身漏洞而造成的1亿7千万美元的账户完全消失,2018年4月市值排名21位的Verge币因程序漏洞受到51%袭击,损失25万代币(Verge币),占市值的22%。


透明,方便还是保护隐私?


鉴于不久前爆出的Facebook用户个人数据使用上的问题,Amber Baldet认为目前的公有链并无数据隐私可言。当今是一个技术框架的交叉口,接下来要做的选择不外两个:一是链上加密,二是类似于File-coin的结构,在独立封闭的隐私系统之间进行有控制的沟通。“如果能让个人用自己的数据牟利也许能真正改变之前隐私总是排在便利之后的情况。” 


McDermott Will & Emery的资深律师Lee Schneider解释了区块链中一种“激进透明”的观点,认为既然我们已经为了方便放弃了自己的隐私,那何不干脆透明到底,反而可能也就使得隐私没有那么重要。“我认为未来会出现不同透明程度的区块链:有些会非常公开透明,有些有一定的透明度,另外一些非常私密,这些各有各的存在价值。或者那些“激进透明”的链有隐藏的侧链,即使所有的交易都记录在透明链上但归属仍隐藏于视线之外…用户可以根据需要选择参与各种区块链。”


颠覆力和阻力?


普遍认为区块链有潜力改变很多传统行业的运行方式,首当其冲的是风险投资,保险,以及航运。但同时区块链在各个行业的应用也会受到非技术原因的阻碍,最大的一点是对现有工作岗位的重大影响。


举个例子,特拉华州区块链计划落实的第一个项目是智能商法典(UCC)备案。商法典备案原来是非常简单但是极容易出错的文书工作,对大小商业交易的记录很重要,尤其是完成证券登记。UCC最为人所知的一个错误是在通用汽车破产案中,因为文书偏差差点导致15亿美元的公司债券从有抵押债务变成无担保。如此适合区块链的经典用例的都不是能轻易实现的,因为实施之前首先要帮这些被取代的文书人员再就业。


区块链作为分布式账本有一些应用场景,但是不会太大范围的应用。智能合约则非常不靠谱,最多能在彩票、地下赌场有些半黑半白的应用。而那些币,除了黑市洗钱、违法交易以外没有任何价值。


区块链的宣传点不外乎分布式去中心化、公开透明可审计、安全不可篡改。所以当有大公司提供BaaS服务的时候,我第一反应就是挂羊头卖狗肉,按道理认为区块链是未来将重构一切的那些支持者,更应该出来反对,但是遗憾没有,他们把这些服务当做区块链是未来的依据。微软也好,IBM也好,他们提供的区块链服务让开发者开发,用户使用,这些账本存储在哪里?在这些互联网巨头的云数据中心里,在互联网的巨无霸手心里面,完完全全违背了去中心化的理念好么?

当有大公司宣称自己的业务运行在区块链上时,我有同样的反应。这些区块链节点有多少个?控制权在谁的手里?哦,全部在这些大公司的运维部么手里。我区你妈的块。

那么公有链是不是更靠谱?相比而言,就分布式去中心化和公开透明可审计方面要好很多,但是不够大的区块链很容易遭受计算力攻击。物联网设备这么发达,安全又是原始阶段,黑客控制的大规模pc加上物联网设备,达到几十万的规模不是难事,更不用说国家机关的超级计算机了,51%攻击?我看91%攻击都有可能,真的不可篡改不可撤销么?

有没有可能的区块链应用?联盟链也许是一个好主意。多加企业联合在一起,每家多少节点,共同存储托管一些不太敏感的数据,还是可行的。

所以我认为,区块链能有一些应用,但是不会很广泛的应用。


智能化?


再说智能合约。这是大家谈得很多的一个东西,有人反对区块链重构一切或者说币是泡沫的时候,就有人跳出来说我们有智能合约多么多么牛逼,去中心化的信任,重构社会机制。前几天我花了一晚上时间看了看,就两个字,呵呵……

首先,请把智能两个字去掉,或者改成自动合约,因为这跟智能没有一毛钱关系。

然后我们继续。两只球队比赛,我赌a赢,你赌b赢,于是5毛赌局开始了。我怕你反悔,你怕我反悔,我们决定一起把钱交给黄鹤,让他主持公道。结果比赛结束了,我去找黄鹤领钱,发现他拿着钱带着小姨子跑了。如果有智(自)能(动)合约怎么做呢?我们写一个合(程)约(序),双方的钱包都写进去,如果a赢了你给我钱包打钱,b赢了我给你钱包转账,把这个job发到区块链的分布式网络去,这个job不可撤销不可篡改。然后静待结果,比赛结束了,结果出来了,job执行,一个人拿到钱,很赞,完美。

似乎有个问题,这个比赛结果哪里来?

去 第!三!方!权!威!地!址!拿!

啊?不是说去中心化的信任嘛?

“假设在区块链体系的租房APP上,租客与房东达成了租赁协议,其中有一个智能合同规定,在退房时,如果租客弄坏了客厅的小米9A电视,则需要按退房当天小米官方的价格原价赔偿。转眼到了退房的那一天,租客在APP上点击一键退房,APP自动下发指令让客厅的小米9A电视自检(确认是否损坏),因为租客在使用过程中,确实弄坏了小米电视,导致自检结果触发了智能合同中的赔偿条款,很不巧的时,当天小米天猫旗舰店正在做活动,比小米商城要便宜300元,此时智能合同赔偿金额要以哪个价格为准?

假设现在有一个第三方系统(预言机)可以提供权威准确、不可篡改、稳定、并可接受审计的价格查询接口,包括查询小米9A电视的价格,在执行赔偿智能合约时会自动触发该预言机,向区块链发送一笔交易,交易的数据块携带了小米电视9A的价格,随着每个矿工节点区块的同步,就保证了价格完全一致。

换一种解释,预言机整个完整的工作流程是这样的,首先预言机从小米官方获取小米9A的电视价格,然后向特定区块链上的地址进行转账,并将价格信息写入交易备注,这样智能合约只需要查看特定地址的交易记录,就可以获取小米9A的价格了。而由于区块链会自动同步存储包含交易的区块,所以智能合约几乎只需要访问本地就能得到价格信息。既保证了访问效率,又保证了价格的一致性。

总的来说就是由预言机(第三方)将数据推送给区块链,而不需要智能合约主动向第三方拉取数据。”

有卵用?讲了一大堆,预言机,分布式预言机,预言机网络,各种概念,最终呢?nb的预言机还是要去小米官网拿数据,而且折旧什么的一样各种纠缠,你的合约里面不可能考虑了各种情况万无一失。球赛的话,还得去球赛官方拿数据。

信任不是无源之水,最终还是有权威第三方作为根。所谓智能合约,并没有完成去中心化的信任构建,使用的还是区块链网络的不可篡改不可撤销特性——关于这个特性我前文讲过了,区块链节点要么在云计算巨头的计算中心里面,要么直接掌握在大企业私有的idc中心里面。智能合约的生效,还是依赖一个独立权威第三方,提供结果,作为合约执行的条件,这跟支付宝有多大区别?

“如果说预言机和预言机网络是数据的搬运工,那么预测市场则可以给智能合同提供未来准确的数据。

假设今天晚上在天河体育中心举行世界杯决赛,所有的直播和赛事数据都来自于CCTV5,却没有人能保证CCTV5的网站不被攻击,或者出现无法访问等各种意外情况,而一旦出现这些意外将造成严重的后果,在这种情况下,我们就可以运用预测市场的技术。

预测市场的最终数据从哪里来呢?数据来自于人,而非机器,比如那些博彩,下注,竞猜等一切与比赛结果相关,并捆绑了自身利益的人,都可以成为预测数据的提供者,因为他们捆绑了自身利益,他们不会牺牲自身利益提供虚假数据,从而有效地保证了数据的可靠性和真实性。”

最后是关于预测市场的。简单一句话概括,就是一人一票,我说a赢了你说b赢了。谁人多就是谁赢了。你们愿意参与到这种合约里面去吗?每次都赌自己在人多的那一面?

当然,智能合约在某些时候还是有用的。比如说彩票、赌博。这种结果不需要第三方给出,在job里面直接随机生成。但是如果合约代码有鬼,那就自认倒霉吧——别人还可以解释成bug。一旦涉及到现实,智能合约就乏力了。

币,我都懒得说了。

区块链有一些应用场景,联盟链可以搞搞,但是颠覆一切?做梦。智能合约?比作为账本的区块链都不如——最后可能成为分歧争端机那样的东西,就在一个大的同一平台上对赌,反正要权威第三方,还要区块链干啥,阿里云飞天提供一套DSL语言就ok了。

醒醒吧!!!

一切脱离商业本源的项目,最终都是一地鸡毛!!!

版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。
相关新闻
发表评论

请先 注册/登录 后参与评论

    回顶部