区块链中作业数据处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:22418661 阅读:30 留言:0更新日期:2019-10-30 02:09
本发明专利技术公开了一种区块链中作业数据处理方法、装置、电子设备及存储介质,其中,方法包括:接收多个并行作业数据,对其分别进行验证,每个作业数据包括智能合约;对验证成功的作业数据进行哈希运算生成哈希值,将具有相同哈希值的作业数据发送至同一打包节点;根据同一打包节点的作业数据生成部分区块并对其进行验证,部分区块包括:区块体和部分区块头,区块体记录同一打包节点的作业数据,部分区块头记录区块体中的作业数据的哈希值;根据区块数据结构将验证成功的部分区块生成完整区块,完整区块包括:区块体、部分区块头、以及另一部分区块头,另一部分区块头包括:完整区块的前一区块的哈希值;根据完整区块中的作业数据执行相应的作业。

【技术实现步骤摘要】
区块链中作业数据处理方法、装置、电子设备及存储介质
本专利技术涉及信息处理领域,具体涉及一种区块链中作业数据处理方法、装置、电子设备及存储介质。
技术介绍
区块链中的每个区块通过哈希(hash)算法生成数据指纹并嵌入后续区块中,该指纹充当了后一区块指向前序区块的指针,区块的指纹或指针实际上就是区块的hash值,这种牢固的关系使得入了链的数据是不能被篡改的,并通过共识算法使得全网络中具有多份完全一致的数据,即区块链。区块中的数据主要是多个交易脚本(称为智能合约),这些智能合约被指定了次序,该次序由所在区块和所在区块中的位置所确定,从应用层面讲,区块链应用系统就是依次执行智能合约的系统。当前的区块链是通过交易排序策略来处理冲突。对于联盟链,采用两级交易排序:一级是区块在链中是有先后顺序的;二级是交易在区块中是有序的。交易在区块中的排序通常在构建区块时进行,但构建区块本质上不能并行执行交易排序操作,因为它需要前一个区块头的hash值,同时区块存储时需要投票表决,因此基于上述原因,区块链应用的效率较低,这使得一些应用的本身特征不能很好地在区块链的基础设施中体现,也使得应用本身的技术积累得不到很好的利用和发挥,从而影响了应用系统的性能与效率。同时,区块链防篡改的特性又是银行业务所急需的。银行系统的核心功能,是处理账户间资产转移的交易。在真正进行资产转移前,系统往往经过多个审核子程序对交易的相关信息执行准入判断,只有通过准入控制的情况下,目标交易才会被最终执行。由此可知,区块链系统的执行效率较低,如果把上述交易过程中的准入判断也放在核心交易的共识算法中执行,则效率将更低。另外,一些不满足交易准入条件的交易记录也会进入核心处理模块,这更加大了核心处理模块的负担,也降低了交易的命中率。
技术实现思路
有鉴于此,本专利技术提供一种区块链中作业数据处理方法、装置、电子设备及存储介质,以解决上述提及的至少一个问题。根据本专利技术的第一方面,提供一种区块链中的作业数据处理方法,所述方法包括:接收来自不同用户的多个并行作业数据,对所述多个并行作业数据分别进行验证,每个作业数据包括智能合约;响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈希值的已验证作业数据发送至同一打包节点;根据同一打包节点的已验证作业数据生成部分区块,对所述部分区块进行验证,所述部分区块包括:区块体和部分区块头,所述区块体记录所述同一打包节点的已验证作业数据,所述部分区块头记录所述区块体中的已验证作业数据的哈希值;响应于验证成功,根据区块数据结构将验证成功的部分区块生成完整区块,所述完整区块包括:所述区块体、所述部分区块头、以及另一部分区块头,所述另一部分区块头包括:所述完整区块的前一区块的哈希值;根据所述完整区块中的作业数据执行相应的作业。根据本专利技术的第二方面,提供一种区块链中的作业数据处理装置,所述装置包括:作业数据接收单元,用于接收来自不同用户的多个并行作业数据,每个作业数据包括智能合约;作业数据验证单元,用于对所述多个并行作业数据分别进行验证;作业数据发送单元,用于响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈希值的已验证作业数据发送至同一打包节点;部分区块生成单元,用于根据同一打包节点的已验证作业数据生成部分区块,所述部分区块包括:区块体和部分区块头,所述区块体记录所述同一打包节点的已验证作业数据,所述部分区块头记录所述区块体中的已验证作业数据的哈希值;部分区块验证单元,用于对所述部分区块进行验证;完整区块生成单元,用于响应于验证成功,根据区块数据结构将验证成功的部分区块生成完整区块,所述完整区块包括:所述区块体、所述部分区块头、以及另一部分区块头,所述另一部分区块头包括:所述完整区块的前一区块的哈希值;作业执行单元,用于根据所述完整区块中的各作业数据的智能合约执行相应的作业。根据本专利技术的第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述区块链中的作业数据处理方法的步骤。根据本专利技术的第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述区块链中的作业数据处理方法的步骤。由上述技术方案可知,通过将接收到的验证成功的并行作业数据进行哈希运算,根据具有相同哈希值的作业数据提前生成部分区块,并在对部分区块进一步验证成功时,生成完整区块,并执行相应作业,通过提前生成部分区块,可以解决目前区块链在构建区块时效率较低的问题,从而可以提高区块链系统的执行性能和效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的区块链中的作业数据处理方法的流程图;图2是根据本专利技术实施例的作业数据结构示意图;图3是根据本专利技术实施例的区块链中的作业数据处理装置的结构框图;图4是根据本专利技术实施例的部分区块生成单元34的结构框图;图5是根据本专利技术实施例的区块链中的作业数据处理装置的详细结构框图;图6是根据本专利技术实施例的基于区块链的银行核心系统的示例图;图7是根据本专利技术实施例的前置预处理装置的网络逻辑示意图;图8是根据本专利技术实施例的交易提交子网络11的结构示例图;图9是根据本专利技术实施例的集散地12的结构示例图;图10是根据本专利技术实施例的准入控制层的审核子网结构示意图;图11是根据本专利技术实施例的区块链的结构示意图;图12是根据本专利技术实施例的区块结构示意图;图13是根据本专利技术实施例的区块链中世纪块的示意图;图14是根据本专利技术实施例的账户状态快照梅克尔树示意图;图15是根据本专利技术实施例的交易在区块链中的排列示意图;图16是根据本专利技术实施例的备份与恢复装置结构示意图;图17是根据本专利技术实施例的电子设备的示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种区块链中的作业数据处理方法,图1是该方法的流程图,如图1所示,该方法包括:步骤101,接收来自不同用户的多个并行作业数据,对所述多个并行作业数据分别进行验证,每个作业数据包括智能合约;步骤102,响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈希值的已验证作业数据发送至同一打包节点;步骤103,根据同一打包节点的已验证作业数据生成部分区块,对所述部分区块进行验证,所述部分区块包括:区块体和部分区块头,所述区块体记录所述同一打包节点的已验证作业数据,所述部分区块头记录所述区块体中的已验证作业数据的哈希值;步骤104,响应于验证成功,根据区块数据结构将验证成功的部分区块生成完整区块,所述完整区块包括:所述区块体、所述部分区块头、以及另一部分区块头,所述另一本文档来自技高网
...

