调用智能合约的方法及装置制造方法及图纸

技术编号:26923998 阅读:50 留言:0更新日期:2021-01-01 22:48
本说明书提供调用智能合约的方法及装置,该方法可以包括:确定调用请求方针对目标智能合约中定义的目标接口的调用需求;在所述目标智能合约中定义了对所述目标接口具有调用权限的合约角色,且所述合约角色被授权至所述调用请求方的情况下,调用所述目标接口以实现相应的预设功能。

【技术实现步骤摘要】
调用智能合约的方法及装置
本公开涉及信息
,尤其涉及一种调用智能合约的方法及装置。
技术介绍
区块链技术(也被称之为,分布式账本技术)是一种去中心化的分布式数据库技术。由于采用去中心化的网络结构、共识机制和链式区块结构,使得区块链技术具有去中心化、公开透明、不可篡改、可信任等多种特点,适用于诸多对数据可靠性具有高需求的应用场景中。区块链上的智能合约是在区块链系统上可以被交易触发执行的合约,智能合约是区块链上的可执行代码,可以通过调用智能合约实现复杂的功能。
技术实现思路
有鉴于此,本说明书一个或多个实施例提供一种调用智能合约的方法及装置。为实现上述目的,本说明书一个或多个实施例提供技术方案如下:根据本说明书一个或多个实施例的第一方面,提出了一种调用智能合约的调用方法,应用于区块链节点;所述方法包括:确定调用请求方针对目标智能合约中定义的目标接口的调用需求;在所述目标智能合约中定义了对所述目标接口具有调用权限的合约角色,且所述合约角色被授权至所述调用请求方的情况下,调用所述目标接口以实现相应的预设本文档来自技高网...

【技术保护点】
1.一种调用智能合约的方法,应用于区块链节点;所述方法包括:/n确定调用请求方针对目标智能合约中定义的目标接口的调用需求,其中,所述目标智能合约中定义了对所述目标接口具有调用权限的指定合约角色;/n分别获取所述角色管理方对应的第一区块链账户中包含的由所述目标智能合约授权的第一合约角色集合和所述调用请求方对应的第二区块链账户中包含的由所述角色管理方授权的第二合约角色集合;/n在所述第一合约角色集合和所述第二合约角色集合均包含所述指定合约角色的情况下,调用所述目标接口以实现相应的预设功能。/n

【技术特征摘要】
1.一种调用智能合约的方法,应用于区块链节点;所述方法包括:
确定调用请求方针对目标智能合约中定义的目标接口的调用需求,其中,所述目标智能合约中定义了对所述目标接口具有调用权限的指定合约角色;
分别获取所述角色管理方对应的第一区块链账户中包含的由所述目标智能合约授权的第一合约角色集合和所述调用请求方对应的第二区块链账户中包含的由所述角色管理方授权的第二合约角色集合;
在所述第一合约角色集合和所述第二合约角色集合均包含所述指定合约角色的情况下,调用所述目标接口以实现相应的预设功能。


2.根据权利要求1所述的方法,所述确定调用请求方针对目标智能合约中定义的目标接口的调用需求,包括:
在所述调用请求方为客户端的情况下,若接收到所述调用请求方发起的第一区块链交易,且第一区块链交易用于调用所述目标智能合约中定义的所述目标接口,则确定所述客户端针对所述目标接口的调用需求;
在所述调用请求方为第二区块链交易调用的特定智能合约的情况下,若所述第二区块链交易指示所述特定智能合约调用所述目标智能合约中定义的所述目标接口,则确定所述特定智能合约针对所述目标接口的调用需求。


3.根据权利要求2所述的方法,所述特定智能合约区别于所述目标智能合约;或者,所述特定智能合约为所述目标智能合约。


4.根据权利要求1所述的方法,还包括:
获取所述调用请求方对应的第二区块链账户中包含的由所述目标智能合约授权的第三合约角色集合;
在所述第三合约角色集合包含所述指定合约角色的情况下,调用所述目标接口以实现相应的预设功能。


5.根据权利要求1或4所述的方法,调用所述目标接口以实现相应的预设功能,包括:
通过调用所述目标接口,执行所述目标智能合约中对应于所述目标接口的目标合约代码;或者,
通过调用所述目标接口,执行区别于所述目标智能合约的另一智能合约中对应于所述目标接口的目标合约代码。


6.一种调用智能合约的方法,应用于区块链节点;所述方法包括:
接收区块链交易,所述区块链交易中包含目标智能合约的合约地址和针对所述目标智能合约中定义的目标接口的角色配置信息;
根据所述合约地址调用所述目标智能合约,以通过执行所述目标智能合约的合约代码为所述目标接口配置相应的指定合约角色,所述指定合约角色拥有对所述目标接口的调用权限;
在调用请求方具有针对所述目标接口的调用需求时,若所述调用请求方对应的第二区块链账户包含由角色管理方授权的指定合约角色且所述角色管理方对应的第一区块链账户包含由所述目标智能合约授权的指定合约角色,则确定所述调用请求方具有对所述目标接口的调用权限。


7.根据权利要求6所述的方法,所述目标智能合约授权指定合约角色的方式,包括:
接收区块链交易,所述区块链交易中包含所述目标智能合约的合约地址、针对所述目标智能合约中定义的指定合约角色的角色授权信息和角色管理方的信息;
根据所述合约地址调用所述目标智能合约,以通过执行所述目标智能合约的合约代码为所述角色管理方授权所述指定合约角色。


8.根据权利要求6所述的方法,还包括:
接收授权请求方发起的区块链交易,所述交易中包含目标智能合约的合约地址、针对目标智能合约中定义的合约角色的授权请求信息、交互资源量和目标交互对象的信息;
根据所述合约地址调用所述目标智能合约,以通过执行所述目标智能合约的合约代码将对应于所述交互资源量的账户资源从所述授权请求方对应的区块链账户转移至所述目标交互对象对应的区块链账户并为所述授权请求方授权相应的合约角色。


9.一种调用智能合约的方法,应用于区块链节点;所述方法包括:
接收角色管理方发起的区块链交易,所述交易中包含用于角色授权的...

【专利技术属性】
技术研发人员:杨孟哲刘燕
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

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

1