CN110535661A - 基于区块链的业务处理方法、装置、电子设备和存储介质 - Google Patents

基于区块链的业务处理方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN110535661A
CN110535661A CN201910828330.2A CN201910828330A CN110535661A CN 110535661 A CN110535661 A CN 110535661A CN 201910828330 A CN201910828330 A CN 201910828330A CN 110535661 A CN110535661 A CN 110535661A
Authority
CN
China
Prior art keywords
business
business datum
current
block chain
service data
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.)
Granted
Application number
CN201910828330.2A
Other languages
English (en)
Other versions
CN110535661B (zh
Inventor
才鑫
杨涛
刘志升
邢磊
舒展
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
CCB Finetech Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN201910828330.2A priority Critical patent/CN110535661B/zh
Publication of CN110535661A publication Critical patent/CN110535661A/zh
Application granted granted Critical
Publication of CN110535661B publication Critical patent/CN110535661B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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
    • H04L9/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本公开实施例公开了一种基于区块链的业务处理方法、装置、电子设备和存储介质,由区块链系统的业务节点执行,所述方法包括:获取批量业务数据;根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。能够支持批量业务并根据区块链网络的网络状态调整提交业务的数量,能减少批量提交业务造成区块链网络拥堵,能减少失败业务的概率,能提高区块链网络的全局处理效率。

Description

基于区块链的业务处理方法、装置、电子设备和存储介质
技术领域
本公开实施例涉及区块链技术领域,具体涉及一种基于区块链的业务处理方法、装置、电子设备和存储介质。
背景技术
随着互联网技术的不断发展,一种去中心化且公开透明的区块链技术应运而生。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
在典型的行业案例中,各参与方会在本地部署区块链节点,并在业务系统调用SDK接口,提交区块链业务,完成链上数字资产的确权。在实际应用过程中,业务系统的数字资产并非实时生成提交上链,而是在日终或者定期通过一定模型计算生成一批数字资产,再统一进行上链存证。然而,目前区块链的并不支持批量业务。
发明内容
有鉴于此,本公开实施例提供一种基于区块链的业务处理方法、装置、电子设备和存储介质,以实现减少批量提交业务造成区块链网络拥堵,减少失败业务的概率,提高区块链网络的全局处理效率。
本公开实施例的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开实施例的实践而习得。
第一方面,本公开实施例提供了一种基于区块链的业务处理方法,由区块链系统的业务节点执行,所述方法包括:
获取批量业务数据;
根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
于一实施例中,获取批量业务数据包括:
获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
于一实施例中,根据区块链网络的网络状态确定当前待提交的当前业务数量包括:
获取最近的设定数量的区块所包含的平均业务数量;
根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
于一实施例中,根据区块链网络的网络状态确定当前待提交的当前业务数量包括:
根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
于一实施例中,根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量包括:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
于一实施例中,根据区块链网络的网络状态确定当前待提交的当前业务数量还包括:
根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量。
于一实施例中,所述方法还包括:根据所述批量业务数据的业务状态更新所述批量业务数据的结果。
于一实施例中,根据所述批量业务数据的业务状态更新所述批量业务数据的结果包括:
根据所述批量业务数据的业务状态,采用K位四进制整数记录所述批量业务数据的结果,其中K等于所述批量业务数据的数量;
其中,若任一位对应的业务数据未处理,则将该位取值设置为第一数值;
若任一位对应的业务数据处于上链中,则将该位取值设置为第二数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第三数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第四数值。
于一实施例中,根据所述批量业务数据的业务状态更新所述批量业务数据的结果包括:
记录所述批量业务数据的数量K,并根据所述批量业务数据的业务状态,采用K位三进制整数记录所述批量业务的结果;
其中,若任一位对应的业务数据处于上链中,则将该位取值设置为第一数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第二数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第三数值。
于一实施例中,在获取批量业务数据之后,且在确定当前组业务数据之前还包括:
分别对所述批量业务数据的进行签名有效性验证;
将验证不通过的业务数据对应的结果设置为上链失败;
将验证通过的业务数据缓存在本地。
第二方面,本公开实施例还提供了一种基于区块链的业务处理装置,配置于区块链系统的业务节点中,所述装置包括:
业务数据获取单元,用于获取批量业务数据;
当前组业务确定单元,用于根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
上链请求单元,用于向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
重复确定与上链单元,用于返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
于一实施例中,所述业务数据获取单元用于:
获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
于一实施例中,所述当前组业务确定单元用于:
获取最近的设定数量的区块所包含的平均业务数量;
根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
于一实施例中,所述当前组业务确定单元用于:
根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
于一实施例中,所述当前组业务确定单元用于:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
于一实施例中,所述当前组业务确定单元还用于:
根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量。
于一实施例中,所述装置还包括结果更新单元,用于根据所述批量业务数据的业务状态更新所述批量业务数据的结果。
于一实施例中,所述结果更新单元用于:
根据所述批量业务数据的业务状态,采用K位四进制整数记录所述批量业务数据的结果,其中K等于所述批量业务数据的数量;
其中,若任一位对应的业务数据未处理,则将该位取值设置为第一数值;
若任一位对应的业务数据处于上链中,则将该位取值设置为第二数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第三数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第四数值。
于一实施例中,所述结果更新单元用于:
记录所述批量业务数据的数量K,并根据所述批量业务数据的业务状态,采用K位三进制整数记录所述批量业务的结果;
其中,若任一位对应的业务数据处于上链中,则将该位取值设置为第一数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第二数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第三数值。
于一实施例中,所述装置还包括签名验证单元,用于在获取批量业务数据之后,在确定当前组业务数据之前:
分别对所述批量业务数据的进行签名有效性验证;
所述结果更新单元用于将验证不通过的业务数据对应的结果设置为上链失败;
所述业务数据获取单元还用于将验证通过的业务数据缓存在本地。
第三方面,本公开实施例还提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一项所述方法的指令。
第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一项所述方法的步骤。
本公开实施例提出的技术方案的有益技术效果是:
本公开实施例通过获取批量业务数据,根据区块链网络的网络状态调整提交业务的数量,能减少批量提交业务造成区块链网络拥堵,能减少失败业务的概率,能提高区块链网络的全局处理效率
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本公开实施例中的一部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本公开实施例的内容和这些附图获得其他的附图。
图1是本公开实施例提供的一种基于区块链的业务处理方法的流程示意图;
图2是本公开实施例提供的另一种基于区块链的业务处理方法的流程示意图;
图3是本公开实施例提供的又一种基于区块链的业务处理方法的交互流程示意图;
图4是本公开实施例提供的又一种基于区块链的业务处理方法中动态分组提交共识结果的流程示意图;
图5是本公开实施例提供的又一种基于区块链的业务处理方法中更新批量业务数据的结果的流程示意图;
图6是本公开实施例提供的一种基于区块链的业务处理装置的结构示意图;
图7是本公开实施例提供的另一种基于区块链的业务处理装置的结构示意图;
图8示出了适于用来实现本公开实施例的电子设备的结构示意图。
具体实施方式
为使本公开实施例解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本公开实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本公开实施例中的一部分实施例,而不是全部的实施例。基于本公开实施例中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开实施例保护的范围。
需要说明的是,本公开实施例中术语“系统”和“网络”在本文中常被可互换使用。本公开实施例中提到的“和/或”是指”包括一个或更多个相关所列项目的任何和所有组合。本公开的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于限定特定顺序。
还需要说明是,本公开实施例中下述各个实施例可以单独执行,各个实施例之间也可以相互结合执行,本公开实施例对此不作具体限制。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下面结合附图并通过具体实施方式来进一步说明本公开实施例的技术方案。
图1示出了本公开实施例提供的一种基于区块链的业务处理方法的流程示意图,本实施例可适用于联盟区块链的情况,该方法可以由配置于区块链系统的业务节点所在的电子设备的基于区块链的业务处理装置来执行,如图1所示,本实施例所述的基于区块链的业务处理方法包括:
在步骤S110中,获取批量业务数据。
为了降低传输过程的数据量,提升客户端与区块链的业务节点之间业务数据的传输效率,客户端可能使用已存在的高效压缩算法(如zip),对批量业务文件进行压缩,复用区块链客户端和区块链节点间的安全传输通路,完成压缩的批量业务文件传输。
这种情况下,业务节点在获取客户端提交的包含批量业务数据的压缩文件之后,需要对所述压缩文件进行解压缩得到所述批量业务数据。
在步骤S120中,根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据。
本步骤的目的在于避免因为区块链网络繁忙,导致业务失败重试,以提升区块链网络全局的处理效率。例如,若区块链网络的网络空闲,则增大当前业务数量,若区块链网络的网络繁忙,则减少当前业务数量。具体地,根据区块链网络的网络状态确定当前待提交的当前业务数量,可采用多种方法,例如,可获取最近的设定数量的区块所包含的平均业务数量;根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
又如,可根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量,对于其他组,还可根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
进一步地,根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量可包括:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
例如,初始情况下,业务分组数量为s=max(m/n,1),其中m为该区块链网络中,单区块最大支持业务数量,n为区块链网络中的节点规模,max()为求较大值的函数。计算分组业务完成时,区块链高度增长的情况,若区块链增长高度小于既定阈值x,可判定当前区块链网络较为空闲,可以按照max(m/n,1)步长,动态提高业务分组数量,且最大分组数量不超过m*0.8;若区块链增长高度超过既定阈值x,可判定当前区块链网络较为繁忙可调整分组数量为s/2,减少出现失败业务的概率。
在步骤S130中,向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中。
本步骤用于将当前组业务数据在所述联盟区块链中进行共识。
在步骤S140中,判断是否所获取的批量业务数据上链完成,若是则结束,若否则返回步骤S120。
若批量业务数据数量较大,一个分组不足以发送完全,则需要分多组发送,每组发完后,若判断所获取的批量业务数据还有剩余,则返回步骤S120再根据区块链网络的网络状态确定当前待提交的当前业务数量发送业务数据,直到发送完所有的业务数据为止。
本实施例通过获取批量业务数据,根据区块链网络的网络状态调整提交业务的数量,能减少批量提交业务造成区块链网络拥堵,能减少失败业务的概率,能提高区块链网络的全局处理效率。
图2示出了本公开实施例提供的另一种基于区块链的业务处理方法的流程示意图,本实施例以前述实施例为基础,进行了改进优化。如图2所示,本实施例所述的基于区块链的业务处理方法包括:
在步骤S210中,获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
在步骤S220中,分别对所述批量业务数据的进行签名有效性验证,将验证不通过的业务数据对应的结果设置为上链失败,将验证通过的业务数据缓存在本地。
在步骤S230中,根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据。
在步骤S240中,向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中。
在步骤S250中,根据所述批量业务数据的业务状态更新所述批量业务数据的结果。
所述批量业务数据的结果可以采用一个或一个以上的数据来记录,例如一个业务数据的结果采用一个数据来记录。为了使所述批量业务数据的结果简单明了,并且节省数据量,可所述批量业务数据的结果可采用一个数据来记录,例如可采用四进制整数或三进制整数记录所述批量业务数据的结果,一位代表一个对应的业务数据的执行结果。
例如,以采用一个四进制数据记录所述批量业务数据的结果为例,可根据所述批量业务数据的业务状态,采用K位四进制整数记录所述批量业务数据的结果,其中K等于所述批量业务数据的数量;
其中,若任一位对应的业务数据未处理,则将该位取值设置为第一数值;
若任一位对应的业务数据处于上链中,则将该位取值设置为第二数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第三数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第四数值。
又如,以采用一个三进制数据记录所述批量业务数据的结果为例,可记录所述批量业务数据的数量K,并根据所述批量业务数据的业务状态,采用K位三进制整数记录所述批量业务的结果;
其中,若任一位对应的业务数据处于上链中,则将该位取值设置为第一数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第二数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第三数值。
具体地,例如,采用0代表上链中,采用1代表上链失败,采用2代表交易上链成功。可将结果r初始化为0,第i行交易对应该三进制的第i位,若文件中第i行交易处理完成,则根据交易结果,更新r。若上链成功,可采用如下公式更新r值:
r=r+2*(3^(i–1))
若上链失败,可采用如下公式更新r值:
r=r+1*(3^(i–1))
在步骤S260中,是否所获取的批量业务数据上链完成,若是则结束,若否则返回步骤S230。
本实施例在上一实施例的基础上,进一步公开了根据所述批量业务数据的业务状态更新所述批量业务数据的结果,所述批量业务数据的结果可采用一个数据来记录,能使所述批量业务数据的结果简单明了,并且节省数据量。
图3是本公开实施例提供的又一种基于区块链的业务处理方法的交互流程示意图,如图3所示,
本方案面向联盟区块链应用,提供了一种批量提交区块链业务的方法。通过改造区块链SDK和区块链业务节点,支持完成批量区块链业务,本实施例中客户端、业务节点和区块链网络之间的交互方式如图3所示。本实施例的技术方案的流程包括:
在步骤S310中,客户端并发调用区块链SDK,生产签名后的业务数据,并写入批量业务文件。
例如用JSON串的形式写入到文件中,一行记录为一个业务数据。
在步骤S320中,客户端使用已存在的高效压缩算法(如zip),对批量业务文件进行压缩,复用区块链客户端和区块链节点间的安全传输通路,完成压缩的批量业务文件传输。
在步骤S330中,服务器按照既定算法,解压批量业务文件,验证每笔业务签名的有效性,并在本地缓存业务列表。
在步骤S340中,区块链节点分组提交业务至区块链网络,并基于业务完成时,区块链网络高度的增长情况,动态调整分组业务的数量,具体算法参考图4所示的流程。
图4是本公开实施例提供的又一种基于区块链的业务处理方法中动态分组提交共识结果的流程示意图,如图4所示,
在步骤S410中,初始化分组业务数据数量为max(m/n,1)。
其中max()为求较大值的函数,即m/n小于1时初始化分组业务数据数量取1。
在步骤S420中,根据该数量提交业务数据至区块链网络进行共识。
在步骤S430中,计算分组业务完成时,区块链高度的增长情况,动态调整分组业务数据的数量。
在步骤S440中,判断高度变化是否超过阈值X,若是则执行步骤S450,否则执行步骤S460。
在步骤S450中,将分组业务数据数量折半,根据该数量提交业务数据至区块链网络进行共识。
在步骤S460中,以max(m/n,1)为步长,增加分组业务数据数量,根据该数量提交业务数据至区块链网络进行共识。
例如,区块链节点动态调整提交的分组业务数量的方法如图4所示。初始情况下,业务分组数量为s=max(m/n,1),其中m为该区块链网络中,单区块最大支持业务数量,n为区块链网络中的节点规模;计算分组业务完成时,区块链高度增长的情况,若区块链增长高度小于既定阈值x,可判定当前区块链网络较为空闲,可以按照max(m/n,1)步长,动态提高业务分组数量,且最大分组数量不超过m*0.8;若区块链增长高度超过既定阈值x,可判定当前区块链网络较为繁忙可调整分组数量为s/2,减少出现失败业务的概率。
在步骤S350中,业务在区块链网络中进行共识。
在步骤S360中,共识完成后,根据单笔业务的执行情况,更新批量业务的结果,具体算法参考图5所示的内容。
图5是本公开实施例提供的又一种基于区块链的业务处理方法中更新批量业务数据的结果的流程示意图,如图5所示,
在步骤S510中,批量查询结果初始化为0。
在步骤S520中,文件中第i行处理完成,执行步骤S530。
在步骤S530中,判断是否上链成功,若是则执行步骤S540,否则执行步骤S550。
在步骤S540中,更新查询结果为:r=r+2*(3^(i–1))。
其中“^”为指数符号,“*”为乘号。
在步骤S550中,更新查询结果为:r=r+1*(3^(i–1))。
例如,批量查询业务结果,包含三种状态,上链成功、上链失败和上链中。针对查询结果使用三进制进行编码,使用N个64位无符号整数进行存储,可以极大节省存储。例如用0代表上链中,1代表上链失败,2代表业务上链成功,判定是否业务都完成。批量业务结果具体编码算法如图3所示,结果r初始化为0,第i行交易对应该三进制的第i位,若文件中第i行业务处理完成,则根据业务结果,更新r。若上链成功,更新r:
r=r+2*(3^(i–1))
若上链失败,更新r:
r=r+1*(3^(i–1))
在步骤S370中,客户端通过批量文件业务指纹信息(SHA256),异步查询全部业务的执行结果
本实施例在上面实施例的基础之上,通过区块链网络中客户端、业务节点、以及区块链网络之间交互的角度公开了一种具体的技术方案,具有上述实施例执行方法相应的有益效果。
作为上述各图所示方法的实现,本申请提供了一种基于区块链的业务处理装置的一个实施例,图6示出了本实施例提供的一种基于区块链的业务处理装置的结构示意图,该装置实施例与图1-5所示的方法实施例相对应,该装置配置于区块链系统的业务节点中,具体可以应用于各种电子设备中。如图6所示,本实施例所述的基于区块链的业务处理装置包括业务数据获取单元610、当前组业务确定单元620、上链请求单元630和重复确定与上链单元640。
所述业务数据获取单元610被配置为,用于获取批量业务数据;
所述当前组业务确定单元620被配置为,用于根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
所述上链请求单元630被配置为,用于向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
所述重复确定与上链单元640被配置为,用于返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
于一实施例中,所述业务数据获取单元610被配置为,用于:获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
于一实施例中,所述当前组业务确定单元620被配置为,用于:
获取最近的设定数量的区块所包含的平均业务数量;
根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
于一实施例中,所述当前组业务确定单元620被配置为,用于:根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
进一步地,所述当前组业务确定单元620被配置为,用于:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
进一步地,所述当前组业务确定单元620被配置为,还用于根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量。
本实施例提供的基于区块链的业务处理装置可执行本公开实施例方法实施例所提供的基于区块链的业务处理方法,具备执行方法相应的功能模块和有益效果。
图7示出了本公开实施例提供的另一种基于区块链的业务处理装置的结构示意图,如图7所示,本实施例所述的基于区块链的业务处理装置包括业务数据获取单元710、签名验证单元720、当前组业务确定单元730、上链请求单元740、重复确定与上链单元750和结果更新单元760。
所述业务数据获取单元710被配置为,用于获取批量业务数据,以及将验证通过的业务数据缓存在本地。
所述签名验证单元720被配置为,用于分别对所述批量业务数据的进行签名有效性验证。
所述当前组业务确定单元730被配置为,用于根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据。
所述上链请求单元740被配置为,用于向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中。
所述重复确定与上链单元750被配置为,用于返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
所述结果更新单元760被配置为,用于将验证不通过的业务数据对应的结果设置为上链失败,以及用于根据所述批量业务数据的业务状态更新所述批量业务数据的结果。
进一步地,所述业务数据获取单元710被配置为,用于获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
进一步地,所述当前组业务确定单元730被配置为,用于:
获取最近的设定数量的区块所包含的平均业务数量;
根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
或者,所述当前组业务确定单元730被配置为,用于根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
进一步地,所述当前组业务确定单元730被配置为,用于:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
进一步地,所述当前组业务确定单元730被配置为,还用于根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量。
进一步地,所述结果更新单元760被配置为,用于:
根据所述批量业务数据的业务状态,采用K位四进制整数记录所述批量业务数据的结果,其中K等于所述批量业务数据的数量;
其中,若任一位对应的业务数据未处理,则将该位取值设置为第一数值;
若任一位对应的业务数据处于上链中,则将该位取值设置为第二数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第三数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第四数值。
进一步地,所述结果更新单元760被配置为,用于:
记录所述批量业务数据的数量K,并根据所述批量业务数据的业务状态,采用K位三进制整数记录所述批量业务的结果;
其中,若任一位对应的业务数据处于上链中,则将该位取值设置为第一数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第二数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第三数值。
本实施例提供的基于区块链的业务处理装置可执行本公开实施例方法实施例所提供的基于区块链的业务处理方法,具备执行方法相应的功能模块和有益效果。
下面参考图8,其示出了适于用来实现本公开实施例的电子设备800的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图8示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开实施例的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开实施例的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM 802被安装。在该计算机程序被处理装置801执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开实施例上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
获取批量业务数据;
根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开实施例各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
以上描述仅为本公开实施例的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开实施例中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (13)

1.一种基于区块链的业务处理方法,其特征在于,由区块链系统的业务节点执行,所述方法包括:
获取批量业务数据;
根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
2.根据权利要求1所述的方法,其特征在于,获取批量业务数据包括:
获取客户端提交的包含批量业务数据的压缩文件,对所述压缩文件进行解压缩得到所述批量业务数据。
3.根据权利要求1所述的方法,其特征在于,根据区块链网络的网络状态确定当前待提交的当前业务数量包括:
获取最近的设定数量的区块所包含的平均业务数量;
根据所述平均业务数量和区块链网络的最大支持业务数量确定当前待提交的当前业务数量。
4.根据权利要求1所述的方法,其特征在于,根据区块链网络的网络状态确定当前待提交的当前业务数量包括:
根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量。
5.根据权利要求4所述的方法,其特征在于,根据上一组业务数据的业务数量和所存储的区块数量,确定当前待提交的当前业务数量包括:
若上一组业务数据所存储的区块数量等于设定阈值,则确定当前待提交的当前业务数量为上一组业务数据的业务数量;
若上一组业务数据所存储的区块数量大于设定阈值,则确定当前待提交的当前业务数量为小于上一组业务数据的业务数量的值;
若上一组业务数据所存储的区块数量小于设定阈值,则确定当前待提交的当前业务数量为大于上一组业务数据的业务数量的值。
6.根据权利要求4所述的方法,其特征在于,根据区块链网络的网络状态确定当前待提交的当前业务数量还包括:
根据区块链网络中单区块最大支持业务数量和节点数量确定第一组业务数据的业务数量。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述批量业务数据的业务状态更新所述批量业务数据的结果。
8.根据权利要求7所述的方法,其特征在于,根据所述批量业务数据的业务状态更新所述批量业务数据的结果包括:
根据所述批量业务数据的业务状态,采用K位四进制整数记录所述批量业务数据的结果,其中K等于所述批量业务数据的数量;
其中,若任一位对应的业务数据未处理,则将该位取值设置为第一数值;
若任一位对应的业务数据处于上链中,则将该位取值设置为第二数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第三数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第四数值。
9.根据权利要求7所述的方法,其特征在于,根据所述批量业务数据的业务状态更新所述批量业务数据的结果包括:
记录所述批量业务数据的数量K,并根据所述批量业务数据的业务状态,采用K位三进制整数记录所述批量业务的结果;
其中,若任一位对应的业务数据处于上链中,则将该位取值设置为第一数值;
若任一位对应的业务数据上链失败,则将该位取值设置为第二数值;
若任一位对应的业务数据上链成功,则将该位取值设置为第三数值。
10.根据权利要求7所述的方法,其特征在于,在获取批量业务数据之后,且在确定当前组业务数据之前还包括:
分别对所述批量业务数据的进行签名有效性验证;
将验证不通过的业务数据对应的结果设置为上链失败;
将验证通过的业务数据缓存在本地。
11.一种基于区块链的业务处理装置,其特征在于,配置于区块链系统的业务节点中,所述装置包括:
业务数据获取单元,用于获取批量业务数据;
当前组业务确定单元,用于根据区块链网络的网络状态确定当前待提交的当前业务数量,并将所述当前业务数量的业务数据,作为当前组业务数据;
上链请求单元,用于向区块链网络发送携带有所述当前组业务数据的上链事务请求,供区块链网络将所述当前组业务数据写入区块链中;
重复确定与上链单元,用于返回执行当前组业务数据的确定操作和上链事务请求的发送操作,直至所获取的批量业务数据上链完成。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任一项所述方法的指令。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-10任一项所述方法的步骤。
CN201910828330.2A 2019-09-03 2019-09-03 基于区块链的业务处理方法、装置、电子设备和存储介质 Active CN110535661B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910828330.2A CN110535661B (zh) 2019-09-03 2019-09-03 基于区块链的业务处理方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910828330.2A CN110535661B (zh) 2019-09-03 2019-09-03 基于区块链的业务处理方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN110535661A true CN110535661A (zh) 2019-12-03
CN110535661B CN110535661B (zh) 2022-10-11

Family

ID=68666572

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910828330.2A Active CN110535661B (zh) 2019-09-03 2019-09-03 基于区块链的业务处理方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN110535661B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984733A (zh) * 2020-09-03 2020-11-24 深圳壹账通智能科技有限公司 基于区块链的数据传输方法、装置及存储介质
CN112153069A (zh) * 2020-09-29 2020-12-29 青岛网信信息科技有限公司 长度可配置的区块链方法及装置、存储介质、电子设备
CN113111125A (zh) * 2021-04-08 2021-07-13 同方股份有限公司 一种基于区块链的业务存证方法
CN113283987A (zh) * 2021-05-17 2021-08-20 网易(杭州)网络有限公司 业务处理方法、装置、区块链网关、区块链节点及存储介质
CN113806801A (zh) * 2021-09-15 2021-12-17 网易(杭州)网络有限公司 交易信息上链方法、装置、计算机设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108540536A (zh) * 2018-03-16 2018-09-14 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
CN108805702A (zh) * 2018-04-19 2018-11-13 深圳市网心科技有限公司 基于区块链的交易缓冲/加速方法及区块链交易处理系统
CN109165324A (zh) * 2018-08-20 2019-01-08 深圳市元征科技股份有限公司 一种交易数据封装方法及相关装置
CN109660601A (zh) * 2018-11-26 2019-04-19 北京瑞卓喜投科技发展有限公司 一种区块链共识方法及区块链共识装置
CN109815291A (zh) * 2018-12-28 2019-05-28 北京城市网邻信息技术有限公司 数据同步方法、装置、电子设备及存储介质
WO2019114128A1 (zh) * 2017-12-13 2019-06-20 深圳壹账通智能科技有限公司 区块链事务区块处理方法、电子装置及可读存储介质
US20190266553A1 (en) * 2018-02-23 2019-08-29 Bank Of America Corporation Blockchain-based supply chain certification systems and methods

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019114128A1 (zh) * 2017-12-13 2019-06-20 深圳壹账通智能科技有限公司 区块链事务区块处理方法、电子装置及可读存储介质
US20190266553A1 (en) * 2018-02-23 2019-08-29 Bank Of America Corporation Blockchain-based supply chain certification systems and methods
CN108540536A (zh) * 2018-03-16 2018-09-14 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
CN108805702A (zh) * 2018-04-19 2018-11-13 深圳市网心科技有限公司 基于区块链的交易缓冲/加速方法及区块链交易处理系统
CN109165324A (zh) * 2018-08-20 2019-01-08 深圳市元征科技股份有限公司 一种交易数据封装方法及相关装置
CN109660601A (zh) * 2018-11-26 2019-04-19 北京瑞卓喜投科技发展有限公司 一种区块链共识方法及区块链共识装置
CN109815291A (zh) * 2018-12-28 2019-05-28 北京城市网邻信息技术有限公司 数据同步方法、装置、电子设备及存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984733A (zh) * 2020-09-03 2020-11-24 深圳壹账通智能科技有限公司 基于区块链的数据传输方法、装置及存储介质
CN112153069A (zh) * 2020-09-29 2020-12-29 青岛网信信息科技有限公司 长度可配置的区块链方法及装置、存储介质、电子设备
CN113111125A (zh) * 2021-04-08 2021-07-13 同方股份有限公司 一种基于区块链的业务存证方法
CN113111125B (zh) * 2021-04-08 2024-03-08 同方股份有限公司 一种基于区块链的业务存证方法
CN113283987A (zh) * 2021-05-17 2021-08-20 网易(杭州)网络有限公司 业务处理方法、装置、区块链网关、区块链节点及存储介质
CN113806801A (zh) * 2021-09-15 2021-12-17 网易(杭州)网络有限公司 交易信息上链方法、装置、计算机设备及存储介质
CN113806801B (zh) * 2021-09-15 2023-08-29 网易(杭州)网络有限公司 交易信息上链方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN110535661B (zh) 2022-10-11

Similar Documents

Publication Publication Date Title
CN110535661A (zh) 基于区块链的业务处理方法、装置、电子设备和存储介质
CN110147398A (zh) 一种数据处理方法、装置、介质和电子设备
CN109299348A (zh) 一种数据查询方法、装置、电子设备及存储介质
WO2020029971A1 (zh) 支付过程的处理方法、装置、介质及电子设备
CN109375918A (zh) 小程序的界面渲染方法、装置、电子设备和存储介质
CN110413812A (zh) 神经网络模型的训练方法、装置、电子设备及存储介质
CN110365752A (zh) 业务数据的处理方法、装置、电子设备和存储介质
WO2023092792A1 (zh) 联邦学习建模优化方法、电子设备、存储介质及程序产品
CN109523187A (zh) 任务调度方法、装置和设备
CN109871388A (zh) 数据缓存方法、装置、终电子设备及存储介质
CN110505141A (zh) 即时通讯消息的处理方法、装置、可读介质及电子设备
CN109951546A (zh) 基于智能合约的事务请求处理方法、装置、设备和介质
CN109558246A (zh) 一种负载均衡方法、装置、电子设备及存储介质
US20220217536A1 (en) Communication method and apparatus for vehicle, and electronic device
WO2023284387A1 (zh) 基于联邦学习的模型训练方法、装置、系统、设备和介质
WO2023078072A1 (zh) 基于拜占庭容错的异步共识方法、装置、服务器和介质
CN109543154A (zh) 表格数据的类型转换方法、装置、存储介质及电子设备
CN110247917A (zh) 用于认证身份的方法和装置
CN110516463A (zh) 用于生成信息的方法和装置
CN109697034A (zh) 一种数据写入方法、装置、电子设备及存储介质
CN116860447A (zh) 任务缓存方法、装置、系统、设备及介质
WO2023066258A1 (zh) 隐私数据的数据处理方法、装置、计算机设备及介质
CN116129501A (zh) 人脸位姿估计方法及装置
WO2022228067A1 (zh) 语音处理方法、装置和电子设备
CN110503393A (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
GR01 Patent grant
GR01 Patent grant
TA01 Transfer of patent application right

Effective date of registration: 20220923

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

TA01 Transfer of patent application right