基于区块链的虚拟资源交易方法、装置、设备和可读介质与流程

文档序号:35961928发布日期:2023-11-09 00:31阅读:33来源:国知局
基于区块链的虚拟资源交易方法、装置、设备和可读介质与流程

本技术涉及计算机,尤其涉及一种基于区块链的虚拟资源交易方法、装置、电子设备和可读介质。


背景技术:

1、当前随着区块链上的交易活动日益频繁,随着链上去中心化应用的增多,链上不同合约之间的调用日趋频繁。合约之间在相互调用转移虚拟资源时,需要检测被调用合约是否实现了虚拟资源的处理接口,避免在收到虚拟资源之后无法处理。

2、在相关技术中,调用合约通过按照位或的方式对各个接口进行接口检测的结果求解,从而确定特定接口是否被实现。

3、然而,随着合约接口数量的增多,该消耗的通信和计算资源也会线性增加,导致接口检测过程的资源消耗过多并且影响区块链的交易执行效率。


技术实现思路

1、基于上述技术问题,本技术提供一种基于区块链的虚拟资源交易方法、装置、电子设备和可读介质,以减少检验接口的资源消耗并且提升交易执行效率。

2、本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。

3、根据本技术实施例的一个方面,提供一种基于区块链的虚拟资源交易方法,包括:

4、获取虚拟资源交易请求,所述虚拟资源交易请求中包含业务合约地址,所述业务合约地址指示用于对目标账户地址进行虚拟资源转移的业务逻辑合约;

5、通过资源智能合约调用所述业务逻辑合约根据区块链中存储的接口实现信息,检测所述业务逻辑合约中包含目标接口的业务功能,得到检测结果,其中,所述目标接口用于从所述目标账户地址转出虚拟资源;

6、根据所述检测结果,通过所述资源智能合约将虚拟资源交易到所述目标账户地址。

7、根据本技术实施例的一个方面,提供一种基于区块链的虚拟资源交易装置,包括:

8、交易请求获取模块,用于获取虚拟资源交易请求,所述虚拟资源交易请求中包含业务合约地址,所述业务合约地址指示用于对目标账户地址进行虚拟资源转移的业务逻辑合约;

9、接口检查模块,用于通过资源智能合约调用所述业务逻辑合约根据区块链中存储的接口实现信息,检测所述业务逻辑合约中包含目标接口的业务功能,得到检测结果,其中,所述目标接口用于从所述目标账户地址转出虚拟资源;

10、资源交易模块,用于根据所述检测结果,通过所述资源智能合约将虚拟资源交易到所述目标账户地址。

11、在本技术的一些实施例中,基于以上技术方案,接口检查模块包括:

12、验证接口检查模块,用于通过所述资源智能合约确定所述业务逻辑合约中包含功能验证接口的业务功能;

13、目标接口检查模块,用于通过所述资源智能合约调用所述功能验证接口检测所述业务逻辑合约中目标接口的业务功能,得到检测结果。

14、在本技术的一些实施例中,基于以上技术方案,验证接口检查模块包括:

15、第一信息加密子模块,用于对功能验证接口的验证接口信息进行加密,得到所述功能验证接口的验证接口标识;

16、第一接口调用子模块,用于通过所述资源智能合约,根据所述验证接口标识调用所述业务逻辑合约的功能验证接口,得到所述功能验证接口的反馈结果;

17、第一功能确认子模块,用于根据所述反馈结果,确定所述业务逻辑合约中包含对功能验证接口的业务功能。

18、在本技术的一些实施例中,基于以上技术方案,目标接口检查模块包括:

19、第二信息加密子模块,用于对目标接口的目标接口信息进行加密,得到所述目标接口的目标接口标识;

20、第二接口调用子模块,用于通过所述资源智能合约,根据所述目标接口标识调用所述功能验证接口,得到所述功能验证接口的反馈结果;

21、第二功能确认子模块,用于若所述反馈结果指示所述区块链的接口实现信息中包含所述目标接口标识,则确定检测结果为所述业务逻辑合约中包含所述目标接口的业务功能。

22、在本技术的一些实施例中,基于以上技术方案,第二接口调用子模块包括:

