找回密码
 立即注册

扫一扫,登录网站

首页 区块链生态 查看内容
  • 17634
  • 0
  • 分享到

首席架构师的颠覆观点:图灵完备的智能合约不是区块链的必由之路

2018-8-2 22:11

来源: 石榴区块链 作者: 刘胜

维塔利克·巴特林(Vitalik Buterin)发起以太坊项目意图解决比特币非图灵完备的缺陷


第三个人物是维塔利克·巴特林(Vitalik Buterin),他是一个90后,17岁开始研究比特币,18岁创办了《Bitcoin Magazine》杂志,并发表了很多观点性文章,成为当时很有影响力的一位意见领袖。当他看到由于比特币系统功能过于固化,导致众多山寨币系统泛滥,因此提出要做“下一代智能合约和去中心化应用平台”,并发起了以太坊(Ethereum)项目,受到众多人追捧。

这所谓“下一代智能合约”,实际上就是“支持图灵完备的智能合约”。

一个支持图灵完备的智能合约模型,是这么样一个东西:

●它是建立在区块链技术(Blockchain)或分布式账本技术(DLT)基础上;

●它即可以从外部接收交易(Transaction)和事件(Event),也能够对外输出交易或事件;

●它在内部即保存了合约价值(Value),还保存了合约状态(State);

但是,智能合约支持图形完备性,有利也有弊。

●优点是灵活和方便,可以讨好去中心化应用(Dapp)的开发人员。开发人员很容易写出一个智能合约,实现满足具体业务场景的上层应用。

●缺点则是在于过度灵活和方便,带来的复杂性。由于针对开发人员友好,它内部可以容纳极大的复杂性,因此,也就需要一个复杂的环境来执行,比如以太坊虚拟机EVM等。

复杂性带来恶劣的效果,就是低效和不安全。

●复杂性通常意味着低效。一方面是在单节点环境下的执行低效。例如简单计算一个哈希值,在以太坊EVM虚拟机中执行的时间,要比直接执行慢约50倍。另一方面,智能合约执行不是仅仅执行一次,而是需要在所有的区块链全节点上都从头到尾地重复执行。

●复杂性永远是安全的敌人。在复杂的分布式场景下,图灵完备的智能合约本身以及智能合约执行环境中,都可能隐含这未知的安全性问题。之前介绍图灵完备的概念是,我们知道,图灵完备的计算机语言是可以互相模拟的,因此,我们常见的C/C++、Java、C#、Python等计算机编程语言的源代码,理论上都可以翻译成图灵完备的智能合约。但是,当我们如果去问任一位软件工程师,“能否保证自己开发的软件程序没有缺陷(BUG),没有安全问题呢?”,你就会发现,谁也不敢拍着胸脯保证这些。

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

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

    回顶部