如何解决智能合约不够智能的问题

区块链

575人已加入

描述

Facebook的Libra面临着一项艰巨的任务,那就是在明年某个时候在全球范围内推出一种基于新代码的新型加密货币。在承担这项任务的过程中,他们希望实现软件历史上的第一个目标:一个能够立即运行的主要新代码体。我评估了在这里工作的可能性。与此同时,他们还推出了基于全新语言的全新智能合约框架,从而加大了赌注。

智能合约是扩展和定制区块链的一种方法。外界可能会认为,比特币的竞争对手以太坊(Ethereum)之所以脱颖而出,是因为它的名字比比特币还要酷,但内部人士知道,一个重要因素是它开创性地整合了首个广为人知的智能合约。下面是我对智能合约的解释。

但有一个小问题:无论以太坊的智能合约有多酷,对成千上万个智能合约的研究表明,实际上大多数智能合约都有bug和安全漏洞。更糟糕的是,智能合约是“不可变账本”的一部分,而“不可变账本”是为了确保事情的安全。

Facebook已经悄然意识到,要让原始的区块链数据库变得更加实用,需要智能合约,但大多数智能合约甚至都不够智能。他们将如何解决这个问题?

互联网和企业巨头源源不断地推出区块链和加密货币计划,其中一个美妙之处在于,它们往往用简单明了的语言告诉我们,整个区块业务存在致命缺陷。当然,他们不会这么直接的说。他们知道他们已经创建了一个大大改进的区块链系统(或者其他什么)——一旦你完全意识到标准问题有多糟糕,你就会坚持购买他们新的、大大改进的版本。 正如我在这里所描述的,微软和英特尔在解释他们的专有版本区块链的奇妙之处时帮了我们所有人的忙。

Facebook遵循了这种明确的模式。它们实际上明确地指出,现有的智能合约实现是危险的,充满了bug和安全漏洞。但如果没有它们,几乎不可能构建出Facebook想要的那种勉强可用的加密货币系统。

Facebook为自己的解决方案感到自豪:一种名为“Move”的新软件语言。

我花了一点时间学习这门新语言。对于他们正在解决的缺陷,开发人员通常是正确的,并且有效地支持了这样一种观点,即现有的智能合约存在无可救药的缺陷。他们很聪明,对问题提出了可信的解决方案。这只是有可能,在几年之后,新的系统将会比旧的系统更好。但在做决定之前,让我们做一些程序员逃避做的事情:快速查看历史。

软件历史充满了编程语言,每一种语言都是为了改进或修复早期语言中的问题而发明的。大多数新语言都被认为可以使编程更快、更灵活,减少任何类型的错误。经过半个多世纪对数千种新语言的研究,结果如何?详情请参见此。对不起,人类是有创造力的,在任何媒介中都可能犯错误。尽管德国人可能深信德语在表达真理方面比法语更清晰、准确、更优越,但法国公民却清楚地表明事实并非如此——与此同时,他们也表明,法语也好不到哪里去。

Facebook的团队为我们提供了所有伟大的服务:让人们广泛了解智能合约中被忽视的深层缺陷,同时几乎可以肯定的是,在引入善意的同时,也增加了Libra出现严重问题的可能性。但是新语言声称结合了成千上万的语言的优势,将真正地把程序员带到完美的土地上。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分