区块链平台上的业务处理执行制造技术

技术编号:20022841 阅读:34 留言:0更新日期:2019-01-06 03:00
公开了利用诸如以太坊区块链之类的分布式账本来监视和执行可以彼此不信任的各方之间的处理实例(170)的方法和装置。所提出的方法和装置以使得不需要中央管理机构但维持信任的方式,将区块链集成到处理的编排中。一组部件(翻译器160、处理实例170和触发器/接口120、130)的组合允许监视或协调区块链上(150)和区块链下(140)的业务处理。

【技术实现步骤摘要】
【国外来华专利技术】区块链平台上的业务处理执行对相关申请的交叉引用本申请要求于2016年3月21日提交的澳大利亚临时专利申请No2016901059的优先权,其内容通过引用并入本文。
本公开涉及用于在区块链平台上执行业务处理(businessprocess)的计算机实现的方法、软件、设备和系统。
技术介绍
区块链区块链被设计为由对等网络内的所有节点维护的公开共享账本(ledger)。区块链平台不像传统银行和支付系统那样依赖任何中央可信管理机构。相反,信任被实现为来自网络内节点之间的交互的涌现性(emergentproperty)。区块链的完整副本包含区块链网络中执行的每个交易,因此在区块链上进行交易的一方可以高度确定地确认另一个方能够像另一个方所声称的那样进行交易。这样做的一个重要后果是没有必要利用诸如银行之类的可信第三方来进行货币交易。作为概念,区块链最初是在比特币的基础设施中定义的。从那时起,该概念已被推广到使用区块链来验证和存储任何交易而无需加密货币或代币的分布式账本中。许多加密货币现在使用区块链作为其平台的基础。流行的区块链平台包括比特币和以太坊。交易如上所述,区块链本质上是基于商定的协议参与系统的所有节点共享的交易列表。每笔交易表示具体数量的数字资产从一方的地址转移到另一方的地址。因此,地址功能类似于银行账户。例如,Alice可以通过在区块链上创建交易来支付Bob5比特币,并从她的一个地址转移5比特币并指定Bob的地址作为输出。存在与不同的区块链平台相关联的不同的数字资产。通常,数字资产是与平台相关联的货币。因此,当前的公开内容可互换地使用货币和数字资产。例如,比特币平台的货币也称为比特币;以太坊的货币被称为以太币。但是,虽然它们是不同的货币,但由于它们都是区块链平台的事实,它们以非常相似的方式运作。货币的区块链的完整副本包含以货币执行的每笔交易。交易是可识别的数据包,其存储货币价值的指示,和/或智能合约中的函数调用的参数和结果。通过加密技术确保区块链平台中交易的完整性。包含货币的区块链的完整副本的、连接到并参与区块链网络的计算机被称为“完整节点”。区块在区块链系统中,交易被聚合成区块。通过包含前一个区块的引用,每个区块还链接到前一个区块(“父”区块)。这具有从当前区块到称为创世区块(genesisblock)的第一个区块创建区块链的效果。保证每个区块按时间顺序排在前一个区块之后,因为否则将不知道前一个区块的散列。一旦每个区块在链中已存在一段时间(通常在比特币中这平均大约是60分钟或6个区块),对它进行修改在计算上就也是不切实际的,因为它之后的每个区块也必须被重新生成。这些特性使得以太币或比特币的双重支出变得非常困难。智能合约区块链平台中的智能合约旨在复制合同的法律概念。即,如果合约是对合约各方施加义务的相互协议,那么智能合约是自动对交易施加义务或条件的方式。比特币和以太坊(以及大多数其它区块链平台)利用脚本来验证交易。智能合约有可能作为脚本来实现,并且其运行方式与正常交易被验证的方式相同。虽然这是比特币采用的做法,但这相当困难,因为脚本必须执行才能验证交易。在以太坊中,智能合约与验证交易截然不同。因此,智能合约可以独立于发起合约的交易而存在。其它差异包括智能合约必须在可以被执行之前部署,并且一旦部署,智能合约就将执行,除非被明确终止。在比特币和以太坊中,脚本都包含自动执行合约所需的所有函数调用(操作代码)。两种区块链平台上的所有节点都执行脚本。在区块链平台中使用脚本存在许多限制。对于比特币,一个这样的限制是脚本语言不是图灵完整的(Turing-complete)。它的结果就是比特币中的脚本不能包含任何循环。这个限制旨在防止攻击者在比特币系统上运行充当拒绝服务(DOS)类型的攻击的无限循环的脚本。相比之下,以太坊有内置的图灵完整脚本语言,用于编写智能合约。以太坊克服DOS攻击可能性的方式是,要求以货币进行交易的各方支付与脚本所需的CPU周期成比例的费用(这在以太坊中被称为Gas)。因此,脚本不能无限循环,因为攻击者需要无限量的货币来支付脚本执行的费用。
技术实现思路
一种用于基于处理规范生成要在区块链上作为处理实例执行的脚本模板的计算机实现的方法,所述方法包括:(a)确定要在处理实例中执行的、与处理规范中的一个或多个步骤对应的一个或多个任务;(b)确定一个或多个触发器以向处理实例提供与处理规范中的一个或多个步骤对应的、要在链下执行的一个或多个任务的信息;以及(c)基于所述一个或多个任务和所述一个或多个触发器,生成要作为处理实例执行的脚本模板。该方法还可以包括在区块链上发起处理实例,该方法包括:根据上述方法生成脚本模板;通过添加参数值完成脚本模板;以及通过在区块链上执行脚本来发起处理实例。该方法还可以包括接收处理规范,并且其中处理规范包含一个或多个步骤。在上述方法中,发起处理实例可以包括:用交易实例的具体信息填充脚本模板;通过支持区块链的对等网络传播交易。该方法还可以包括处理实例存储区块链上处理实例的状态。如上所述的方法,其中处理实例基于区块链上处理实例的状态确定要调用的一个或多个触发器。如上所述的方法,其中一个或多个触发器可以调用处理规范的处理中的一方的外部接口。如上所述的方法,其中该方法还包括将一个或多个触发器分发到支持区块链的对等网络中的一个或多个节点。如上所述的方法,其中步骤(b)可以包括以下任何一个或多个:确定用以完成每个任务的信息的一个或多个源;确定用以完成每个任务的信息的类型;确定每个任务的退出函数;确定用于存储区块链外部的数据的一个或多个数据储存库(datastore);以及确定处理规范中的处理的一方或多方之间的密钥共享布置。上述方法还可以包括以下任何一个或多个:向调解器(mediator)报告活动信息;轮询处理实例的执行状态;确定要执行的外部接口函数;更新区块链中的处理状态;接收用于处理实例中的每个任务的信息;基于接收到的信息触发处理实例中的下一个步骤;以及确定在区块链上执行处理实例的总成本范围。如上所述的方法,其中处理实例可以是监视器。如上所述的方法,其中所述处理实例可以是调解器。还提供了一种具有计算机可读指令的非瞬态计算机可读介质,所述计算机可读指令用于如本文所述的基于处理规范生成要在区块链上作为处理实例执行的脚本模板。一种用于在区块链上执行处理实例的系统,其中所述处理涉及一方或多方,所述系统包括:翻译器,确定要在处理实例中执行的、与处理规范中的一个或多个步骤对应的一个或多个任务;确定一个或多个触发器以向处理实例提供与处理规范中的一个或多个步骤对应的、要在链下执行的一个或多个任务的信息;以及基于一个或多个任务和一个或多个触发器生成要作为处理实例执行的脚本模板;处理实例,其能够在区块链上被发起;所述一个或多个触发器,其与处理实例和接口通信;以及所述接口,其与所述一个或多个触发器通信。上述计算机方法的可选特征是也在这里描述的软件和计算机系统的同等可选特征。附图说明将参考以下内容描述本公开的示例:图1图示了示例性应用场景。图2图示了用于基于处理规范生成要在区块链上作为处理实例执行的脚本模板的计算机实现的方法。图3图示了示例处理规范。图4图示了示例翻译器。图5图示了示例触发器。图6图示了示本文档来自技高网
...