【技术保护点】
1.一种区块链中的作业数据处理方法,其特征在于,所述方法包括:接收来自不同用户的多个并行作业数据,对所述多个并行作业数据分别进行验证,每个作业数据包括智能合约;响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈希值的已验证作业数据发送至同一打包节点;根据同一打包节点的已验证作业数据生成部分区块,对所述部分区块进行验证,所述部分区块包括:区块体和部分区块头,所述区块体记录所述同一打包节点的已验证作业数据,所述部分区块头记录所述区块体中的已验证作业数据的哈希值;响应于验证成功,根据区块数据结构将验证成功的部分区块生成完整区块,所述完整区块包括:所述区块体、所述部分区块头、以及另一部分区块头,所述另一部分区块头包括:所述完整区块的前一区块的哈希值;根据所述完整区块中的作业数据执行相应的作业。

【技术特征摘要】
1.一种区块链中的作业数据处理方法,其特征在于,所述方法包括:接收来自不同用户的多个并行作业数据,对所述多个并行作业数据分别进行验证,每个作业数据包括智能合约;响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈希值的已验证作业数据发送至同一打包节点;根据同一打包节点的已验证作业数据生成部分区块,对所述部分区块进行验证,所述部分区块包括:区块体和部分区块头,所述区块体记录所述同一打包节点的已验证作业数据,所述部分区块头记录所述区块体中的已验证作业数据的哈希值;响应于验证成功,根据区块数据结构将验证成功的部分区块生成完整区块,所述完整区块包括:所述区块体、所述部分区块头、以及另一部分区块头,所述另一部分区块头包括:所述完整区块的前一区块的哈希值;根据所述完整区块中的作业数据执行相应的作业。2.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,对所述多个并行作业数据分别进行验证包括:对每个作业数据中的智能合约进行模拟测试;响应于模拟测试结果为成功,则该作业数据中的智能合约成立。3.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,对已验证作业数据进行哈希运算生成哈希值之前,所述方法还包括:将验证成功的多个已验证作业数据进行排队操作。4.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,根据同一打包节点的已验证作业数据生成部分区块包括:以梅克尔树结构对所述同一打包节点的已验证作业数据进行哈希运算;根据哈希运算结果设置所述部分区块头。5.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,所述方法还包括:将区块链中的预定位置的区块设置为世纪区块Cn,世纪区块C1与所述区块链的第一个区块C0之间间隔为X个区块,两个世纪区块之间间隔为X个区块,n为大于等于1的正整数,X为大于1的正整数。6.根据权利要求5所述的区块链中的作业数据处理方法,其特征在于,当所述完整区块为世纪区块Cn时,所述方法还包括:根据区块C0与Cn-1之间的区块执行的作业生成作业状态快照;所述世纪区块Cn的另一部分区块头还包括用于指向所述作业状态快照的指针。7.根据权利要求6所述的区块链中的作业数据处理方法,其特征在于,根据区块C0与Cn-1之间的区块执行的作业生成作业状态快照包括:根据区块C0与Cn-1之间的区块执行的作业以梅克尔树结构生成作业状态快照。8.根据权利要求7所述的区块链中的作业数据处理方法,其特征在于,所述方法还包括:根据所述作业状态快照对作业数据、及相应的作业进行备份、恢复操作。9.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,所述方法还包括:根据已验证作业数据、及其哈希值建立数据库,其中,该已验证作业数据在预定时间之后被丢弃。10.根据权利要求1所述的区块链中的作业数据处理方法,其特征在于,对所述部分区块进行验证包括:对所述部分区块中的已验证作业数据对应的用户身份和对应的作业可执行性进行验证。11.一种区块链中的作业数据处理装置,其特征在于,所述装置包括:作业数据接收单元,用于接收来自不同用户的多个并行作业数据,每个作业数据包括智能合约;作业数据验证单元,用于对所述多个并行作业数据分别进行验证;作业数据发送单元,用于响应于验证成功,对已验证作业数据进行哈希运算生成哈希值,将具有相同哈...

【专利技术属性】
技术研发人员:漆英王卓成戴丹蓝振杰
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京,11

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

1