智能合约(smart contract)这个术语至少可以追溯到 1995 年,是由多产的跨领域法 律学者尼克·萨博(Nick Szabo)提出来的。他的定义是“一个智能合约是一套以数字形式 定义的承诺(promises) ,包括合约参与方可以在上面执行这些承诺的协议。”

承诺

一套承诺指的是合约参与方同意的(经常是相互的)权利和义务。这些承诺定义了合约 的本质和目的。以一个销售合约为典型例子。卖家承诺发送货物,买家承诺支付合理的货款。

数字形式

数字形式意味着合约不得不写入计算机可读的代码中。这是必须的,因为只要参与方达 成协定,智能合约建立的权利和义务,是由一台计算机或者计算机网络执行的。

更进一步地说明:

达成协定 智能合约的参与方什么时候达成协定呢?答案取决于特定的智能合约实施。一般而言,当参与方通过在合约宿主平台上安装合约,致力于合约的执行时,合约就被发现了。

合约执行 “执行”的真正意思也依赖于实施。一般而言,执行意味着通过技术手段积极实施。

计算机可读的代码 另外,合约需要的特定“数字形式”非常依赖于参与方同意使用的协议。

协议

协议是技术实现(technical implementation),在这个基础上,合约承诺被实现, 或者合约承诺实现被记录下来。选择哪个协议取决于许多因素,最重要的因素是在合约履行期间,被交易资产的本质。

再次以销售合约为例。假设,参与方同意货款以比特币支付。选择的协议很明显将会是 比特币协议,在此协议上,智能合约被实施。因此,合约必须要用到的“数字形式”就是比 特币脚本语言。比特币脚本语言是一种非图灵完备的、命令式的、基于栈的编程语言,类似 于 Forth。

2、智能合约与区块链的关系

尼克萨博关于智能合约的工作理论迟迟没有实现,一个重要原因是因为缺乏能够支持 可编程合约的数字系统和技术。区块链技术的出现解决了该问题,不仅可以支持可编程合约, 而且具有去中心化、不可篡改、过程透明可追踪等优点,天然适合于智能合约。因此,也可 以说,智能合约是区块链技术的特性之一。

如果说区块链 1.0 是以比特币为代表,解决了货币和支付手段的去中心化问题,那么区块链 2.0 就是更宏观的对整个市场去中心化(最典型的就是ETH 以太坊以及即将上线的EOS),利用区块链技术来转换许多不同的数字资产而 不仅仅是比特币,通过转让来创建不同资产的价值。区块链技术的去中心化账本功能可以被 用来创建、确认、转移各种不同类型的资产及合约。几乎所有类型的金融交易都可以被改造 成在区块链上使用,包括股票、私募股权、众筹、债券和其他类型的金融衍生品如期货、期 权等。

智能合约看上去就是一段计算机执行程序,满足可准确自动执行即可,那么为什么用传 统的技术为何很难实现,而需要区块链技术等新技术呢?传统技术即使通过软件限制、性能 优化等方法,也无法同时实现区块链的特性:1 是数据无法删除、修改,只能新增,保证了 历史的可追溯,同时作恶的成本将很高,因为其作恶行为将被永远记录;2 是去中心化,避 免了中心化因素的影响。

基于区块链技术的智能合约不仅可以发挥智能合约在成本效率方面的优势,而且可以避 免恶意行为对合约正常执行的干扰。将智能合约以数字化的形式写入区块链中,由区块链技 术的特性保障存储、读取、执行整个过程透明可跟踪、不可攥改。同时,由区块链自带的共 识算法构建出一套状态机系统,使得智能合约能够高效地运行。

3、智能合约工作原理

基于区块链的智能合约包括事务处理和保存的机制,以及一个完备的状态机,用于接受 和处理各种智能合约;并且事务的保存和状态处理都在区块链上完成。事务主要包含需要发 送的数据;而事件则是对这些数据的描述信息。事务及事件信息传入智能合约后,合约资源 集合中的资源状态会被更新,进而触发智能合约进行状态机判断。如果自动状态机中某个或 某几个动作的触发条件满足,则由状态机根据预设信息选择合约动作自动执行。

智能合约系统根据事件描述信息中包含的触发条件,当触发条件满足时,从智能合约自 动发出预设的数据资源,以及包括触发条件的事件;整个智能合约系统的核心就在于智能合 约以事务和事件的方式经过智能合约模块的处理,出去还是一组事务和事件;智能合约只是 一个事务处理模块和状态机构成的系统,它不产生智能合约,也不会修改智能合约;它的存 在只是为了让一组复杂的、带有触发条件的数字化承诺能够按照参与者的意志,正确执行。

https://baijiahao.baidu.com/s?id=1602311106138641488&wfr=spider&for=pc

什么是智能合约,区块链和智能合约的关系及原理相关推荐

  1. 什么是智能合约 区块链_什么是区块链智能合约?

    什么是智能合约 区块链 关于区块链智能合约的第一件事是它们不是智能合约,或者不是区块链上的合约. 实际上,它们的名字是奇异的. 1 ,让我们将按照相反的顺序这些问题,我们应该搞清楚一个聪明的合同实际上 ...

  2. 详解区块链,智能合约,去中心化应用

    文章目录 一.区块链是什么? 二.智能合约 三.去中心化应用 一.区块链是什么? 区块链本质上是一个去中心化的分布式账本数据库,目的是解决交易信任问题.广义来看,区块链技术是利用块链式数据结构验证与存 ...

  3. 探讨顶级 Layer 1 智能合约区块链的代币经济学

    我们将重温代币经济学 101.具体来说,我们正在研究顶级 Layer 1 智能合约区块链的代币模型. 涵盖的主题: 为什么 L1 公共区块链需要代币? 代币经济学的细微差别 代币经济学如何影响应计价值 ...

  4. 论文笔记:使用区块链和智能合约打击深度假冒视频

    摘要 随着人工智能(AI)和深度学习技术的兴起,近年来虚假数字内容激增.假镜头.假图像.假音频和假视频(被称为深度假冒,Deepfake)可能是一种危险的现象,有可能改变真相,并通过伪造事实来侵蚀信任 ...

  5. [区块链安全-Damn-Vulnerable-DeFi]区块链DeFi智能合约安全实战-连载中

    [区块链安全-Damn-Vulnerable-DeFi]区块链DeFi智能合约安全实战-连载中 前言 环境准备 1. unstoppable 任务分析 发起攻击 总结 2. Naive receive ...

  6. 重“薪”定义世界,智能物联网+区块链新学科强势入驻深圳

    智能物联网,相信大家都不陌生,列举些身边经常见到的应用:铁道部列车车厢管理.第二代身份证.一卡通.ETC不停车收费系统.物流查询和追踪.无人驾驶卡车.智能手表.智能电视.智能电子秤及智能手环等等穿戴式 ...

  7. 区块链安全—详谈合约攻击(二)

    一.前言 在前文中,我们简单提及了"智能合约"的概念以及其安全属性.之后针对一些严重的事件展开合约安全的深入分析.在本文中,我们详细的介绍一下智能合约的概念,并且为大家讲述一些关于 ...

  8. 美化UI合约区块链学习版系统+交易大厅

    简介: 美化UI合约区块链学习版系统+交易大厅 亲测环境:Win+宝塔+Apache+php5.6+mysql5.5 数据库配置文件:/APP/Conf/config.php 设置TP伪静态 后台地址 ...

  9. 一文读懂区块链与大数据的关系

    导读 随着数字经济的发展,区块链的价值逐渐凸显,区块链和大数据确保了数据的安全性,还可以防止数据泄露,一旦信息存储在链上,就需要有多个权限来访问数据.通过可伸缩性,区块链允许以更平静的方式共享数据. ...

最新文章

  1. Mycat实现读写分离
  2. maven+springMVC+Eclipse建立工程框架
  3. php计算属性集的闭包,关于swift:计算属性与带闭包的属性集之间的区别
  4. MVC 扩展方法特点
  5. 11.4. String 字符串处理
  6. 手把手带你一起写迅雷官网
  7. SVN 更新发生冲突各选项含义
  8. 一款基于ijkplayer框架的音乐播放器(已开源)
  9. 最新原生nodejs调试器的使用大全详解
  10. Qt_QTableWidget用法 添加、删除、添加控件、获取控件在表格中位置
  11. RTL8152网卡灯配置详细说明
  12. 最新版MATLAB怎么运行代码,matlab怎么运行代码
  13. 2023年全国最新工会考试精选真题及答案43
  14. 中国科学技大学2014年数学分析考研试题
  15. 关于版权声明的写法 (转)
  16. 紫色特别舒服的UI趣味测试微信小程序源码下载包含多种评测
  17. 夜深人静的时候,皇帝披衣翻阅奏折
  18. rm -rfi 防止误删除数据
  19. Windows与linux 双系统装机
  20. 基于javaweb的网上图书商城系统(java+ssm+jsp+mysql+redis+jwt+shiro+rabbitmq+easyui)

热门文章

  1. ASM 系列详细教程-02-ASM 整体概览
  2. es根据字段长度过滤_ES Aggs根据聚合的结果(数值)进行过滤
  3. 前端——CSS学习总结
  4. 《众妙之门——网页排版设计制胜秘诀》——3.6 网页版式高级教程
  5. 必不可少的数学基础-数列的柯西收敛准则
  6. 三个数相减的平方公式_小学一年级数学难点解析,附34个必考公式,孩子必备!...
  7. 年度矫情大剧-2017回忆文
  8. lync2010头像设置_LyncAutoAnswer.com简介-Lync 2010的开源远程工作者的自动应答信息亭
  9. 英文面试常见问题和答案
  10. 2018年广东工业大学文远知行杯新生程序设计竞赛 1010 温柔的手彼此相系β