23、信息输入单元,用于通过所述资源智能合约向所述业务逻辑合约的功能验证接口输入所述目标接口标识;

24、信息获取单元,用于通过所述业务逻辑合约的功能验证接口,从所述区块链中获取所述业务逻辑合约的接口实现信息,所述接口实现信息中包含所述业务逻辑合约中已实现接口的接口标识;

25、结果生成单元,用于若所述接口实现信息中包含所述目标接口标识,则生成反馈结果以指示所述区块链的接口实现信息中包含所述目标接口标识。

26、在本技术的一些实施例中,基于以上技术方案,交易请求获取模块包括:

27、请求接收子模块,用于接收虚拟资源交易请求;

28、格式验证子模块,用于根据所述虚拟资源交易请求,验证虚拟资源交易中资源接收地址的地址格式;

29、合约确认子模块,用于若所述资源接收地址的地址格式为智能合约地址,则确认所述虚拟资源交易请求中包含业务合约地址;

30、交易上链子模块,用于若所述资源接收地址的地址格式为账户地址,则将所述虚拟资源交易在所述区块链中上链。

31、在本技术的一些实施例中,基于以上技术方案,基于区块链的虚拟资源交易装置还包括:

32、转移请求接收模块,用于接收虚拟资源转移请求,所述虚拟资源转移请求中包含转出账户地址;

33、资源转出模块,用于根据所述虚拟资源转移请求,通过所述业务逻辑合约中的目标接口将虚拟资源从所述目标账户地址转移到所述转出账户地址。

34、在本技术的一些实施例中,基于以上技术方案,所述虚拟资源转移请求中包含转移请求方信息;资源转出模块包括:

35、权限验证子模块,用于根据所述虚拟资源转移请求中的转移请求方信息,验证请求方对所述目标账户地址中虚拟资源的操作权限,得到验证结果;

36、若所述验证结果指示所述请求方具备资源转出权限,则通过所述业务逻辑合约中的目标接口将所述虚拟资源从所述目标账户地址转移到所述转出账户地址。

37、在本技术的一些实施例中,基于以上技术方案,权限验证子模块包括:

38、管理权限验证单元,用于根据所述转移请求方信息,验证请求方对所述业务逻辑合约具备管理权限;

39、授权额度获取单元,用于通过所述业务逻辑合约,获取所述目标账户地址的授权额度;

40、权限确认单元,用于若所述授权额度高于所述虚拟资源转移请求中的虚拟资源量,则确认所述请求方具备资源转出权限。

41、在本技术的一些实施例中,基于以上技术方案,基于区块链的虚拟资源交易装置还包括:

42、设置请求接收模块,用于接收额度设置请求,所述额度设置请求中包含所述目标账户地址和额度信息;

43、交易生成模块,用于根据所述额度设置请求,生成额度更新交易并通过所述业务逻辑合约将授权额度设置为零;

44、额度更新模块,用于当所述额度更新交易在所述区块链中上链后,通过所述业务逻辑合约根据所述额度信息更新所述授权额度。

45、在本技术的一些实施例中,基于以上技术方案,基于区块链的虚拟资源交易装置还包括:

46、部署请求接收模块,用于接收来自资源接收方的业务逻辑合约部署请求,所述业务逻辑合约部署请求中包含所述业务逻辑合约的接口实现信息;

47、信息存储模块,用于根据所述业务逻辑合约部署请求,将所述接口实现信息和所述业务逻辑合约存储到所述区块链中,得到合约部署结果;

48、结果发送模块,用于向所述资源接收方发送所述合约部署结果。

49、根据本技术实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,该处理器配置为经由执行可执行指令来执行如以上技术方案中的基于区块链的虚拟资源交易方法。

50、根据本技术实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时实现如以上技术方案中的基于区块链的虚拟资源交易方法。

51、根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的基于区块链的虚拟资源交易方法。

52、在本技术的实施例中,根据区块链中存储的接口实现信息来确认资源的接收方具备将将接收到的虚拟资源转出的能力。由于依靠区块链中存储的接口信息来验证是否调用合约是否实现预定接口,使得在验证过程中不需要对每个接口依次进行检验,减少了检验接口的资源消耗并且提升了交易执行效率。

53、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1