- · 《语言研究》栏目设置[09/30]
- · 《语言研究》数据库收录[09/30]
- · 《语言研究》投稿方式[09/30]
- · 《语言研究》征稿要求[09/30]
- · 《语言研究》刊物宗旨[09/30]
基于区块链的智能合约技术研究进展(4)
作者:网站采编关键词:
摘要:首先,奖励机制是合约代码执行的必备条件,原因在于智能合约代码是在区块链节点内(虚拟机、容器等)被执行的,必然带来存储、计算、带宽等方面的
首先,奖励机制是合约代码执行的必备条件,原因在于智能合约代码是在区块链节点内(虚拟机、容器等)被执行的,必然带来存储、计算、带宽等方面的开销,因此需要智能合约发布者预付一定量的货币(如以太网gas)作为奖励。如果预付金额太小了,不足以执行所有的操作,那么操作就会失败,状态将会回滚。
其次,执行机构是指智能合约代码运行的环境,目前主要有脚本、容器、虚拟机等三种运行方式,具体特征为:
(1)脚本(Script)方式
最早在比特币系统中被采用,是一种类似Forth 语言的指令体系,由脚本解释器解释执行,用于验证该笔交易的合法性。交易一般会包括输入脚本和输出脚本两个部分,分别用于解锁上一笔交易的输出以及设置该笔交易金额的解锁条件。
(2)容器(Docker)方式
是不同于虚拟机的一种新型虚拟化技术,它只需要将智能合约所需要的依赖软件打包即可独立运行,而不需要一个附加的虚拟操作系统环境。它比虚拟机方式更为独立和灵活,可调用的资源也更多。Hyperledger Fabric是典型使用容器方式的智能合约平台。
(3)虚拟机(VM)方式
它通过在用户程序和底层环境中增加的一层中间环境,提供一个完全对底层透明的执行环境:屏蔽区块链节点自身执行环境的区别,在所有节点上运行均一致。它按照执行方式分为两种:基于栈(Stack)和基于寄存器(Register)的虚拟机,其中,基于栈的虚拟机是目前实现智能合约最多的方式,也演化出多种智能合约运行方法。
此外,指令系统在智能合约中也是较重要的概念。指令是智能合约发给运行环境的命令,智能合约的执行代码是由一系列的指令组成的,而指令系统是智能合约运行环境提供的语言系统,是全部指令的集合,反映了运行环境所拥有的基本功能。因此,智能合约指令系统是由所采用的运行方式决定的。
最后,智能合约代码中预置了合约条款的相应触发场景和响应规则,运行环境需要根据可信外部事件和内部交易状态,自动地判断当前所处场景是否满足合约触发条件,严格执行响应规则并向区块链发送更新合约状态的交易,经共识算法认证后链接到区块链中,使更新生效。
6 结束语
智能合约作为普遍认为的“第二代区块链技术”,任何人都可接入其中,不需要事先审查或者预付成本,又可以移除经济交易中对第三方机构的信任必要。本文对智能合约的研究进展进行了归纳总结,介绍了智能合约的发展历史以及基本概念、并详细阐述了智能合约语言现有的分类和不同的编译机制、智能合约在区块链上的部署方式以及运行机制。
目前几乎所有的区块链技术公司都已在其产品中支持智能合约产品,例如,以太坊基于虚拟机的智能合约平台、基于Bitcoin区块链的RSK平台、IBM公司提出的企业级HyperLeger Fabric平台等。这些产品的推出极大的丰富了智能合约技术的内涵和范围,为区块链技术在不同领域的现实应用奠定了基础,也代表了区块链未来发展的方向。但同时智能合约跨领域合作、标准统一、法律化结合等多个研究方向都尚不完善,这些问题的存在囿限着智能合约的市场普及和应用广度,是现在智能合约研究极具挑战性的方向。
[1] Bartoletti M, Pompianu L.An empirical analysis of smart contracts: platforms, applications, and design patterns[C]// International conference on financial cryptography and data , Cham, 2017:494-509.
[2] Szabo, Nick."Smart contracts: Building blocks for digital markets[N].1996." (2001).
[3] Szabo N.Smart contracts in essays on smart contracts, commercial controls and security (1994)[E B/O L].
[4] Beaumont P Synthetic Assets:Packaging, Pricing, and Trading Strategies for Financial Professionals[M].John Wiley & Sons, 1992.
[5] 贺海武, 延安, 陈泽华.基于区块链的智能合约技术与应用综述[J].计算机研究与发展, 2018, 55(11): 2452-2466.
[6] Christidis K, Devetsikiotis and smart contracts for the internet of things[J].Ieee Access, 2016,4: 2292-2303.
[7] 朱岩, 甘国华, 邓迪, 等.区块链关键技术中的安全性研究[J].信息安全研究, 2016, 2(12): 1090-1097.
[8] Frantz C K, Nowostawski to code: Towards automated generation of smart contracts[C]//2016IEEE 1st International Workshops on Foundations and Applications of Self* Systems (FAS*W).IEEE, 2016: 210-215.
[9] 何小东, 易积政, 陈爱斌.区块链技术的应用进展与发展趋势[J].世界科技研究与发展, 2018, 40(6): 615-626.
[10] He X, Qin B, Zhu Y, et al.Spesc: A specification language for smart contracts[C]//2018IEEE 42nd Annual Computer Software and Applications Conference(COMPSAC).IEEE, 2018, 1: 132-137.
文章来源:《语言研究》 网址: http://www.yyyjzzs.cn/qikandaodu/2021/0214/654.html
上一篇:电视新闻画面语言与编辑技巧研究
下一篇:岩土工程论文写作问题探讨