1、智能合约的概念
智能合约,Smart Contract,是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约是一套以数字形式定义的承诺,承诺控制着数字资产并包含了合约参与者约定的权利和义务,由计算机系统自动执行。智能合约程序不只是一个可以自动执行的计算机程序,它本身就是一个系统参与者,对接收到的信息进行回应,可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。
智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。
智能合约(Smart contract)这个术语至少可以追溯到1995年,是由多产的跨领域法律学者尼克·萨博(Nick Szabo)提出来的。他在发表于自己的网站的几篇文章中提到了智能合约的理念,定义如下:“一个智能合约是一套以数字形式定义的承诺(commitment),包括合约参与方可以在上面执行这些承诺的协议。”
简单来说,智能合约可以理解为一个自动执行的合同,不经过人为参与,通过代码执行。满足条件,则执行。不满足条件,则不执行。
智能合约最初被定义为一套以数字形式定义的承诺,包括合约参与方可以在上面执行承诺的协议,其设计初衷是希望通过将智能合约内置到物理实体来创造各种灵活可控的智能资产,自动售卖机在一定程度上代表了早期智能合约的实践。通过编写智能合约,执行过程中涉及的实体不再需要依赖第三方去监管和兑现各方的承诺,而是依赖于合约代码的自动执行,只要保证合约执行环境可信,就可以实现各方承诺的正确履行。区块链技术的中心化、不可篡改、过程透明、可追踪等优点天然适合智能合约。智能合约部署在区块链平台,区块链技术担保其不被篡改,合约双方对交易不可否认,为智能合约执行提供了安全保障。
2、智能合约的运行机制
智能合约以代码的形式通过节点共识写入区块链的特定区块中,在合约代码中,封装了预定义的若干状态及转换规则、触发合约执行的情景(如到达特定时间或发生特定事件等)、特定情景下的应对行动等。区块链可实时监控智能合约的状态,并通过核查外部数据源、确认满足特定触发条件后激活并执行合约。
3、智能合约的特点
(1)将合约以数字化的形式写入区块链中,因区块链的特性,数据将无法删除、修改,只能新增,整个过程透明可跟踪,保证了历史的可追溯性;
(2)因为行为将被永久记录,可极大程度避免恶意行为对合约正常执行的干扰;
(3)去中心化,避免了中心化因素的影响,提高智能合约在成本效率方面的优势;
(4)当满足合约内容时,将自动启动智能合约的代码,既避免了手动过程,同时又保障了发行者无法违约;
(5)由区块链自带的共识算法构建出一套状态机系统,使得智能合约能够高效地运行。
4、智能合约的应用
以太坊是目前发展较大的智能合约平台之一,其核心是以太坊虚拟机(EVM),以太坊虚拟机由以太坊网络中的所有节点组成,这些节点作为一个单独的共识互相连接起来,能够获取智能合约的代码,运行中的虚拟机完成智能合约的处理和执行。
另一智能合约平台是超级账本,其目标是打造一个透明、公开、去中心化的超级账本项目,但是与比特币和以太坊不同的是,它是一个联盟链,意在打造行业区块链的开源标准和规范,实现基于区块链技术的企业级分布式账本底层技术。
参考资料: