首页 > 编程笔记

智能合约是什么?

尼克·萨博最早于 1994 年提出了智能合约。他定义道:“一个智能合约是,一个计算机化的交易协议,它执行一个合约的条款。”
交易协议中的“协议”二字指的是计算机协议。尼克·萨博的智能合约论文见:http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart.contracts.html
尼克·萨博是知名的计算机科学家、法学学者和密码学者,他的研究重点是智能合约和数字现金。1998 年,他还曾创建中心化的数字现金比特黄金。

为什么需要智能合约

尼克·萨博说:“智能合约的设计目标是,执行一般的合同条件,最大限度地减少恶意和意外的状况,最大限度地减少使用信任中介。”

他认为,我们需要一个这样的计算机协议:它能够完全保证,如果付款了,商品会被发送,或者商品寄出去了,就会收到钱。

在现实生活中,我们有很多办法来实现这一点。而计算机科学家的目标是,用事先确定的代码自动执行合约条款,无须人工干预和第三方中介。

智能合约中的“智能”可以理解为,按条件自动执行,无须人的干预,是自动的或自治的。

“合同”是智能合约的好类比吗

按其名字,智能合约的好类比是不是我们在商业活动中所签订的“合同”?其实不是。

智能合约贴切的形象类比,是我们在说起计算机术语“有限状态机”或“状态机”时常用的自动可乐售卖机:
萨博在 1997 年的文章中也说,智能合约的原始祖先是不起眼的自动售货机。

在以太坊白皮书中,维塔利克还特别指出,这里的“合约”不应被理解为需要执行或遵守的东西,而应看成是存在于以太坊执行环境中的“自治代理”(autonomous agents),它拥有自己的以太坊账户,它们收到交易信息后就相当于被捅了一下,然后自动执行一段代码。
维塔利克是以太坊的创始人,就是大名鼎鼎的“V神”。
我们还可以这么看:

智能财产:用智能合约来控制实体资产

在智能合约论文中,萨博还讨论了如何把智能合约用于实体资产,形成所谓的智能财产(smart property)。

所谓智能财产,是智能合约程序按照设定的规则控制的财产。萨博举例说明如下:
智能资产的概念后来被扩大了,在对比特币的相关介绍中有这样说法:由比特币区块链上的智能合约控制的资产,不管是实体的还是数字的,都叫智能资产(见图1)。

智能资产:由区块链上的智能合约控制的线上或线下资产
图1:智能资产:由区块链上的智能合约控制的线上或线下资产

尼克·萨博的关键论文:

关注公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。本公众号由站长亲自运营,长期更新,坚持原创,专注于分享创业故事+学习历程+工作记录+生活日常+编程资料。

公众号二维码
微信扫码关注公众号

优秀文章