【技术保护点】
1.一种用于基于处理规范生成要在区块链上作为处理实例执行的脚本模板的计算机实现的方法,所述方法包括:(a)确定要在处理实例中执行的、与处理规范中的一个或多个步骤对应的一个或多个任务;(b)确定一个或多个触发器以向处理实例提供与处理规范中的一个或多个步骤对应的、要在链下执行的一个或多个任务的信息;以及(c)基于所述一个或多个任务和所述一个或多个触发器,生成要作为处理实例执行的脚本模板。

【技术特征摘要】
【国外来华专利技术】2016.03.21 AU 20169010591.一种用于基于处理规范生成要在区块链上作为处理实例执行的脚本模板的计算机实现的方法,所述方法包括:(a)确定要在处理实例中执行的、与处理规范中的一个或多个步骤对应的一个或多个任务;(b)确定一个或多个触发器以向处理实例提供与处理规范中的一个或多个步骤对应的、要在链下执行的一个或多个任务的信息;以及(c)基于所述一个或多个任务和所述一个或多个触发器,生成要作为处理实例执行的脚本模板。2.一种用于在区块链上发起涉及一方或多方的处理实例的计算机实现的方法,所述方法包括:根据权利要求1生成脚本模板;通过添加参数值完成脚本模板;以及通过在区块链上执行脚本来发起处理实例。3.如权利要求1所述的计算机实现的方法,其中所述方法还包括接收处理规范,并且其中处理规范包含所述一个或多个步骤。4.如权利要求2或3所述的计算机实现的方法,其中发起处理实例包括:用交易实例的具体信息填充脚本模板;通过支持区块链的对等网络传播交易。5.如前述权利要求中任一项所述的计算机实现的方法,其中所述方法还包括处理实例存储区块链上处理实例的状态。6.如权利要求5所述的计算机实现的方法,其中处理实例基于区块链上处理实例的状态确定要调用的一个或多个触发器。7.如前述权利要求中任一项所述的计算机实现的方法,其中一个或多个触发器调用处理实例中所涉及的一方的外部接口。8.如前述权利要求中任一项所述的计算机实现的方法,还包括将一个或多个触发器分发到支持区块链的对等网络中的一个或多个节点。9.如前述权利要求中任一项所述的计算机实现的方法,其中步骤(b)包括以下当中的任何一个或多个:确定用以完成每个任务的信...

【专利技术属性】
技术研发人员:I·韦伯徐熙炜G·伽瓦那特瑞R·莱瓦瑞特A·波诺马廖夫
申请(专利权)人:澳大利亚国家ICT有限公司
类型:发明
国别省市:澳大利亚,AU

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1