提到区块链,紧跟着就是比特币、智能合约、以太坊……这些都不懂,小伙伴们就没办法愉快地聊天了。所以今天我就给大家扫盲一下,什么叫做智能合约。
一.智能合约概念的形成
智能合约很有趣的一点是,它虽然被称为“区块链2.0”的一个代表性产物,但它的理念实际上很早就被提出来了,最早可以追溯到1994年,几乎与互联网同时出现。而给予这个概念一个准确的名字“智能合约”的是因为比特币打下基础而受到广泛赞誉的密码学家尼克萨博,在那个时候,萨博的关于智能合约如何工作的理论还没有实现,因为没有天生的能够支持可编程交易的数字金融系统,这是一种极具前瞻性的理念。而比特币的出现和广泛使用,正在改变阻碍智能合约实现的现状,从而萨博的理念有了重生的机会。
二.智能合约跟我有什么关系
智能合约是一种可以自动化执行的简单交易。在日常生活中跟我们有什么联系呢?举一个简单的例子,我跟你打一个赌,如果明天下雨,算我赢,如果明天没下雨,就是你赢了。然后我们在打赌的时候就把钱放进一个智能合约控制的账户内,第二天过去了,赌博的结果出来了以后,智能合约就可以根据收到的指令自动判断输赢,并进行转账。这个过程是高效,透明的执行过程,不需要公正等第三方介入。也就是说,有了智能合约以后,打赌就不能赖账啦。当然这只是个简单的例子,方便大家理解,智能合约还有很多应用的地方,在以后的文章中也会一一向大家介绍。
三.什么是智能合约
所以说了这么多,该回到正题了,到底什么是智能合约呢?智能合约概念可以概括为: 一段代码 (智能合约),被部署在分享的、复制的账本上,它可以维持自己的状态,控制自己的资产和对接收到的外界信息或者资产进行回应。或者可以这样简单的概括:它是运行在可复制、共享的账本上的计算机程序,可以处理信息,接收、储存和发送价值。
智能合约程序不仅仅只是一个可以自动执行的计算机程序,它更像是一个系统的参与者,可以把它想象成一个绝对可信的人,他负责临时保管你的资产,并且严格按照事先商定好的规则执行操作。
四.智能合约的工作原理
基于区块链的智能合约包括事务处理和保存的机制,以及一个完备的状态机,用于接受和处理各种智能合约;并且事务的保存和状态处理都在区块链上完成。智能合约的触发需要满足时间描述信息中的触发条件,当条件满足以后,从智能合约自动发出预设的数据资源。智能合约系统的核心在于进入智能合约的是一组事务和事件,经过智能合约处理后,出来的也是一组事务和事件。它的存在只是为了让一组复杂的、带有触发条件的数字化承诺能够按照参与者的意志,正确执行。
五.智能合约的构建及执行步骤
基于区块链的智能合约的构建及执行分为如下步骤:
1、智能合约的构建:由区块链内的多个用户共同参与制定一份智能合约;
2、智能合约的存储:智能合约通过P2P网络扩散到每个节点,并存入区块链;
3、智能合约的执行:智能合约定期进行自动机状态检查,将满足条件的事务进行验证,达成共识后自动执行并通知用户。
六.智能合约的两个系统
目前,智能合约系统主要有两个,一个是我们比较熟悉的以太(Ethereum),另一个是Symbiont。以太坊是一个开源的区块链底层系统,就像安卓一样,提供了非常丰富的API和接口,让许多人在上面能够快速开发出各种区块链应用。目前已经有超过200多个应用在以太坊上开发。以太坊主要是使用Solidity编写智能合约,并在微软云服务上提供了智能合约工具箱,运行在以太坊区块链上,其平台因多功能性和智能合约执行能力成为银行业和互联网金融行业的首选,纳斯达克、摩根大通、VISA和高盛等多家金融机构均使用以太坊的智能合约系统。
网友评论