区块链知识精读宝典 | 智能合约系列1:智能合约与传统合约的区别
2018年《云鹏区块链读书会》已累计学习30余本区块链和投资方面的书籍,这些书籍的观点和知识使我受益匪浅。为了让更多的朋友们也能获得这些高价值的知识,我在2019年规划整理精读成《区块链知识精读宝典》。
该系列分基础知识系列、应用系列、技术系列、项目系列、政策系列等,将多本书同类内容汇总成一个总系列,总系列分多个不同知识点的小系列。例如智能合约知识,我会将多本书里面最精华的智能合约内容汇总成一个系列,尽可能将智能合约的知识点都涵盖,这样便于读者系统学习,同时也是自己对知识点的完整梳理。每篇文章都经过选文、读文、解文步骤,在自己学习的过程中,力求给大家奉献有价值的内容。
希望这套《区块链知识精读宝典》能够再次给大家带来高价值。
学有余力尚能助人,快哉也!
- 01 -
智能合约与传统合约的区别
1.1 智能合约(Smart contract)的起源
彼特·托德(Peter Todd)是比特币核心开发者之一。他总结了智能合约(Smart contract)的现状,认为“智能合约讨论的结论是:没有人理解智能合约究竟是什么。如果我们要实施智能合约,应该需要预言机(oracles)”。
确实,要想阐明智能合约的理念和本质并非易事。我们从智能合约理念的起源开始。“智能合约”概念由计算机科学家、加密大师尼克· 萨博(Nick Szabo)于1993年左右提出来。1994年他写成了《智能合约》(Smart contracts)论文,是智能合约的开山之作。
尼克·萨博对智能合约的阐述以一个自动售货机的例子开始。我们可以认为智能合约的原始祖先,是不起眼的自动售货机。在经过潜在的、损失有限的评估后,自动售货机使钱箱里的钱远远少于破坏者付出的代价。售货机根据显示的商品价格收取投币,通过一个简单的机制形成了最初的计算机设计科学,并且有限自动、根据投币金额传递变化和产品。
自动售货机是一种搬运合约:任何持有硬币的人都可以与供应商交易。锁定钱箱和其他安全机制保护售货机储藏的硬币和货物不被破坏,从而支撑在各种各样的区域部署自动售货机,并且产生盈利。
在自动售货机概念的基础上,尼克·萨博给出智能合约的定义如下:“智能合约超越了自动售货机中嵌入各种有价属性的范畴,通过数字方式控制合约。智能合约涉及具有动态性、频繁主动执行属性的财产,且提供更好的观 察和验证点,其中主动积极的措施必须丝毫不差。”
尼克·萨博告诉我们的是,智能合约本质上的抽象概念是在个人、机构和财产之间形成关系的一种公认工具,是一套形成关系和达成共识的协定。
瑞波实验室的市场和交易主管菲利·拉波波特(Phil Rapoport)说,“实现智能合约的一大障碍是现在计算机程序不能真正地触发支付”。
1.2 智能合约的定义
智能合约是一套以数字形式定义的承诺,承诺控制着数字资产并包含了合约参与者约定的权利和义务,由计算机系统自动执行。承诺定义了智能合约的本质和目的。以一个销售合约为例:卖家承诺发送货物,买家承诺支付合理的货款。数字形式意味着合约需要被写入计算机可执行的代码中,只要参与者达成协定,智能合约创建的权利和义务,就由一台计算机或者计算机网络执行。
我们举个简单的例子,形象化地描述智能合约。
If Event_X_Happened: Send(爱丽丝, 1000$)
Else: Send(鲍伯, 1000$)
意思是:
如果事件X发生,则合约给爱丽丝发送1000美元;
否则,给鲍伯发送1000美元。
这就是最简单的合约。
如图所示是一个智能合约模型示意,其中各组成部分的定义如下。
智能合约模型组成:合约参与者、合约资源集合、自动状态机、合约事务集合。
①合约参与者:执行智能合约的相关参与者。
②合约资源集合:智能合约执行涉及的参与者资源,比如参与各方账户、拥有的数字财产等。
③自动状态机:智能合约下一步执行的关键,包括当前资源状态判断、下一步合约事务执行选择等。
④合约事务集合:智能合约的下一步动作或行为集合,控制着合约资产并对接收到的外界信息进行回应。
智能合约模型示意图
智能合约程序不只是一个可以自动执行的计算机程序,它本身就是一个系统参与者,对接收到的信息进行回应,可以接收和储存价值,也可以向外发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先的规则执行操作。
智能合约的实现需要底层协议支持,选择哪个协议取决于许多因素,最重要的因素是在合约履行期间被交易资产的本质。
1.3 智能合约与传统合约的区别
智能合约与传统合约(如法律合约)有相似之处,比如均需要明确合约参与者的权 利、义务,违约方均会受到惩罚等。但是智能合约与传统合约存在着显著的区别。
①自动化维度
智能合约可以自动判断触发条件,从而选择相应的下一步事务;而传 统合约需要人工判断触发条件,在条件判断准确性、及时性等方面均不如智能合约。
②主客观维度
智能合约适合客观性请求的场景,传统合约适合主观性请求的场景。 智能合约中的约定、抵押及惩罚需提前明确;而主观性判断指标很难纳入合约自动机中进 行判断,也就很难指导合约事务的执行。
③成本维度
智能合约的执行成本低于传统合约,合约执行权利、义务条件被写入计 算机程序中自动执行,在状态判断、奖惩执行、资产处置等方面均具有低成本优势。
④执行时间维度
智能合约属于事前预定、预防执行模式;而传统合约采用的是事后 执行,根据状态决定奖惩的模式。
⑤违约惩罚维度
智能合约依赖于抵押品、保证金、数字财产等具有数字化属性的抵 押资产,一旦违约,参与者的资产将遭受损失;而传统合约的违约惩罚主要依赖于刑罚, 一旦违约,可以采用法律手段维权。
⑥适用范围维度
智能合约技术可全球采用,适用于全球范围;而传统合约受限于具 体辖区,不同国际地区的法律、人文等因素均影响着传统合约的执行过程。
- 02 -
文章解读
1. 智能合约本质上的抽象概念是在个人、机构和财产之间形成关系的一种公认工具,是一套形成关系和达成共识的协定。
2. 实现智能合约的一大障碍是现在计算机程序不能真正地触发支付。
3. 智能合约模型组成:合约参与者、合约资源集合、自动状态机、合约事务集合。
4. 智能合约的实现需要底层协议支持,选择哪个协议取决于许多因素,最重要的因素是在合约履行期间被交易资产的本质。
5. 智能合约与传统合约的区别:自动化维度、主客观维度、成本维度、执行时间维度、违约惩罚维度。
内容来源:《从数字货币到信用社会》
认识云鹏老师
《区块链读书会》创始人;
007er、EOS引力区引力节点;
币车合伙人、官方认证大V;
Beta货币基金项目顾问;
《币乎应用指南》《区块链精读好书》系列教程作者;
任多家IT公司技术总监,深耕IT领域10年+,专注电商和医疗架构;
云鹏老师微信 yg160160 邀你进《区块链读书会》一起读书!
进群一起学习,共同进步!
「力场」——公链挖矿第一社区