投稿指南
一、稿件要求: 1、稿件内容应该是与某一计算机类具体产品紧密相关的新闻评论、购买体验、性能详析等文章。要求稿件论点中立,论述详实,能够对读者的购买起到指导作用。文章体裁不限,字数不限。 2、稿件建议采用纯文本格式(*.txt)。如果是文本文件,请注明插图位置。插图应清晰可辨,可保存为*.jpg、*.gif格式。如使用word等编辑的文本,建议不要将图片直接嵌在word文件中,而将插图另存,并注明插图位置。 3、如果用电子邮件投稿,最好压缩后发送。 4、请使用中文的标点符号。例如句号为。而不是.。 5、来稿请注明作者署名(真实姓名、笔名)、详细地址、邮编、联系电话、E-mail地址等,以便联系。 6、我们保留对稿件的增删权。 7、我们对有一稿多投、剽窃或抄袭行为者,将保留追究由此引起的法律、经济责任的权利。 二、投稿方式: 1、 请使用电子邮件方式投递稿件。 2、 编译的稿件,请注明出处并附带原文。 3、 请按稿件内容投递到相关编辑信箱 三、稿件著作权: 1、 投稿人保证其向我方所投之作品是其本人或与他人合作创作之成果,或对所投作品拥有合法的著作权,无第三人对其作品提出可成立之权利主张。 2、 投稿人保证向我方所投之稿件,尚未在任何媒体上发表。 3、 投稿人保证其作品不含有违反宪法、法律及损害社会公共利益之内容。 4、 投稿人向我方所投之作品不得同时向第三方投送,即不允许一稿多投。若投稿人有违反该款约定的行为,则我方有权不向投稿人支付报酬。但我方在收到投稿人所投作品10日内未作出采用通知的除外。 5、 投稿人授予我方享有作品专有使用权的方式包括但不限于:通过网络向公众传播、复制、摘编、表演、播放、展览、发行、摄制电影、电视、录像制品、录制录音制品、制作数字化制品、改编、翻译、注释、编辑,以及出版、许可其他媒体、网站及单位转载、摘编、播放、录制、翻译、注释、编辑、改编、摄制。 6、 投稿人委托我方声明,未经我方许可,任何网站、媒体、组织不得转载、摘编其作品。

基于区块链的智能合约技术研究进展(3)

来源:语言研究 【在线投稿】 栏目:期刊导读 时间:2021-02-14
作者:网站采编
关键词:
摘要:5.1 智能合约语言与编译机制 智能合约语言是现实应用中各种业务与智能合约平台之间的中介,也是帮助智能合约的使用者快速生成智能合约程序和代码的

5.1 智能合约语言与编译机制

智能合约语言是现实应用中各种业务与智能合约平台之间的中介,也是帮助智能合约的使用者快速生成智能合约程序和代码的重要工具[9]。各智能合约平台都已推出自己的智能合约语言,例如,比特币使用较为底层的栈式脚本语言、以太坊的智能合约目前支持Serpent和Solidity两种编程语言(Serpent类似于Python语言,而Solidity类似于JavaScript语言)、超级账本支持如Go、Java等语言直接编写;此外,其它平台也以传统编程语言(如C、C++、Java)基础上给出了智能合约开发工具。从语言形式和运行环境上讲,目前的智能合约可分为三类。

(1)脚本型智能合约:通过区块链中定义好的脚本指令和栈式类Forth语言完成基本的计算与条件控制,例如,比特币脚本系统。

(2)通用型智能合约:其语言直接采用传统程序语言,部署在虚拟机(V M)或容器(Docker)里,通过规定好的接口与区块链进行交互。例如,超级账本平台中的链码采用Java、Go等语言,Neo平台支持将C#、Java和Python等多种语言编译为NeoVM支持的指令集。

(3)专用型智能合约:模仿传统程序语言并添加了与区块链交互的特殊元素,如以太坊的Solidity语言,同时该语言含有gas计费等特殊功能。

智能合约是一个跨学科的概念,涉及商业、金融、合同法和信息技术,设计和开发智能合约也需要来自不同领域的专家的密切合作。然而,上述三种智能合约仍然建立在计算机编程语言基础上,对于非计算机专业人员依然难以理解和掌握。

针对这一问题,近年来一种被称为高级智能合约语言已引起学术界的广泛关注,例如,面向现实合约的智能合约描述语言(SPESC)[10]。这种语言以现实合约的语法结构为基础,采用近似自然语言的形式进行编写,明确定义了当事人的义务和权利,以及加密货币的交易规则,便于法律人士与计算机人员协作合约开发,对于促进智能合约的专业性、易用性、可理解性,以及协作开发等方面能力有重要意义。

5.2 智能合约的区块链部署

区块链是智能合约得以实施的基础,智能合约的自动化执行、运行结果的有效性,以及合约代码的安全都依赖于区块链[11],因此智能合约与区块链的有效结合与部署成为智能合约实施的关键[12~13]。为了便于被理解和掌握,智能合约通常将区块链转化为几个抽象概念:共享数据库、交易和区块。下面将分别对其进行介绍。

首先,区块链对智能合约而言可被视为全球共享的交易数据库,其中,交易被用来描述每一次通过智能合约语言接口执行的行为。全球共享则意味着每个人都可以通过智能合约网络接口来读取交易数据库中存储的条目。

其次,交易可理解为更改共享数据库中某些内容的行为,而且保证该行为必须被数据库网络中其它参与方所接受。后者也被称为“all-or-nothing”原则,如果交易要同时更改两个值,要么根本没有完成,要么完成所有修改。此外,在将交易完成后,没有其它交易可以更改这一过程。

再次,交易从安全性来看始终需要由发起方(创建者)进行签名,这可保护访问共享数据库的特定修改必须经过授权。从已有的数字货币交易可知,签名机制可保证简单的检查即可确保只有持有该账户密钥的人才能从该账户中转移资金。

此外,智能合约所生成的交易将被捆绑到一个所谓的“区块”中,然后将它被分发到共享数据库的所有参与节点。如果两笔交易相互矛盾,那么最后一笔交易将被拒绝,并且不会成为交易的一部分,因此,区块被理解在时间上形成线性关系的存储单元,并为智能合约选择一个全球公认的交易顺序,以解决冲突。总之,区块链为智能合约提供了一种安全和一致性的共享交易数据库。

最后,对于智能合约的使用者和编程人员而言,当前智能合约平台已经能够屏蔽掉区块链中的很多技术细节,使得区块链中的各种复杂机制(哈希、对等网络、共识、挖矿等)变成了智能合约平台提供的承诺。因此,开发和使用人员只需要关注自己的业务需求,充分利用智能合约平台提供的部署工具,而不需要考虑如何将智能合约执行代码转化为区块链数据的具体实现。

5.3 合约代码运行

当满足触发条件时,被部署在区块链上的智能合约代码将被区块链系统自动执行,并依照合约规定完成各种资产的转移。这一过程需要货币激励、执行机构、指令系统和触发条件等机制相互协调,才能保证合约代码自动和无差错地被执行。

文章来源:《语言研究》 网址: http://www.yyyjzzs.cn/qikandaodu/2021/0214/654.html



上一篇:电视新闻画面语言与编辑技巧研究
下一篇:岩土工程论文写作问题探讨

语言研究投稿 | 语言研究编辑部| 语言研究版面费 | 语言研究论文发表 | 语言研究最新目录
Copyright © 2018 《语言研究》杂志社 版权所有
投稿电话: 投稿邮箱: