2013年以太坊白皮书诞生后,V神描述以太坊的智能合约架构,此次区块链技术与智能合约技术开始紧密结合在一起。从行业发展的历史看,区块链1.0版本即“数字货币”,以比特币为代表的数字货币被认为是区块链技术最成功的应用;2.0时代则是“智能合约”,该版本试图创建通用技术型平台,提供开发区块链应用基础,并向开发者提供BaaS服务。
智能合约是以太坊的核心功能,也是目前区块链应用的核心领域。那么什么是智能合约?大牛给出的定义是基于区块链技术,可自动化执行预习定义好的规则的代码。它具备预先设定后的不可变性,它能不受干扰的自动执行。
以太坊智能合约的要件
1、账户。以太坊中的账户概念就是类似比特币钱包,可以包含多个公/私钥地址。每个地址还具备一个合同账户,用于运行以太坊的智能合约。
2、合约代码。它是指合同账户中的编码。这个编码有行业规范,最被广泛接受的编码规范是ERC20编码规范。当创建人将交易发送到该账户时,这段代码将被执行。
3、合约执行。激活合约时,创建人必须向以太坊网络支付交易手续费。只有当外部账户发出指令时,合同账户才会执行合约动作。
4、仲裁。这个仲裁平台不是活人去仲裁,也是代码。仲裁担任的职责是“发现”智能合约,或者说参与合约的双方在这个平台上安装合约,交付或叫托管给仲裁平台来执行合约。
以太坊智能合约的技术环境
以太坊智能合约是运行在虚拟机中,称为EVM。以太坊EVM是一个主要的创新,它为执行智能合约搭建起了简介的虚拟环境。以太坊EVM主要工作是执行智能合约的字节码。每个以太坊节点都运行EVM来保证区块链的一致性。
以太坊智能合约本质是“合同”+“仲裁者”的合体。传统意义上的合同,仅规定了合同的内容,而合同中所规定的权利义务则由执法机关保护。而由于智能合约使用代码的方式,保证了合同条款的强制执行力;将智能合约与区块链相结合,使得合约的条款一旦设定,就没有第三方可以篡改。
以太坊智能合约的应用场景
智能合约与传统合约有相似之处,比如均需要明确合约参与者的权利、义务,违约方均会受到惩罚等。但是智能合约与传统合约存在着显著的区别,如下表所示:
数字资产创设与流通
目前以太坊最大的应用就是ICO,这也是以太坊的主要价值所在,它成功地从比特币手中抢夺了这部分市场。2017年第四季度以太坊价格连续暴涨,与ICO的火爆有密切关系。截止2018年3月,ICO的发行基本上都选择ETH作为众筹代币,ICO创设的代码都采用ERC20合约开发规范。
以太坊的智能合约技术,为现实世界中缺乏信任和仲裁的应用场景提供了便捷的开发工具。基于以太坊平台,当前正在研发的区块链应用超过 500 种,其中涵盖了金融服务、预测市场、电子竞技、彩票和云算力等多个领域。2018年流行起来的以太猫、以太世界地图都是2C端的优秀应用。
尽管智能合约具有自动化、高效率、低成本的巨大优势,但还是有明显不足。智能合约的代码需要向网络内所有参与者公开,对于很多金融贸易、企业交易来说,这是一个巨大的缺陷。这意味着资金投入之后,网络中的非参与者可能会了解并积极参与贸易中并给参与者带来麻烦。