CN117176737A - 基于区块链的数据处理方法、装置、设备及可读存储介质 - Google Patents
基于区块链的数据处理方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117176737A CN117176737A CN202210586740.2A CN202210586740A CN117176737A CN 117176737 A CN117176737 A CN 117176737A CN 202210586740 A CN202210586740 A CN 202210586740A CN 117176737 A CN117176737 A CN 117176737A
- Authority
- CN
- China
- Prior art keywords
- virtual resource
- chain
- address
- resource
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000012546 transfer Methods 0.000 claims abstract description 206
- 238000000034 method Methods 0.000 claims abstract description 53
- 238000012545 processing Methods 0.000 claims description 45
- 238000012795 verification Methods 0.000 claims description 35
- 239000002131 composite material Substances 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004891 communication Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 21
- 238000007726 management method Methods 0.000 description 19
- 230000003993 interaction Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- VLFZHMWZMNJMTK-UHFFFAOYSA-N CCC.CCC.CCC.CCC Chemical compound CCC.CCC.CCC.CCC VLFZHMWZMNJMTK-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于区块链的数据处理方法、装置、设备及可读存储介质,该方法包括:根据第一对象针对链上虚拟资源组合的组合虚拟资源创建请求,将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。采用本发明,可以批量转移链上虚拟资源。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于区块链的数据处理方法、装置、设备及可读存储介质。
背景技术
链下数字产品在区块链网络中可以对应有链上虚拟资源,其中,链上虚拟资源用于证明其对应的链下数字产品的所有权,也就是说,当普通对象具有链上虚拟资源的链上所有权时,就具有该链上虚拟资源对应的链下数字产品属于该普通对象的证明。
当前主流的区块链网络上进行链上虚拟资源的转移需要消耗较高的gas(消耗)费用,并且因为用于发行链上虚拟资源的协议标准有多种,不同协议标准下的链上虚拟资源的转移方式不同,即区块链网络中,通常只能单个链上虚拟资源转移或者统一标准的多个链上虚拟资源一起转移,因此在涉及多个链上虚拟资源或者多类链上虚拟资源转移时,只能拆分成多个交易进行,花费gas费用较多,且逻辑复杂。
发明内容
本申请实施例提供了一种基于区块链的数据处理方法、装置、设备及可读存储介质,可以批量转移链上虚拟资源,降低消耗。
本申请实施例一方面提供了一种基于区块链的数据处理方法,包括:
区块链节点接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;
根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
本申请实施例一方面提供了一种基于区块链的数据处理方法,包括:
响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;链上虚拟资源列表中的链上虚拟资源的链上所有权属于第一对象;链上虚拟资源组合包括基于选择操作所选择到的链上虚拟资源,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;
响应第一对象针对链上虚拟资源组合的资源创建操作,向区块链网络发送针对链上虚拟资源组合的组合虚拟资源创建请求,以使区块链网络根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
响应第一对象针对目标组合虚资源的资源转移操作,向区块链网络发送针对链上虚拟资源组合的资源转移请求,以使区块链网络根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
本申请实施例一方面提供了一种基于区块链的数据处理装置,包括:
请求接收模块,用于接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;
资源发行模块,用于根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
资源转移模块,用于若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
其中,资源发行模块,包括:
所有权查询单元,用于查询链上虚拟资源组合中的链上虚拟资源的链上所有权;
资源转移单元,用于若链上虚拟资源组合中的链上虚拟资源的链上所有权均属于第一对象,则将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址;
资源生成单元,用于生成链上虚拟资源组合对应的目标组合虚拟资源;
资源发送单元,用于将目标组合虚拟资源发送至第一对象的第一对象地址。
其中,上述数据处理装置,包括:
信息获取模块,用于获取链上虚拟资源组合中的链上虚拟资源对应的资源描述信息;
信息写入模块,用于将资源描述信息写入目标组合虚拟资源对应的元数据体中,得到描述元数据体;
账本写入模块,用于将目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系写入区块链账本中。
其中,上述数据处理装置,还包括:
结果发送模块,用于若目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系成功写入区块链账本,则将目标组合虚拟资源对应的资源发行成功结果发送至第一对象;资源发行成功结果用于表征目标组合虚拟资源的链上所有权属于第一对象。
其中,组合虚拟资源创建请求包括合成智能合约标识、第一对象的对象标识和数字签名;
资源发行模块,包括:
验签单元,用于获取对象标识对应的公钥,根据公钥对组合虚拟资源创建请求中的数字签名进行验签处理,得到验签结果;
合约调用单元,用于若验签结果为验签通过结果,则调用合成智能合约标识所指示的合成智能合约;
合约运行单元,用于通过运行合成智能合约,将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源。
其中,资源转移模块,包括:
交易共识单元,用于根据资源转移请求生成转移交易,将转移交易广播至共识网络,以使共识网络对转移交易进行交易共识处理,得到交易共识结果;
交易执行单元,用于若交易共识结果为交易共识通过结果,则执行转移交易;
交易执行单元,还用于在执行转移交易的过程中,将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址。
其中,上述数据处理装置,还包括:
资源兑换模块,用于若接收到第二对象针对转移后的目标组合虚拟资源的资源兑换请求,则将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址;处于目标合约地址的目标组合虚拟资源处于锁定状态;第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;
资源兑换模块,还用于将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。
本申请实施例一方面提供了一种基于区块链的数据处理装置,包括:
组合获取模块,用于响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;链上虚拟资源列表中的链上虚拟资源的链上所有权属于第一对象;链上虚拟资源组合包括基于选择操作所选择到的链上虚拟资源,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;
请求发送模块,用于响应第一对象针对链上虚拟资源组合的资源创建操作,向区块链网络发送针对链上虚拟资源组合的组合虚拟资源创建请求,以使区块链网络根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
资源转移模块,用于响应第一对象针对目标组合虚资源的资源转移操作,向区块链网络发送针对链上虚拟资源组合的资源转移请求,以使区块链网络根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
其中,请求发送模块,包括:
标识获取单元,用于响应第一对象针对链上虚拟资源组合的资源创建操作,获取第一对象对应的第一去中心化标识;
地址获取单元,用于在标识数据库中获取与第一去中心化标识关联的对象地址,作为第一对象地址;
请求生成单元,用于根据第一对象地址生成针对链上虚拟资源组合的初始组合虚拟资源创建请求;
私钥获取单元,用于在标识数据库中获取与第一对象地址关联的对象私钥,作为第一对象私钥;
签名单元,用于通过第一对象私钥对初始组合虚拟资源创建请求进行签名处理,得到组合虚拟资源创建请求;
请求发送单元,用于将组合虚拟资源创建请求发送至区块链网络。
其中,上述数据处理装置,还包括:
身份验证模块,用于响应第一对象的注册操作,获取第一对象对应的对象身份信息;
身份验证模块,还用于对对象身份信息进行验证处理,得到身份验证结果;
标识分配模块,用于若身份验证结果为身份验证通过结果,则为第一对象分配第一去中心化标识;
标识上链模块,用于向区块链网络发起针对第一去中心化标识的上链请求,以使区块链网络获取与对象身份信息对应的第一对象地址以及第一对象私钥,对第一去中心化标识、第一对象地址以及第一对象私钥的关联关系进行区块链账本写入操作;
标识存储模块,用于若第一去中心化标识与第一对象地址的关联关系成功写入区块链账本,则将第一去中心化标识、第一对象地址以及第一对象私钥关联写入标识数据库中。
其中,上述数据处理装置,还包括:
资源兑换模块,用于响应第二对象针对转移后的目标组合虚拟资源的资源兑换操作,向区块链网络发送针对转移后的目标组合虚拟资源的资源兑换请求,以使区块链网络将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址,将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址;处于目标合约地址的目标组合虚拟资源处于锁定状态;第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。
本申请实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信网元,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中的方法。
本申请实施例中,在接收到第一对象针对链上虚拟资源组合的组合虚拟资源创建请求时,可以根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,并向第一对象地址发行目标组合虚拟资源;其中,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;目标组合虚拟资源的链上所有权属于第一对象;然后,若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;其中,转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。通过本申请实施例提供的方法,想批量转移多个链上虚拟资源时,可以将多个链上虚拟资源转移进目标合约地址进行锁定,然后针对多个链上虚拟资源发行一个目标组合虚拟资源,具有目标组合虚拟资源的链上所有权的对象,具有将链上虚拟资源组合从目标合约地址转移至该对象地址的权限,换言之,后续仅需对目标组合虚拟资源进行转移,就可以进一步实现对多个链上虚拟资源批量进行转移,节约消耗。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构示意图;
图2a是本申请实施例提供的一种组合虚拟资源创建请求生成的场景示意图;
图2b是本申请实施例提供的一种目标组合虚拟资源发行的场景示意图;
图2c是本申请实施例提供的一种目标组合虚拟资源转移的场景示意图;
图3是本申请实施例提供的一种基于区块链的数据处理方法的流程示意图;
图4是本申请实施例提供的一种基于区块链的数据处理方法的流程示意图;
图5是本申请实施例提供的一种系统架构示意图;
图6是本申请实施例提供的一种数据交互示意图;
图7是本申请实施例提供的一种基于区块链的数据处理装置的结构示意图;
图8是本申请实施例提供的一种计算机设备的结构示意图;
图9是本申请实施例提供的另一种基于区块链的数据处理装置的结构示意图;
图10是本申请实施例提供的另一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种网络架构示意图。区块链是一种分布式数据存储、点对点传输、共识机制以及加密算法等计算机技术的新型应用模式,主要用于对数据按时间顺序进行整理,并加密成账本,使其不可被篡改和伪造,同时可进行数据的验证、存储和更新。区块链本质上是一个去中心化的数据库,该数据库中的每个节点均存储一条相同的区块链,区块链网络可以将节点区分为共识节点和业务节点,其中共识节点负责区块链全网的共识。对于区块链网络中交易数据被写入账本的过程可以为:客户端发送交易数据至业务节点,随后该交易数据以接力棒的方式在区块链网络中的业务节点之间传递,直到共识节点收到该交易数据,共识节点再将该交易数据打包进区块,与其他共识节点之间进行共识,在共识通过后,将携带该交易数据的区块写入账本。
其中,可以理解的是,区块(Block)是在区块链网络上承载交易数据(即交易业务)的数据包,是一种被标记上时间戳和之前一个区块的哈希值的数据结构,区块经过网络的共识机制验证并确定区块中的交易。
其中,可以理解的是,哈希(hash)值,也称作信息特征值或特征值,哈希值是通过哈希算法将任意长度的输入数据转换为密码并进行固定输出而生成的,不能通过解密哈希值来检索原始输入数据,它是一个单向的加密函数。在区块链中,每个区块(除了初始区块)都包含前继区块的哈希值,前继区块被称为当前区块的父区块。哈希值是区块链技术中的潜力核心基础和最重要的方面,它保留了记录和查看数据的真实性,以及区块链作为一个整体的完整性。
其中,可以理解的是,区块链系统中可以包括有智能合约,该智能合约在区块链系统中可以理解为是一种区块链各节点(包括共识节点)可以理解并执行的代码,可以执行任意逻辑并得到结果。用户可以通过客户端发起一个交易业务请求的方式,调用区块链上已经部署的智能合约,随后,区块链上的业务节点可以将该交易业务请求发送至共识节点,而区块链上的各个共识节点可以分别运行该智能合约。应当理解,区块链中可以包括一个或多个智能合约,这些智能合约可以标识号(Identity document,ID)或名称来进行区分,而客户端发起的交易业务请求中,也可以携带智能合约的标识号或名称,以此指定区块链需要运行的智能合约。而若客户端所指定的智能合约为需要读取数据的合约,则各个共识节点会访问本地账本来进行数据的读取,最后各个共识节点会互相验证执行结果是否一致(也就是进行共识),若一致则可以将执行结果存入各自的本地账本中,并将执行结果返回至客户端。
如图1所示,该网络架构可以包括区块链节点集群1000、业务服务器(服务端)集群100以及终端设备(客户端)集群10,该区块链节点集群1000可以包括至少两个区块链节点。如图1所示,该区块链节点集群1000可以包括区块链节点1000a、区块链节点1000b、…、区块链节点1000n,该业务服务器集群100具体可以包括业务服务器100a、业务服务器100b、…、业务服务器100n,该终端设备集群10具体可以包括终端设备10a、终端设备10b、…、终端设备10n。
如图1所示,终端设备10a、终端设备10b、…、终端设备10n可以分别与业务服务器100a、业务服务器100b、…、业务服务器100n进行数据连接,以便于终端设备可以通过该数据连接与业务服务器进行数据交互;业务服务器100a、业务服务器100b、…、业务服务器100n可以分别与区块链节点1000a、区块链节点1000b、…、区块链节点1000n进行数据连接,以便于业务服务器可以通过该数据连接与区块链节点进行数据交互;区块链节点1000a、区块链节点1000b、…、区块链节点1000n互相连接,以便于区块链节点之间可以进行数据交互。
可以理解的是,区块链节点之间可以通过上述数据连接进行数据或者区块传输。区块链网络可以基于节点标识实现区块链节点之间的数据连接,对于区块链网络中的每个区块链节点,均具有与其对应的节点标识,而且上述每个区块链节点均可以存储与自身有相连关系的其他区块链节点的节点标识,以便后续根据其他区块链节点的节点标识,将获取到的数据或生成的区块广播至其他区块链节点,例如区块链节点1000a中可以维护一个如表1所示的节点标识列表,该节点标识列表保存着其他节点的节点名称和节点标识:
表1
节点名称 | 节点标识 |
区块链节点1000a | AAA.AAA.AAA.AAA |
区块链节点1000b | BBB.BBB.BBB.BBB |
… | … |
区块链节点1000n | CCC.CCC.CCC.CCC |
其中,节点标识可为网络之间互联的协议(Internet Protocol,IP)地址以及其他任意一种能够用于标识区块链网络中区块链节点的信息,表1中仅以IP地址为例进行说明。例如,区块链节点1000a可以通过节点标识BBB.BBB.BBB.BBB向区块链节点1000b发送信息(例如,交易数据),且区块链节点1000b可以通过节点标识AAA.AAA.AAA.AAA确定该信息是由区块链节点1000a所发送的。
在区块链中,在将一个区块进行上链之前,该区块必须经过区块链网络中的共识节点进行共识,在共识通过后才能将该区块添加到区块链上。可以理解的是,当区块链被用于政府或者商业机构的一些场景中时,并非区块链中的所有参与节点(即上述区块链节点集群1000中的区块链节点)都有足够的资源和必要性成为区块链的共识节点。例如,在图1所示的区块链节点集群1000中,可以将区块链节点1000a、区块链节点1000b和区块链节点1000n作为该区块链节点集群中的共识节点。区块链节点集群1000中的共识节点参与共识,也就是对区块(包含一批交易)进行共识,包括生成区块,对区块进行投票;而非共识节点不参与共识,但会帮助传播区块和投票消息,以及相互同步状态等。
其中,可以理解的是,上述的数据连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其他连接方式,本申请在此不做限制。
可以理解的是,本申请实施例所提供的基于区块链的数据处理方法可以由计算机设备执行,计算机设备包括但不限于上述区块链节点(可以为终端或者服务器)、业务服务器、终端设备。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。
可以理解的是,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等场景。
可以理解的是,在本申请的具体实施方式中,涉及到的交易数据等相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
如图1所示,终端设备集群中的每个终端设备均可以安装有应用客户端,当该应用客户端运行于各终端设备中时,可以分别与上述业务服务器集群100中的任一业务服务器之间进行数据交互,使得上述业务服务器集群100中的任一业务服务器可以接收来自于每个终端设备的业务数据。其中,该应用客户端可以为游戏应用、视频编辑应用、社交应用、即时通信应用、直播应用、短视频应用、视频应用、音乐应用、购物应用、小说应用、支付应用、浏览器等具有显示文字、图像、音频以及视频等数据信息功能的应用客户端。其中,该应用客户端可以为独立的客户端,也可以为集成在某客户端(例如即时通信客户端、社交客户端、视频客户端等)中的嵌入式子客户端,在此不做限定。
与第一对象绑定的终端设备可以通过应用客户端获取链下数字产品,其中,链下数字产品可以包括图片、视频、音乐、游戏装备等可绑定链上虚拟资源的媒体数据。其中,链上虚拟资源用于代表该链下数字产品在区块链网络中存储的所有权,可以理解为一种凭证,当第一对象具有某个链上虚拟资源的链上所有权,就可以证明与该链上虚拟资源对应的链下数字产品是属于第一对象的。第一对象可以通过区块链网络中的交易将链上虚拟资源转移给第二对象,即将链上虚拟资源的链上所有权转让给第二对象。不过因为链上虚拟资源的资源类型不同,即链上虚拟资源对应的协议标准不同,转移的方式就不同,第一对象想要将多个链上虚拟资源转移给第二对象时,往往需要多笔交易才能完成,所需消耗较高。
为了实现低消耗完成批量转移链上虚拟资源,本申请实施例提供了一种基于区块链的数据处理方法,即区块链节点可以在接收到第一对象针对链上虚拟资源组合的组合虚拟资源创建请求时,根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,并向第一对象地址发行目标组合虚拟资源。其中,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;第一对象地址是基于与第一对象绑定的公私钥对在区块链网络中生成的唯一的地址,也是用于在区块链上标识第一对象的唯一地址;目标组合虚拟资源的链上所有权属于第一对象。然后,若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址。其中,转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;第二对象地址是基于与第二对象绑定的公私钥对在区块链网络中生成的唯一的地址,也是用于在区块链上标识第二对象的唯一地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。第二对象可以继续转移目标组合虚拟资源给第三对象,也可以选择兑换目标组合虚拟资源,然后批量获取到链上虚拟资源组合中的链上虚拟资源的链上所有权。
为便于理解上述过程,请一并参见图2a-图2c,图2a-图2c是本申请实施例提供的一种基于区块链的数据处理的场景示意图。其中,如图2a-图2c中所示的终端设备20可以为上述图1所示的终端设备集群10中的任一终端设备,如,终端设备20可以为终端设备10a;如图2a-图2c中所示的业务服务器200可以为上述图1所示的业务服务器集群100中的任一业务服务器,如,业务服务器200可以为业务服务器200b;如图2a-图2c中所示的区块链网络2000可以为上述图1所示区块链节点集群1000共同构成的区块链网络,区块链网络2000中的区块链节点2001可以为上述图1所示区块链节点集群1000中的任一区块链节点,如,区块链节点2001为区块链节点1000a。
请先参见图2a,图2a是本申请实施例提供的一种组合虚拟资源创建请求生成的场景示意图。假设终端设备20与对象A具有绑定关系,终端设备20中安装有社交应用的应用客户端,具有登录该社交应用权限的普通对象,均可以获取该社交应用对应的资源平台方发行的链上虚拟资源,进而拥有该链上虚拟资源对应的链下数字产品。如图2a所示,终端设备20中显示有与对象A关联的链上虚拟资源列表201,该链上虚拟资源列表201中包含有链上虚拟资源2011、链上虚拟资源2012、链上虚拟资源2013以及链上虚拟资源2014,其中,链上虚拟资源列表201中的链上虚拟资源的链上所有权均属于对象A,链上虚拟资源2011的资源类型可以为第一资源类型,链上虚拟资源2012和链上虚拟资源2014的资源类型可以为第二资源类型,链上虚拟资源2013的资源类型可以为第三资源类型。其中,一种资源类型的链上虚拟资源对应一种链上虚拟资源发行的协议标准。可以理解,对象A可以同时拥有多种资源类型的链上虚拟资源。因为不同资源类型的链上虚拟资源不可以批量进行转移,当对象A想将多个链上虚拟资源转移给对象B时,需要进行多次交易。但是在本申请实施例中,对象A想将多个链上虚拟资源转移给对象B时,如图2a所示,对象A可以先选择想要转移的多个链上虚拟资源,业务服务器200会响应对象A针对链上虚拟资源列表201的选择操作,获取链上虚拟资源组合202,然后继续响应对象A针对链上虚拟资源组合202的资源创建操作,向区块链网络2000中的任一区块链节点,例如,区块链节点2001,发送针对链上虚拟资源组合202的组合虚拟资源创建请求。
区块链节点2001在接收到对象A针对链上虚拟资源组合202的组合虚拟资源创建请求后,可以访问对象A对应的第一对象地址2002,请一并参见图2b,图2b是本申请实施例提供的一种目标组合虚拟资源发行的场景示意图。如图2b所示,第一对象地址2002中存储有对象A具有链上所有权的链上虚拟资源,区块链节点2001可以根据组合虚拟资源创建请求,先验证链上虚拟资源组合202中的链上虚拟资源的链上所有权是否属于对象A,如果链上虚拟资源组合202中的链上虚拟资源的链上所有权均属于对象A,就可以将链上虚拟资源组合202中的链上虚拟资源从第一对象地址2002转移至目标合约地址2003,需要说明的是,转移至目标合约地址2003中的链上虚拟资源处于锁定状态,此时第一对象无法再对处于锁定状态的链上虚拟资源进行转移了。然后,区块链节点2001可以向第一对象地址2002发行目标组合虚拟资源2015,需要说明的是,该目标组合虚拟资源2015与锁定在目标合约地址2003中的链上虚拟资源组合202相关联,具有该目标组合虚拟资源2015链上所有权的对象,具有将链上虚拟资源组合202从目标合约地址2003转移至其对象地址的权限。也就是说,此时对象A想批量转移链上虚拟资源组合202中的链上虚拟资源给对象B时,只需将目标组合虚拟资源2015转移给对象B即可。需要说明的是,上述链上虚拟资源的转移、目标组合虚拟资源的发行均可以通过区块链节点发起的区块链网络中对应的交易实现。
区块链节点2001在成功向第一对象地址2002发行目标组合虚拟资源2015后,会向业务服务器200发送资源发行结果,该资源发行结果用于表征目标组合虚拟资源的链上所有权属于对象A,业务服务器200解析该资源发行结果后,也会通知到终端设备20,此时,终端设备20在对象A关联的链上虚拟资源列表201中,可以增加显示目标组合虚拟资源2015,对象A可以针对该显示的目标组合虚拟资源2015进行资源转移操作。业务服务器200可以响应对象A针对目标组合虚拟资源2015的资源转移操作,向区块链网络2000中的区块链节点2001发送资源转移请求。请一并参见图2c,图2c是本申请实施例提供的一种目标组合虚拟资源转移的场景示意图。如图2c所示,区块链节点2001在接收到资源转移请求后,可以生成与该资源转移请求对应的转移交易,然后在区块链网络中的共识网络进行共识,在转移交易共识通过后,将目标组合虚拟资源2015从第一对象地址2002转移到对象B关联的第二对象地址2004。当目标组合虚拟资源2015成功转移至第二对象地址2004后,目标组合虚拟资源2015的链上所有权就属于对象B了,此时对象B就具有将链上虚拟资源组合202从目标合约地址2003转移至第二对象地址2004的权限了。不过需要说明的是,链上虚拟资源组合202中的链上虚拟资源此时仍然在目标合约地址2003中,即仍然处于锁定状态,对象B还不具备直接转移处于锁定状态的链上虚拟资源组合202的权限。倘若对象B想获取链上虚拟资源组合202中的链上虚拟资源的链上所有权,可以针对目标组合虚拟资源2015发送资源兑换请求,区块链节点2001可以根据该资源兑换请求将目标组合虚拟资源2015从第二对象地址2004转移至目标合约地址2003,然后再将链上虚拟资源组合202中的链上虚拟资源转移至第二对象地址2004中。至此,对象A批量转移链上虚拟资源组合202中的链上虚拟资源至对象B完成。
通过本申请实施例提供的基于区块链的数据处理方法,可以将多个链上虚拟资源转移至目标合约地址中进行锁定,然后发行针对该多个链上虚拟资源的目标组合虚拟资源,通过转移该目标组合虚拟资源的链上所有权,来间接实现批量转移多个链上虚拟资源的链上所有权。
进一步地,请参见图3,图3是本申请实施例提供的一种基于区块链的数据处理方法的流程示意图。其中,该方法可以由区块链节点(例如,上述图1所对应实施例中的区块链节点集群1000中的任一区块链节点)执行。以下将以本方法由区块链节点执行为例进行说明,其中,该基于区块链的数据处理方法至少可以包括以下步骤S101-步骤S103:
步骤S101,区块链节点接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;所述链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;所述链上虚拟资源组合中的链上虚拟资源的链上所有权属于所述第一对象。
具体的,链上虚拟资源是链下数字产品确权和流转的技术手段,为数字经济中链下数字产品提供了一种绝佳的资产数字化技术。简单来说,链上虚拟资源可以理解为一种凭证,用于证明其对应的链下数字产品的所有权,且链上虚拟资源的链上所有权可以通过区块链中的交易在区块链对象之间转移,其对应的链下数字产品的所有权也会随之变更。
具体的,区块链网络中可用于发行链上虚拟资源的协议标准有多种,不同协议标准发行的链上虚拟资源的资源类型不同,不同资源类型的链上虚拟资源在区块链中具有不同的转移方式,在区块链网络中不能通过同一个交易进行转移,甚至针对某些特殊资源类型的链上虚拟资源,一次交易只能转移一个链上虚拟资源。因此,当第一对象想要批量转移自己所拥有的一个或多个链上虚拟资源,或者一类或多类链上虚拟资源时,可以通过绑定的终端设备发起针对链上虚拟资源组合的组合虚拟资源创建请求,其中,该链上虚拟资源组合即包含有第一对象想要进行转移的一个或多个链上虚拟资源,链上虚拟资源组合中的链上虚拟资源的资源类型的数量也可以为一个或多个。应当理解,链上虚拟资源组合中的链上虚拟资源的链上所有权均属于第一对象。
步骤S102,根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源;所述目标组合虚拟资源的链上所有权属于所述第一对象。
具体的,第一对象地址可以是基于与第一对象绑定的公私钥对在区块链网络中生成的唯一的地址,也是用于在区块链上标识第一对象的唯一地址,第一对象具有链上所有权的链上虚拟资源均会与该第一对象地址绑定。目标合约地址则是事先确定的智能合约中用于存储链上虚拟资源的地址,转移至目标合约地址中的链上虚拟资源会处于锁定状态,此时具有链上虚拟资源的链上所有权的对象也不可以对其进行转移。
具体的,根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源的一个可行实施过程,可以为:查询链上虚拟资源组合中的链上虚拟资源的链上所有权;若链上虚拟资源组合中的链上虚拟资源的链上所有权均属于第一对象,则将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址;生成链上虚拟资源组合对应的目标组合虚拟资源;将目标组合虚拟资源发送至第一对象的第一对象地址。简言之,区块链节点在验证链上虚拟资源组合中的链上虚拟资源的链上所有权均属于第一对象后,就可以将链上虚拟资源组合中的链上虚拟资源均转移至目标合约地址中进行锁定,然后再基于链上虚拟资源组合生成目标组合虚拟资源,并将该目标组合虚拟资源发送至第一对象地址,即第一对象会具有目标组合虚拟资源的链上所有权。该目标组合虚拟资源此时可以证明第一对象具有将锁定在目标合约地址中的链上虚拟资源组合转移出来的权限。
可选的,区块链节点获取链上虚拟资源组合中的链上虚拟资源对应的资源描述信息;将资源描述信息写入目标组合虚拟资源对应的元数据体中,得到描述元数据体;将目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系写入区块链账本中。其中,资源描述信息可以包含链上虚拟资源对应的虚拟资源标识、对应的链下数字产品信息等等,将其写入目标组合虚拟资源对应的元数据体中,便于后续查询目标组合虚拟资源对应的链上虚拟资源组合中有哪些链上虚拟资源。
可选的,若目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系成功写入区块链账本,则将目标组合虚拟资源对应的资源发行成功结果发送至第一对象;资源发行成功结果用于表征目标组合虚拟资源的链上所有权属于第一对象。其中,资源发行结果中可以包含有目标组合虚拟资源对应的虚拟资源信息,例如,虚拟资源标识,绑定的第一对象地址等等。
具体的,组合虚拟资源创建请求包括合成智能合约标识、第一对象的对象标识和数字签名,根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源的一个可行实施过程,可以为:获取对象标识对应的公钥,根据公钥对组合虚拟资源创建请求中的数字签名进行验签处理,得到验签结果;若验签结果为验签通过结果,则调用合成智能合约标识所指示的合成智能合约;通过运行合成智能合约,将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源。其中,数字签名若是基于第一对象的私钥生成的,使用第一对象的公钥便可以对其进行验签。公钥是与私钥就是俗称的不对称加密方式,公钥是面向大家的,也就是说,区块链网络中的区块链节点均可以获取到第一对象的公钥;私钥是私有的,区块链节点无法获取第一对象的私钥。第一对象采用自己的私钥对组合虚拟资源创建请求加以处理,由于该私钥仅为第一对象所有,这样就产生了其他对象无法生成的文件,也就形成了数字签名。区块链节点可以通过对象标识确定应该是由谁发送的组合虚拟资源创建请求,就可以获取第一对象的公钥来对数字签名进行解密,也就是验签处理,验签成功说明该组合虚拟资源创建请求确实是由第一对象发送的,不是误接收或者接收错误。
步骤S103,若接收到针对所述目标组合虚拟资源的资源转移请求,则根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于所述第二对象;所述资源转移请求携带所述第二对象地址;具有所述目标组合虚拟资源的链上所有权的所述第二对象,具有将所述链上虚拟资源组合从所述目标合约地址转移至所述第二对象地址的权限。
具体的,目标组合虚拟资源其实就是区块链网络中的一个普通的链上虚拟资源,具有目标组合虚拟资源的链上所有权的第一对象可以像其他链上虚拟资源一样,正常对其进行链上所有权的转让。需要说明的是,因为具有目标组合虚拟资源的链上所有权的对象,就具有将其对应的链上虚拟资源组合从目标合约地址批量转移至其对应的对象地址的权限,因此可以理解的是,第一对象只需对目标组合虚拟资源进行转移,就可以间接实现一并转移其对应的链上虚拟资源组合。
具体的,根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址的一个可行实施过程,可以为:根据资源转移请求生成转移交易,将转移交易广播至共识网络,以使共识网络对转移交易进行交易共识处理,得到交易共识结果;若交易共识结果为交易共识通过结果,则执行转移交易;在执行转移交易的过程中,将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址。其中,第二对象地址可以是基于与第二对象绑定的公私钥对在区块链网络中生成的唯一的地址,也是用于在区块链上标识第二对象的唯一地址。
可选的,第二对象在具有转移后的目标组合虚拟资源的链上所有权后,就具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限了。此时若区块链节点接收到第二对象针对转移后的目标组合虚拟资源的资源兑换请求,则可以将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址,可以理解,处于目标合约地址的目标组合虚拟资源同样处于锁定状态,第二对象将不具有转移处于锁定状态的目标组合虚拟资源的权限,然后,区块链节点可以将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。至此,链上虚拟资源组合中的链上虚拟资源的链上所有权就批量从第一对象转移至了第二对象。
通过本申请实施例提供的方法,在接收到第一对象针对链上虚拟资源组合的组合虚拟资源创建请求时,可以根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,并向第一对象地址发行目标组合虚拟资源;其中,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;目标组合虚拟资源的链上所有权属于第一对象;然后,若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;其中,转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。简言之,想批量转移多个链上虚拟资源时,可以将多个链上虚拟资源转移进目标合约地址进行锁定,然后针对多个链上虚拟资源发行一个目标组合虚拟资源,具有目标组合虚拟资源的链上所有权的对象,具有将链上虚拟资源组合从目标合约地址转移至该对象地址的权限,换言之,后续仅需对目标组合虚拟资源进行转移,就可以进一步实现对多个链上虚拟资源批量进行转移,节约消耗。
进一步地,请参见图4,图4是本申请实施例提供的一种基于区块链的数据处理方法的流程示意图。其中,该方法可以由业务设备执行,其中,业务设备可以为终端设备(例如,上述图1所对应实施例中的终端设备集群10中的任一终端设备),也可以为业务服务器(例如,上述图1所对应实施例中的业务服务器集群100中的任一业务服务器设备)执行,也可以包含终端设备和业务服务器。以下将以本方法由业务设备执行为例进行说明,其中,该基于区块链的数据处理方法至少可以包括以下步骤S201-步骤S203:
步骤S201,响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;所述链上虚拟资源列表中的链上虚拟资源的链上所有权属于所述第一对象;所述链上虚拟资源组合包括基于所述选择操作所选择到的链上虚拟资源,所述链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个。
具体的,第一对象可以通过活动或者购买的方式获取链上虚拟资源,业务设备可以将第一对象拥有的链上虚拟资源通过链上虚拟资源列表的方式进行显示。第一对象可以从链上虚拟资源列表随意选择多个链上虚拟资源构成链上虚拟资源组合,然后批量转移链上虚拟资源组合。
步骤S202,响应第一对象针对所述链上虚拟资源组合的资源创建操作,向区块链网络发送针对所述链上虚拟资源组合的组合虚拟资源创建请求,以使所述区块链网络根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源;所述目标组合虚拟资源的链上所有权属于所述第一对象。
具体的,响应第一对象针对链上虚拟资源组合的资源创建操作,向区块链网络发送针对链上虚拟资源组合的组合虚拟资源创建请求的一个可行实施过程,可以为:响应第一对象针对链上虚拟资源组合的资源创建操作,获取第一对象对应的第一去中心化标识;在标识数据库中获取与第一去中心化标识关联的对象地址,作为第一对象地址;根据第一对象地址生成针对链上虚拟资源组合的初始组合虚拟资源创建请求;在标识数据库中获取与第一对象地址关联的对象私钥,作为第一对象私钥;通过第一对象私钥对初始组合虚拟资源创建请求进行签名处理,得到组合虚拟资源创建请求;将组合虚拟资源创建请求发送至区块链网络。应当理解,区块链上的对象地址复杂难记,为了节约资源以及便于管理,可以为第一对象分配唯一的第一去中心化标识,然后在区块链下通过该去中心化标识来唯一标识第一对象,当第一对象相关的请求需要上链时,再通过第一去中心化标识来获取第一对象的第一对象地址,并且通过与该第一对象地址关联的私钥对相关请求进行签名处理,然后再发送至区块链网络。
可选的,响应第一对象的注册操作,获取第一对象对应的对象身份信息;对对象身份信息进行验证处理,得到身份验证结果;若身份验证结果为身份验证通过结果,则为第一对象分配第一去中心化标识;向区块链网络发起针对第一去中心化标识的上链请求,以使区块链网络获取与对象身份信息对应的第一对象地址以及第一对象私钥,对第一去中心化标识、第一对象地址以及第一对象私钥的关联关系进行区块链账本写入操作;若第一去中心化标识与第一对象地址的关联关系成功写入区块链账本,则将第一去中心化标识、第一对象地址以及第一对象私钥关联写入标识数据库中。可以理解,当第一对象初次
步骤S203,响应第一对象针对所述目标组合虚资源的资源转移操作,向所述区块链网络发送针对所述链上虚拟资源组合的资源转移请求,以使所述区块链网络根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址。
具体的,转移后的目标组合虚拟资源的链上所有权属于所述第二对象;所述资源转移请求携带所述第二对象地址;具有所述目标组合虚拟资源的链上所有权的所述第二对象,具有将所述链上虚拟资源组合从所述目标合约地址转移至所述第二对象地址的权限。
可选的,响应第二对象针对转移后的目标组合虚拟资源的资源兑换操作,向区块链网络发送针对转移后的目标组合虚拟资源的资源兑换请求,以使区块链网络将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址,将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址。其中,处于目标合约地址的目标组合虚拟资源处于锁定状态;第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。
通过本申请实施例提供的方法,想批量转移多个链上虚拟资源时,可以将多个链上虚拟资源转移进目标合约地址进行锁定,然后针对多个链上虚拟资源发行一个目标组合虚拟资源,具有目标组合虚拟资源的链上所有权的对象,具有将链上虚拟资源组合从目标合约地址转移至该对象地址的权限,换言之,后续仅需对目标组合虚拟资源进行转移,就可以进一步实现对多个链上虚拟资源批量进行转移,节约消耗。
进一步地,请参见图5,图5是本申请实施例提供的一种系统架构示意图。如图5所示,该系统架构示意图包括终端设备51、区块链小程序/应用52、去中心化服务53、链上虚拟资源管理服务54以及区块链网络55。其中,终端设备51可以是上述图1所示的终端设备集群10中的任一终端设备,例如终端设备10a。其中,区块链小程序/应用52可以是小程序、原生App(Application,应用程序)或者H5(Hyper Text Markup Language 5,超文本标记语言5)页面,区块链小程序/应用52的应用客户端可以集成安装在终端设备51中,可以通过终端设备51与其对应的后台服务器(可以是上述图1所示的业务服务器集群100中的任一业务服务器,例如业务服务器100a)进行数据交互,架构上可以采用C/S(Client/Server,客户端/服务器模式)或B/S(Browser/Server,浏览器/服务器模式)模式。其中,去中心化服务53用于管理对象的去中心化标识,可以部署在去中心化服务器(可以是上述图1所示的业务服务器集群100中的任一业务服务器,例如业务服务器100b)上。其中,链上虚拟资源管理服务54用于负责对象在区块链下关于链上虚拟资源的相关请求,可以部署在管理服务器(可以是上述图1所示的业务服务器集群100中的任一业务服务器,例如业务服务器100n)上。其中,区块链网络55可以是上述图1所示的区块链节点集群1000所构成的区块链网络。可以理解,上述去中心化服务53和链上虚拟资源管理服务54可以部署在同一个服务器上,该服务器也可以是区块链小程序/应用52对应的后台服务器,本申请在此不作限制。
为更好地理解系统架构中数据交互的过程,请一并参见图6,图6是本申请实施例提供的一种数据交互示意图。因为链上虚拟资源的转移涉及第一对象和第二对象,假设第一对象关联终端设备A,第二对象关联终端设备B,可以理解,终端设备A和终端设备B可以为同一终端设备,如,上述图5所示的终端设备51。如图6所示,终端设备A、终端设备B、区块链小程序/应用52、去中心化服务53、链上虚拟资源管理服务54以及区块链网络55共同完成批量转移链上虚拟资源组合中的链上虚拟资源时,相互之间的数据交互过程包括以下步骤S61-S622:
步骤S61,终端设备A通过区块链小程序/应用52生成针对第一对象的信息注册请求。
具体的,当第一对象初次使用区块链小程序/应用52时,应当先进行信息注册,获取唯一的去中心化标识。
步骤S62,区块链小程序/应用52向去中心化服务53发送针对第一对象的信息注册请求。
步骤S63,去中心化服务53对第一对象的对象信息进行信息验证处理。
具体的,信息验证处理可以是验证第一对象的相关对象信息是否真实或者正确。
步骤S64,若信息验证通过,则去中心化服务53向区块链网络55请求去中心化标识上链。
具体的,去中心化标识上链的过程中,第一对象的去中心化标识与第一对象的公私钥、第一对象的第一对象地址会绑定写入区块链账本中记录。
步骤S65,注册成功,去中心化服务53向区块链小程序/应用52返回去中心化标识。
步骤S66,终端设备A通过区块链小程序/应用52确定链上虚拟资源组合。
具体的,第一对象可以通过区块链小程序/应用52中的一些活动或者直接购买获得多个链上虚拟资源,第一对象可以对这些链上虚拟资源进行合成转移。因此,第一对象可以任意选择自己拥有的链上虚拟资源构成链上虚拟资源组合。
步骤S67,区块链小程序/应用52向链上虚拟资源管理服务54申请创建目标组合虚拟资源。
具体的,第一对象可以通过区块链小程序/应用52申请合成转移不同协议标准的链上虚拟资源,区块链小程序/应用52会将申请发送给链上虚拟资源管理服务54。
步骤S68,链上虚拟资源管理服务54向区块链网络55发送组合虚拟资源创建请求。
具体的,第一对象在区块链网络中的公私钥均可以托管在链上虚拟资源管理服务54中,链上虚拟资源管理服务54可以使用第一对象托管的私钥对初始组合虚拟资源创建请求进行签名,并将区块链网络55中的合成智能合约对应的合约标识写入,然后将得到的组合虚拟资源创建请求发送至区块链网络55中的任一区块链节点。
步骤S69,区块链网络55会将链上虚拟资源组合转移到合约地址。
步骤S610,区块链网络55向第一对象地址发行目标组合虚拟资源,并且记录链上虚拟资源组合的信息。
具体的,区块链网络55会将链上虚拟资源组合中的链上虚拟资源的信息均记录到目标组合虚拟资源对应的元数据(metaData)体中,并上链存储。
步骤S611,区块链网络55向链上虚拟资源管理服务54返回资源发行结果。
具体的,目标组合虚拟资源发行成功后,区块链网络55会将资源发行结果发送至链上虚拟资源管理服务54,用于表征第一对象已经成功拥有目标组合虚拟资源。
步骤S612,链上虚拟资源管理服务54向区块链小程序/应用52返回资源发行结果。
步骤S613,终端设备A通过区块链小程序/应用52显示资源发行结果。
步骤S614,终端设备A通过区块链小程序/应用52申请将目标组合虚拟资源转移给第二对象。
步骤S615,区块链小程序/应用52向链上虚拟资源管理服务54发送资源转移请求。
步骤S616,链上虚拟资源管理服务54向区块链网络55申请在区块链上转移目标组合虚拟资源。
步骤S617,区块链网络55转移目标组合虚拟资源成功,通知区块链小程序/应用52。
具体的,目标组合虚拟资源在区块链网络55中成功转移,即第一对象拥有的目标组合虚拟资源转移给了第二对象,其转移的结果会依次同步给链上虚拟资源管理服务54和区块链小程序/应用52,且终端设备B可以显示第二对象拥有的目标组合虚拟资源。
步骤S618,终端设备B可以通过区块链小程序/应用52申请兑换目标组合虚拟资源。
具体的,第二对象可以通过终端设备B对该目标组合虚拟资源进行继续转移,或者在合成智能合约中进行兑换,获取目标组合虚拟资源对应的链上虚拟资源组合中的多个链上虚拟资源。
步骤S619,区块链小程序/应用52将针对目标组合虚拟资源的资源兑换请求发送至区块链网络55。
具体的,区块链小程序/应用52可以先将申请请求转发给链上虚拟资源管理服务54,链上虚拟资源管理服务54使用第二对象托管的私钥对申请请求进行签名后得到资源兑换请求,再上链。
步骤S620,在区块链网络55中,通过合约锁定目标组合虚拟资源,将链上虚拟资源组合转移到第二对象地址。
具体的,通过合约锁定目标组合虚拟资源是指将目标组合虚拟资源转移至合约地址中进行锁定,然后将合约地址中锁定的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址。
步骤S621,区块链网络55向区块链小程序/应用52返回资源转移结果。
步骤S622,终端设备B通过区块链小程序/应用52显示资源转移结果。
具体的,资源转移结果中包含有链上虚拟资源组合中拆分出的多个链上虚拟资源,终端设备B可以展示这多个链上虚拟资源对应的信息。
采用本申请实施例提供的方法,将批量转移链上虚拟资源的多个交易合成到一笔交易中,降低了批量转移链上虚拟资源的手续费,以及区块链的调用次数,节省区块链的存储资源,并且链上虚拟资源的交易通过合约进行链上虚拟资源的转移和交换,避免了第三方平台交易风险问题。
请参见图7,图7是本申请实施例提供的一种基于区块链的数据处理装置的结构示意图。该数据处理装置1可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该数据处理装置1为一个应用软件;该数据处理装置1可以用于执行本申请实施例提供的数据处理方法中的相应步骤。如图7所示,该数据处理装置1可以包括:请求接收模块11、资源发行模块12以及资源转移模块13。
请求接收模块11,用于接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;
资源发行模块12,用于根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
资源转移模块13,用于若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
其中,请求接收模块11、资源发行模块12以及资源转移模块13的具体实现方式可以参见上述图3所对应实施例中对步骤S101-步骤S103的描述,这里不再进行赘述。
其中,资源发行模块12,包括:所有权查询单元121、资源转移单元122、资源生成单元123以及资源发送单元124。
所有权查询单元121,用于查询链上虚拟资源组合中的链上虚拟资源的链上所有权;
资源转移单元122,用于若链上虚拟资源组合中的链上虚拟资源的链上所有权均属于第一对象,则将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址;
资源生成单元123,用于生成链上虚拟资源组合对应的目标组合虚拟资源;
资源发送单元124,用于将目标组合虚拟资源发送至第一对象的第一对象地址。
其中,所有权查询单元121、资源转移单元122、资源生成单元123以及资源发送单元124的具体实现方式可以参见上述图3所对应实施例中对步骤S102的具体描述,这里不再进行赘述。
其中,上述数据处理装置1,包括:信息获取模块14、信息写入模块15以及账本写入模块16。
信息获取模块14,用于获取链上虚拟资源组合中的链上虚拟资源对应的资源描述信息;
信息写入模块15,用于将资源描述信息写入目标组合虚拟资源对应的元数据体中,得到描述元数据体;
账本写入模块16,用于将目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系写入区块链账本中。
其中,信息获取模块14、信息写入模块15以及账本写入模块16的具体实现方式可以参见上述图3所对应实施例中对步骤S102的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:结果发送模块17。
结果发送模块17,用于若目标组合虚拟资源、描述元数据体以及第一对象的第一对象地址之间的绑定关系成功写入区块链账本,则将目标组合虚拟资源对应的资源发行成功结果发送至第一对象;资源发行成功结果用于表征目标组合虚拟资源的链上所有权属于第一对象。
其中,结果发送模块17的具体实现方式可以参见上述图3所对应实施例中对步骤S102的可选描述,这里不再进行赘述。
其中,组合虚拟资源创建请求包括合成智能合约标识、第一对象的对象标识和数字签名;
资源发行模块12,包括:验签单元125、合约调用单元126以及合约运行单元127。
验签单元125,用于获取对象标识对应的公钥,根据公钥对组合虚拟资源创建请求中的数字签名进行验签处理,得到验签结果;
合约调用单元126,用于若验签结果为验签通过结果,则调用合成智能合约标识所指示的合成智能合约;
合约运行单元127,用于通过运行合成智能合约,将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源。
其中,验签单元125、合约调用单元126以及合约运行单元127的具体实现方式可以参见上述图3所对应实施例中对步骤S102的具体描述,这里不再进行赘述。
其中,资源转移模块13,包括:交易共识单元131以及交易执行单元132。
交易共识单元131,用于根据资源转移请求生成转移交易,将转移交易广播至共识网络,以使共识网络对转移交易进行交易共识处理,得到交易共识结果;
交易执行单元132,用于若交易共识结果为交易共识通过结果,则执行转移交易;
交易执行单元132,还用于在执行转移交易的过程中,将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址。
其中,交易共识单元131以及交易执行单元132的具体实现方式可以参见上述图3所对应实施例中对步骤S103的具体描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:资源兑换模块18。
资源兑换模块18,用于若接收到第二对象针对转移后的目标组合虚拟资源的资源兑换请求,则将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址;处于目标合约地址的目标组合虚拟资源处于锁定状态;第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;
资源兑换模块18,还用于将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。
其中,资源兑换模块18的具体实现方式可以参见上述图3所对应实施例中的可选实施例描述,这里不再进行赘述。
请参见图8,图8是本申请实施例提供的一种计算机设备的结构示意图。如图8所示,上述图7所对应实施例中的数据处理装置1可以应用于计算机设备8000,该计算机设备8000可以包括:处理器8001,网络接口8004和存储器8005,此外,上述计算机设备8000还可以包括:用户接口8003,和至少一个通信总线8002。其中,通信总线8002用于实现这些组件之间的连接通信。其中,用户接口8003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口8003还可以包括标准的有线接口、无线接口。网络接口8004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器8005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器8005可选的还可以是至少一个位于远离前述处理器8001的存储装置。如图8所示,作为一种计算机可读存储介质的存储器8005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图8所示的计算机设备8000中,网络接口8004可提供网络通讯网元;而用户接口8003主要用于为用户提供输入的接口;而处理器8001可以用于调用存储器8005中存储的设备控制应用程序,以实现:
接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;链上虚拟资源组合中的链上虚拟资源的链上所有权属于第一对象;
根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
若接收到针对目标组合虚拟资源的资源转移请求,则根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
应当理解,本申请实施例中所描述的计算机设备8000可执行前文图3所对应实施例中对该数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置1所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图3所对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
进一步地,请参见图9,图9是本申请实施例提供的另一种基于区块链的数据处理装置的结构示意图。上述数据处理装置2可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据处理装置2为一个应用软件;该数据处理装置2可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,该数据处理装置2可以包括:组合获取模块21、请求发送模块22以及资源转移模块23。
组合获取模块21,用于响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;链上虚拟资源列表中的链上虚拟资源的链上所有权属于第一对象;链上虚拟资源组合包括基于选择操作所选择到的链上虚拟资源,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;
请求发送模块22,用于响应第一对象针对链上虚拟资源组合的资源创建操作,向区块链网络发送针对链上虚拟资源组合的组合虚拟资源创建请求,以使区块链网络根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
资源转移模块23,用于响应第一对象针对目标组合虚资源的资源转移操作,向区块链网络发送针对链上虚拟资源组合的资源转移请求,以使区块链网络根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
其中,组合获取模块21、请求发送模块22以及资源转移模块23的具体实现方式可以参见上述图4所对应实施例中对步骤S201-步骤S203的描述,这里不再进行赘述。
其中,请求发送模块22,包括:标识获取单元221、地址获取单元222、请求生成单元223、私钥获取单元224、签名单元225以及请求发送单元226。
标识获取单元221,用于响应第一对象针对链上虚拟资源组合的资源创建操作,获取第一对象对应的第一去中心化标识;
地址获取单元222,用于在标识数据库中获取与第一去中心化标识关联的对象地址,作为第一对象地址;
请求生成单元223,用于根据第一对象地址生成针对链上虚拟资源组合的初始组合虚拟资源创建请求;
私钥获取单元224,用于在标识数据库中获取与第一对象地址关联的对象私钥,作为第一对象私钥;
签名单元225,用于通过第一对象私钥对初始组合虚拟资源创建请求进行签名处理,得到组合虚拟资源创建请求;
请求发送单元226,用于将组合虚拟资源创建请求发送至区块链网络。
其中,标识获取单元221、地址获取单元222、请求生成单元223、私钥获取单元224、签名单元225以及请求发送单元226的具体实现方式可以参见上述图4所对应实施例中对步骤S202的具体描述,这里不再进行赘述。
其中,上述数据处理装置2,还包括:身份验证模块24、标识分配模块25、标识上链模块26以及标识存储模块27。
身份验证模块24,用于响应第一对象的注册操作,获取第一对象对应的对象身份信息;
身份验证模块24,还用于对对象身份信息进行验证处理,得到身份验证结果;
标识分配模块25,用于若身份验证结果为身份验证通过结果,则为第一对象分配第一去中心化标识;
标识上链模块26,用于向区块链网络发起针对第一去中心化标识的上链请求,以使区块链网络获取与对象身份信息对应的第一对象地址以及第一对象私钥,对第一去中心化标识、第一对象地址以及第一对象私钥的关联关系进行区块链账本写入操作;
标识存储模块27,用于若第一去中心化标识与第一对象地址的关联关系成功写入区块链账本,则将第一去中心化标识、第一对象地址以及第一对象私钥关联写入标识数据库中。
其中,身份验证模块24、标识分配模块25、标识上链模块26以及标识存储模块27的具体实现方式可以参见上述图4所对应实施例中的可选描述,这里不再进行赘述。
其中,上述数据处理装置2,还包括:资源兑换模块28。
资源兑换模块28,用于响应第二对象针对转移后的目标组合虚拟资源的资源兑换操作,向区块链网络发送针对转移后的目标组合虚拟资源的资源兑换请求,以使区块链网络将转移后的目标组合虚拟资源从第二对象地址转移至目标合约地址,将转移后的链上虚拟资源组合中的链上虚拟资源转移至第二对象地址;处于目标合约地址的目标组合虚拟资源处于锁定状态;第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;处于第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于第二对象。
其中,资源兑换模块28的具体实现方式可以参见上述图4所对应实施例中的可选描述,这里不再进行赘述。
进一步地,请参见图10,图10是本申请实施例提供的另一种计算机设备的结构示意图。如图10所示,上述图9所对应实施例中的数据处理装置2可以应用于计算机设备10000,该计算机设备10000可以包括:处理器10001,网络接口10004和存储器10005,此外,上述计算机设备10000还包括:用户接口10003,和至少一个通信总线10002。其中,通信总线10002用于实现这些组件之间的连接通信。其中,用户接口10003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口10003还可以包括标准的有线接口、无线接口。网络接口10004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器10005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器10005可选的还可以是至少一个位于远离前述处理器10001的存储装置。如图9所示,作为一种计算机可读存储介质的存储器10005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图9所示的计算机设备10000中,网络接口10004可提供网络通讯功能;而用户接口10003主要用于为用户提供输入的接口;而处理器10001可以用于调用存储器10005中存储的设备控制应用程序,以实现:
响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;链上虚拟资源列表中的链上虚拟资源的链上所有权属于第一对象;链上虚拟资源组合包括基于选择操作所选择到的链上虚拟资源,链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;
响应第一对象针对链上虚拟资源组合的资源创建操作,向区块链网络发送针对链上虚拟资源组合的组合虚拟资源创建请求,以使区块链网络根据组合虚拟资源创建请求将链上虚拟资源组合从第一对象的第一对象地址转移至目标合约地址,向第一对象地址发行目标组合虚拟资源;目标组合虚拟资源的链上所有权属于第一对象;
响应第一对象针对目标组合虚资源的资源转移操作,向区块链网络发送针对链上虚拟资源组合的资源转移请求,以使区块链网络根据资源转移请求将目标组合虚拟资源从第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于第二对象;资源转移请求携带第二对象地址;具有目标组合虚拟资源的链上所有权的第二对象,具有将链上虚拟资源组合从目标合约地址转移至第二对象地址的权限。
应当理解,本申请实施例中所描述的计算机设备10000可执行前文各个实施例中对该数据处理方法的描述,也可执行前文图9所对应实施例中对该数据处理装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置2所执行的计算机程序,当上述处理器加载并执行上述计算机程序时,能够执行前文任一实施例对上述访问控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
此外,这里需要指出的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图3、图4任一个所对应实施例提供的方法。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照网元一般性地描述了各示例的组成及步骤。这些网元究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的网元,但是这种实现不应认为超出本申请的范围。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (15)
1.一种基于区块链的数据处理方法,其特征在于,包括:
区块链节点接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;所述链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;所述链上虚拟资源组合中的链上虚拟资源的链上所有权属于所述第一对象;
根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源;所述目标组合虚拟资源的链上所有权属于所述第一对象;
若接收到针对所述目标组合虚拟资源的资源转移请求,则根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于所述第二对象;所述资源转移请求携带所述第二对象地址;具有所述目标组合虚拟资源的链上所有权的所述第二对象,具有将所述链上虚拟资源组合从所述目标合约地址转移至所述第二对象地址的权限。
2.根据权利要求1所述的方法,其特征在于,所述根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源,包括:
查询所述链上虚拟资源组合中的链上虚拟资源的链上所有权;
若所述链上虚拟资源组合中的链上虚拟资源的链上所有权均属于所述第一对象,则将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址;
生成所述链上虚拟资源组合对应的目标组合虚拟资源;
将所述目标组合虚拟资源发送至所述第一对象的第一对象地址。
3.根据权利要求2所述的方法,其特征在于,还包括:
获取所述链上虚拟资源组合中的链上虚拟资源对应的资源描述信息;
将所述资源描述信息写入所述目标组合虚拟资源对应的元数据体中,得到描述元数据体;
将所述目标组合虚拟资源、所述描述元数据体以及所述第一对象的第一对象地址之间的绑定关系写入区块链账本中。
4.根据权利要求3所述的方法,其特征在于,还包括:
若所述目标组合虚拟资源、所述描述元数据体以及所述第一对象的第一对象地址之间的绑定关系成功写入区块链账本,则将所述目标组合虚拟资源对应的资源发行成功结果发送至所述第一对象;所述资源发行成功结果用于表征所述目标组合虚拟资源的链上所有权属于所述第一对象。
5.根据权利要求1所述的方法,其特征在于,所述组合虚拟资源创建请求包括合成智能合约标识、第一对象的对象标识和数字签名;
所述根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源,包括:
获取所述对象标识对应的公钥,根据所述公钥对所述组合虚拟资源创建请求中的所述数字签名进行验签处理,得到验签结果;
若所述验签结果为验签通过结果,则调用所述合成智能合约标识所指示的合成智能合约;
通过运行所述合成智能合约,将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源。
6.根据权利要求1所述的方法,其特征在于,所述根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址,包括:
根据所述资源转移请求生成转移交易,将所述转移交易广播至共识网络,以使所述共识网络对所述转移交易进行交易共识处理,得到交易共识结果;
若所述交易共识结果为交易共识通过结果,则执行所述转移交易;
在执行所述转移交易的过程中,将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址。
7.根据权利要求1所述的方法,其特征在于,还包括:
若接收到所述第二对象针对所述转移后的目标组合虚拟资源的资源兑换请求,则将所述转移后的目标组合虚拟资源从所述第二对象地址转移至所述目标合约地址;处于所述目标合约地址的目标组合虚拟资源处于锁定状态;所述第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;
将所述转移后的链上虚拟资源组合中的链上虚拟资源转移至所述第二对象地址;处于所述第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于所述第二对象。
8.一种基于区块链的数据处理方法,其特征在于,包括:
响应第一对象针对链上虚拟资源列表的选择操作,获取链上虚拟资源组合;所述链上虚拟资源列表中的链上虚拟资源的链上所有权属于所述第一对象;所述链上虚拟资源组合包括基于所述选择操作所选择到的链上虚拟资源,所述链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;
响应第一对象针对所述链上虚拟资源组合的资源创建操作,向区块链网络发送针对所述链上虚拟资源组合的组合虚拟资源创建请求,以使所述区块链网络根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源;所述目标组合虚拟资源的链上所有权属于所述第一对象;
响应第一对象针对所述目标组合虚资源的资源转移操作,向所述区块链网络发送针对所述链上虚拟资源组合的资源转移请求,以使所述区块链网络根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于所述第二对象;所述资源转移请求携带所述第二对象地址;具有所述目标组合虚拟资源的链上所有权的所述第二对象,具有将所述链上虚拟资源组合从所述目标合约地址转移至所述第二对象地址的权限。
9.根据权利要求8所述的方法,其特征在于,所述响应第一对象针对所述链上虚拟资源组合的资源创建操作,向区块链网络发送针对所述链上虚拟资源组合的组合虚拟资源创建请求,包括:
响应第一对象针对所述链上虚拟资源组合的资源创建操作,获取所述第一对象对应的第一去中心化标识;
在标识数据库中获取与所述第一去中心化标识关联的对象地址,作为第一对象地址;
根据所述第一对象地址生成针对所述链上虚拟资源组合的初始组合虚拟资源创建请求;
在所述标识数据库中获取与所述第一对象地址关联的对象私钥,作为第一对象私钥;
通过所述第一对象私钥对所述初始组合虚拟资源创建请求进行签名处理,得到组合虚拟资源创建请求;
将所述组合虚拟资源创建请求发送至区块链网络。
10.根据权利要求9所述的方法,其特征在于,还包括:
响应第一对象的注册操作,获取所述第一对象对应的对象身份信息;
对所述对象身份信息进行验证处理,得到身份验证结果;
若所述身份验证结果为身份验证通过结果,则为所述第一对象分配第一去中心化标识;
向区块链网络发起针对所述第一去中心化标识的上链请求,以使所述区块链网络获取与所述对象身份信息对应的第一对象地址以及第一对象私钥,对所述第一去中心化标识、所述第一对象地址以及所述第一对象私钥的关联关系进行区块链账本写入操作;
若所述第一去中心化标识与所述第一对象地址的关联关系成功写入区块链账本,则将所述第一去中心化标识、所述第一对象地址以及所述第一对象私钥关联写入标识数据库中。
11.根据权利要求7所述的方法,其特征在于,还包括:
响应第二对象针对所述转移后的目标组合虚拟资源的资源兑换操作,向区块链网络发送针对所述转移后的目标组合虚拟资源的资源兑换请求,以使所述区块链网络将所述转移后的目标组合虚拟资源从所述第二对象地址转移至所述目标合约地址,将所述转移后的链上虚拟资源组合中的链上虚拟资源转移至所述第二对象地址;处于所述目标合约地址的目标组合虚拟资源处于锁定状态;所述第二对象不具有转移处于锁定状态的目标组合虚拟资源的权限;处于所述第二对象地址的链上虚拟资源组合中的链上虚拟资源的链上所有权属于所述第二对象。
12.一种数据处理装置,其特征在于,包括:
请求接收模块,用于接收第一对象针对链上虚拟资源组合的组合虚拟资源创建请求;所述链上虚拟资源组合中的链上虚拟资源的资源类型的数量为一个或多个;所述链上虚拟资源组合中的链上虚拟资源的链上所有权属于所述第一对象;
资源发行模块,用于根据所述组合虚拟资源创建请求将所述链上虚拟资源组合从所述第一对象的第一对象地址转移至目标合约地址,向所述第一对象地址发行目标组合虚拟资源;所述目标组合虚拟资源的链上所有权属于所述第一对象;
资源转移模块,用于若接收到针对所述目标组合虚拟资源的资源转移请求,则根据所述资源转移请求将所述目标组合虚拟资源从所述第一对象地址转移至第二对象的第二对象地址;转移后的目标组合虚拟资源的链上所有权属于所述第二对象;所述资源转移请求携带所述第二对象地址;具有所述目标组合虚拟资源的链上所有权的所述第二对象,具有将所述链上虚拟资源组合从所述目标合约地址转移至所述第二对象地址的权限。
13.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供数据通信功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行权利要求1-11任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行权利要求1-11任一项所述的方法。
15.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时,可以执行权利要求1-11任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210586740.2A CN117176737A (zh) | 2022-05-27 | 2022-05-27 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
PCT/CN2023/085893 WO2023226594A1 (zh) | 2022-05-27 | 2023-04-03 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210586740.2A CN117176737A (zh) | 2022-05-27 | 2022-05-27 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117176737A true CN117176737A (zh) | 2023-12-05 |
Family
ID=88918399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210586740.2A Pending CN117176737A (zh) | 2022-05-27 | 2022-05-27 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117176737A (zh) |
WO (1) | WO2023226594A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11951400B2 (en) * | 2018-03-14 | 2024-04-09 | Sony Interactive Entertainment LLC | Secure decentralized video game transaction platform |
CN109559228B (zh) * | 2018-11-29 | 2021-06-11 | 腾讯科技(深圳)有限公司 | 资源转移方法、装置、计算机设备以及可读存储介质 |
CN109993530A (zh) * | 2019-03-29 | 2019-07-09 | 北京柏链基石科技有限公司 | 一种虚拟资源管理方法、装置及电子设备 |
SG11202003794UA (en) * | 2019-09-11 | 2020-05-28 | Advanced New Technologies Co Ltd | System and method for digital asset transfer |
CN110910135A (zh) * | 2019-10-29 | 2020-03-24 | 腾讯科技(深圳)有限公司 | 一种应用资源转移的方法、装置、电子设备和存储介质 |
CN112907244B (zh) * | 2021-02-10 | 2023-11-28 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
-
2022
- 2022-05-27 CN CN202210586740.2A patent/CN117176737A/zh active Pending
-
2023
- 2023-04-03 WO PCT/CN2023/085893 patent/WO2023226594A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023226594A1 (zh) | 2023-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111915301B (zh) | 基于区块链的数据处理方法、装置、电子设备及可读介质 | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
CN109936620B (zh) | 基于区块链的存储方法及装置、系统与存储介质 | |
US20230259938A1 (en) | Blockchain-based data processing method and apparatus, device, readable storage medium and computer program product | |
CN115114372A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN111444542A (zh) | 一种针对版权文件的数据处理方法、装置及存储介质 | |
CN111311341A (zh) | 票据处理方法、设备及介质 | |
CN117010889A (zh) | 数据处理方法、装置及设备、介质、产品 | |
CN117176737A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN112231415B (zh) | 区块链网络的数据同步方法、系统、电子设备及可读介质 | |
CN116055052A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN117540356B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
WO2024103998A1 (zh) | 基于区块链的数据处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN116862679B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
US20230325833A1 (en) | Blockchain-based data processing method and apparatus, device, storage medium, and program product | |
CN117032998B (zh) | 一种基于区块链的数据处理方法、装置以及可读存储介质 | |
US20230334726A1 (en) | Blockchain-based data processing method and apparatus, device, storage medium, and program product | |
WO2024037117A1 (zh) | 一种基于区块链的数据处理方法、设备、介质和程序产品 | |
CN117061089B (zh) | 一种投票管理方法、装置、设备及存储介质 | |
CN116804949B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN118074931A (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
WO2024021785A1 (zh) | 一种数字实体的处理方法、装置、设备、介质及程序产品 | |
CN116846958A (zh) | 区块链网络的数据处理方法、装置、计算机设备和介质 | |
CN117456072A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN117971960A (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40098053 Country of ref document: HK |