分不清以太坊和智能合约?以太坊和智能合约有何区别?
扫描二维码
随时随地手机看文章
以太坊是基于比特币而发展起来的,以太坊与区块链也具有联系。上篇文章中,小编对以太坊的工作机制有所阐述。为增进大家对以太坊的认识,本文将对以太坊和智能合约的区别予以介绍。如果你对以太坊具有兴趣,不妨继续往下阅读哦。
以太坊(英文Ethereum)是一个开源的有智能合约功能的公共区块链平台,通过其专用加密货币以太币(Ether,简称“ETH”)提供去中心化的以太虚拟机(Ethereum Virtual Machine)来处理点对点合约。
以太坊的概念首次在2013至2014年间由程序员Vitalik Buterin受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”,在2014年通过ICO众筹开始得以发展。
截至2018年2月,以太币是市值第二高的加密货币,仅次于比特币。
智能合约这个概念是1995年由尼克·萨博提出来的。那时候还没有比特币,没有区块链,更没有以太坊。
现在主流的认知都把智能合约和以太坊(或类以太坊项目)绑定在一起。以太坊是一个智能合约平台,任何人都可以在以太坊上发布定义了某些合同属性的代码,并委托给以太坊网络运行。
就像马云开发了淘宝平台,人们可以在淘宝上开网店一样。经营网店并不需要店家自己部署服务器,网店的后台完全是运行在淘宝上的。
目前影响力较大的智能合约实例基本上都是运行在以太坊上,最广泛的几个是发代币、DeFi、去中心化的Du博。
对于智能合约的应用方向,现在主流的信息对智能合约更多的共识是将传统的合同进行智能合约化改造。传统的合同是通过社会习俗和法律来定义参与方的权利和义务,习俗和法律是合同背后的约束力来源。智能合约化改造是期望于代码来承担约束力来源。
这也是为什么智能合约会被以太坊,以及类以太坊项目绑定在一起的原因。因为以太坊提供了有约束能力的代码运行平台。以太坊被设计成了一个世界计算机,可以让程序的运行不依赖于特定的中心化服务器。
比特币的爱好者对以太坊在智能合约上大放光彩非常不服,也想了大量的办法让比特币网络承接智能合约生意。
比特币系统内置了脚本引擎来完成账本的可编程性,以太坊使用的是虚拟机。后者是图灵完备的,可以用来运行非常复杂的程序。加上比特币的UTXO设计,以太坊是账户设计。前者只能设计无状态的合约。这代表着,比特币上的合约代码是不能利用自己生成的中间状态。比特币的脚本程序都是一次性的,只对这个交易有效,不能被其他交易引用。比特币的脚本代码也不能去读取数据,你无法编写一个程序命令比特币的某笔交易获取特定的参数。只有极少数例外,比如区块CSV指令,允许比特币脚本依赖区块高度来做出反应。对应的,以太坊的虚拟机,都没有这些阻碍。
但比特币网络依然可以承接特定的智能合约。P2SH交易格式允许在脚本里嵌入代码,就可以用来实现特定的应用场景。Core开发者在搞默克尔化抽象语法树(MAST)就有望将比特币脚本构建更复杂的代码。
BCH已经实现了OP_CHECKSIGVERIFY这样的操作码,脚本可以验证外部数据(Oracle),可以用来构建去中心化仲裁的资产交易。如Bitcoin.com发布的local.bitcoin.com就是一个去中心化的资产交易平台。这个操作码还可以用来构建去中心化的菠菜。
但无论是使用以太坊的智能合约平台,还是使用比特币脚本引擎来实现智能合约,都是将传统的合同智能合约化改造的思路。这种思路显然是手里有一把锤子,看什么都是钉子。现在有了智能合约平台,就像是有一把锤子,要把传统的合同全拿这把锤子锤一下。可事实上,传统的合同,在绝大多数情况下,是不需要被改造的。
这种思路是对智能合约的一种矮化。
以上便是此次小编带来的以太坊相关内容,通过本文,希望大家对以太坊和智能合约之间的区别具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!