[发明专利]一种智能合约的调用方法和装置在审
申请号: | 202011128572.X | 申请日: | 2020-10-20 |
公开(公告)号: | CN112015576A | 公开(公告)日: | 2020-12-01 |
发明(设计)人: | 卓海振 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06Q40/04 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 田雅 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 智能 合约 调用 方法 装置 | ||
1.一种智能合约的调用方法,应用于区块链的节点设备,所述节点设备搭载的系统资源与在所述区块链上发布的虚拟资源进行了价值锚定,包括:
接收区块链客户端发送的智能合约调用交易,所述智能合约调用交易包括智能合约的调用参数和用户账户的账户标识;
计算处理所述智能合约调用交易所消耗的节点设备的系统资源的第一数量,并确定与所述第一数量的系统资源价值锚定的所述虚拟资源的第二数量;
从所述账户标识对应的用户账户持有的虚拟资源中扣除所述第二数量的虚拟资源,并在扣除后基于所述调用参数执行所述智能合约调用交易,以在所述区块链中存储所述智能合约调用交易的执行结果。
2.根据权利要求1所述的方法,还包括:
将从所述账户标识对应的用户账户持有的虚拟资源中扣除的所述第二数量的虚拟资源,分配至所述区块链的节点设备对应的区块链账户进行持有,并在分配完毕后进一步执行所述智能合约创建交易。
3.根据权利要求2所述的方法,将从所述账户标识对应的用户账户持有的虚拟资源中扣除的所述第二数量的虚拟资源,分配至所述区块链的节点设备对应的区块链账户进行持有,包括:
将从所述账户标识对应的用户账户持有的虚拟资源中扣除的所述第二数量的虚拟资源,平均分配至所述区块链的各个节点设备对应的区块链账户分别进行持有;
或者,基于所述区块链的各个节点设备为所述智能合约分配的账户存储资源的存储介质性能属性,将从所述账户标识对应的用户账户持有的虚拟资源中扣除的所述第二数量的虚拟资源,分配至所述区块链的各个节点设备对应的区块链账户分别进行持有。
4.根据权利要求1所述的方法,还包括:
如果所述账户标识对应的所述用户账户持有的虚拟资源的数量小于所述第二数量,向所述区块链客户端返回所述智能合约调用交易执行失败的提示。
5.根据权利要求1所述的方法,处理所述智能合约调用交易所消耗的所述节点设备的系统资源,包括以下示出的一个或者多个的组合:
处理所述智能合约调用交易所消耗的所述节点设备的计算资源;
处理所述智能合约调用交易所消耗的所述节点设备的网络资源;
处理所述智能合约调用交易所消耗的所述节点设备的存储资源。
6.根据权利要求1或5所述的方法,所述区块链部署了资源计算合约,所述资源计算合约的合约代码对应的执行逻辑包括资源计算逻辑;
所述计算处理所述智能合约调用交易所消耗的所述节点设备的系统资源的第一数量,并确定与所述第一数量的系统资源价值锚定的所述虚拟资源的第二数量,包括:
调用所述资源计算合约,执行所述资源计算逻辑,计算处理所述智能合约调用交易所消耗的所述节点设备的系统资源的第一数量,并确定与所述第二数量的系统资源价值锚定的所述虚拟资源的第二数量。
7.根据权利要求1所述的方法,在执行所述智能合约调用交易之前,所述方法还包括:
将所述智能合约调用交易广播至区块链网络以对所述智能合约调用交易进行共识验证;其中,所述共识验证包括:验证所述用户账户持有的虚拟资源的数量是否不小于预设阈值;
如果对所述智能合约调用交易的共识验证通过,执行所述智能合约调用交易。
8.根据权利要求1所述的方法,所述虚拟资源为与将用户持有的链外资产作为价值锚定,在区块链上发布的区块链资产。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011128572.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种区块链数据的恢复方法和装置
- 下一篇:一种智能合约的调用方法和装置