区块链中的区块存储方法及装置制造方法及图纸

技术编号:14822639 阅读:78 留言:0更新日期:2017-03-15 20:50
本发明专利技术公开了一种区块链中的区块存储方法及装置,其中,区块链中的区块存储方法由矿工节点执行,该方法包括:将内存池中的交易信息打包成区块;将区块中的第一区块头信息广播至区块链网络;其中,第一区块头信息包括:区块交易编号哈希值;根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表;根据区块中的交易编号信息和交易内容信息,生成与第一区块头信息对应的第二哈希表;将与第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。利用本发明专利技术提供的技术方案,有效地减轻了网络传输的压力和单个节点的存储压力。

【技术实现步骤摘要】

本专利技术涉及互联网
,具体涉及一种区块链中的区块存储方法及装置
技术介绍
在现有的区块链网络中主要有两类节点需要保存完整的区块链信息,这两类节点分别是完整节点和矿工节点。这两类节点的每个节点都需要维护一个区块链的本地副本,其中包含了自2009年比特币系统以来的全部区块。随着比特币交易数量的不断增多,区块链越来越长,区块链要求的存储空间也随之逐渐增加,由此可知,完整节点和矿工节点的存储要求也在逐渐增加。具体地,完整节点和矿工节点需要和区块链网络中的区块链进行同步,下载区块链中的完整区块,从而使完整节点和矿工节点能够维护一个区块链的本地副本。同时,随着比特币交易数量的不断增多,单位时间需要处理的交易的数量增多,单个区块所包含的交易数量也需要增加,导致单个区块大小增加,从而增加了网络传输的压力。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的区块链中的区块存储方法及装置。根据本专利技术的一个方面,提供了一种区块链中的区块存储方法,该方法由矿工节点执行,该方法包括:将内存池中的交易信息打包成区块;将区块中的第一区块头信息广播至区块链网络;其中,第一区块头信息包括:区块交易编号哈希值;根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表;根据区块中的交易编号信息和交易内容信息,生成与第一区块头信息对应的第二哈希表;将与第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。根据本专利技术的另一方面,提供了一种区块链中的区块存储装置,该装置设置于矿工节点中,该装置包括:打包模块,用于将内存池中的交易信息打包成区块;广播模块,用于将区块中的第一区块头信息广播至区块链网络;其中,第一区块头信息包括:区块交易编号哈希值;第一生成模块,用于根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表;第二生成模块,用于根据区块中的交易编号信息和交易内容信息,生成与第一区块头信息对应的第二哈希表;上传模块,用于将与第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。根据本专利技术提供的技术方案,将内存池中的交易信息打包成区块,接着将区块中的第一区块头信息广播至区块链网络,该第一区块头信息包括:区块交易编号哈希值,然后根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表,根据区块中的交易编号信息和交易内容信息,生成与第一区块头信息对应的第二哈希表,最后将与第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。根据本专利技术提供的技术方案,在区块完成打包后,仅将区块的区块头信息广播至了区块链网络,并没有将整个区块的内容进行广播,从而减少了广播的内容,有效地减轻了网络传输的压力;并且利用分布式存储网络保存区块信息,有效地减轻了单个节点的存储压力。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术提供的区块链中的区块存储方法实施例一的流程示意图;图2示出了本专利技术提供的区块链中的区块存储方法实施例二的信令流程图;图3示出了本专利技术提供的区块链中的区块存储装置实施例一的功能结构示意图;图4示出了本专利技术提供的区块链中的区块存储装置实施例二的功能结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了本专利技术提供的区块链中的区块存储方法实施例一的流程示意图,该方法由矿工节点执行,如图1所示,该方法包括如下步骤:步骤S100,将内存池中的交易信息打包成区块。具体地,矿工节点在接收到新的交易信息之后,会对该交易信息进行验证,验证该交易信息的合法性,验证通过则将其放到内存池当中。当收集到一定数量的交易信息后,矿工节点将内存池中的交易信息打包成区块,打包完成的区块包括第一区块头信息、交易编号信息(TXID)和交易内容信息。步骤S101,将区块中的第一区块头信息广播至区块链网络。在将内存池中的交易信息打包成区块之后,将该区块中的第一区块头信息广播至区块链网络,以便区块链网络中的其他矿工节点或完整节点获知第一区块头信息。其中,第一区块头信息包括:版本信息、父区块哈希值、根节点值、时间戳信息、难度目标信息、区块交易编号哈希值和交易计数器等信息。具体地,版本信息为版本号,用于表示软件或协议的更新情况;父区块哈希值为引用区块链中父区块的哈希值;根节点值为该区块中交易信息对应的梅克尔树结构的根节点的哈希值;时间戳信息记载了该区块产生的时间;难度目标信息记载了该区块工作量证明算法的难度目标;区块交易编号哈希值是对该区块中的所有的交易编号信息按预设顺序排列的排列结果进行哈希计算得到的,具体地,本领域技术人员可根据实际需要设置预设顺序,此处不做限定,例如,预设顺序可为交易产生的时间先后顺序;交易计数器用于计算该区块中所包含的交易的数量。步骤S102,根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表。具体地,可根据区块中的第一区块头信息中的区块交易编号哈希值和该区块中的所有的交易编号信息按预设顺序排列的排列结果,生成与第一区块头信息对应的第一哈希表。步骤S103,根据区块中的交易编号信息和交易内容信息,生成与第一区块头信息对应的第二哈希表。具体地,在步骤S103中,可根据区块中的交易编号信息和与交易编号信息对应的交易内容信息,生成与第一区块头信息对应的第二哈希表。步骤S104,将与第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。在生成了与第一区块头信息对应的第一哈希表和第二哈希表之后,在步骤S104中,将这两个哈希表上传至分布式存储网络,从而将区块信息上传至了分布式存储网络。具体地,分布式存储网络可以为DHT(分布式哈希表,DistributedHashTable)网络。可选地,在生成了与第一区块头信息对应的第一哈希表之后,就可将该第一哈希表上传至分布式存储网络;在生成了与第一区块头信息对应的第二哈希表之后,就可将该第二哈希表上传至分布式存储网络。本专利技术并不对步骤S101的具体执行顺序进行限定,例如,步骤S101可以与步骤S102同时执行,也可以先执行步骤S102,再执行步骤S101。根据本专利技术实施例提供的区块链中的区块存储方法,将内存池中的交易信息打包成区块,接着将区块中的第一区块头信息广播至区块链网络,其中,该第一区块头信息包括:区块交易编号哈希值,然后根据区块中的第一区块头信息和交易编号信息,生成与第一区块头信息对应的第一哈希表,根据区块中的交易编号信息和交易内容信息,本文档来自技高网...
区块链中的区块存储方法及装置

【技术保护点】
一种区块链中的区块存储方法,所述方法由矿工节点执行,其特征在于,包括:将内存池中的交易信息打包成区块;将所述区块中的第一区块头信息广播至区块链网络;其中,所述第一区块头信息包括:区块交易编号哈希值;根据所述区块中的第一区块头信息和交易编号信息,生成与所述第一区块头信息对应的第一哈希表;根据所述区块中的交易编号信息和交易内容信息,生成与所述第一区块头信息对应的第二哈希表;将与所述第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。

【技术特征摘要】
1.一种区块链中的区块存储方法,所述方法由矿工节点执行,其特征在于,包括:将内存池中的交易信息打包成区块;将所述区块中的第一区块头信息广播至区块链网络;其中,所述第一区块头信息包括:区块交易编号哈希值;根据所述区块中的第一区块头信息和交易编号信息,生成与所述第一区块头信息对应的第一哈希表;根据所述区块中的交易编号信息和交易内容信息,生成与所述第一区块头信息对应的第二哈希表;将与所述第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络。2.根据权利要求1所述的区块链中的区块存储方法,其特征在于,所述根据所述区块中的第一区块头信息和交易编号信息,生成与所述第一区块头信息对应的第一哈希表进一步包括:将所述第一区块头信息中的区块交易编号哈希值作为数据键,将所述区块中的所有的交易编号信息按预设顺序排列的排列结果作为数据键对应的数据值,生成与所述第一区块头信息对应的第一哈希表。3.根据权利要求2所述的区块链中的区块存储方法,其特征在于,所述根据所述区块中的交易编号信息和交易内容信息,生成与所述第一区块头信息对应的第二哈希表进一步包括:将所述区块中的交易编号信息作为数据键,将与所述交易编号信息对应的交易内容信息作为数据键对应的数据值,生成与所述第一区块头信息对应的第二哈希表。4.根据权利要求1所述的区块链中的区块存储方法,其特征在于,在所述将与所述第一区块头信息对应的第一哈希表和第二哈希表上传至分布式存储网络之后,所述方法还包括:从所述区块链网络获取第二区块头信息;根据所获取的第二区块头信息中的区块交易编号哈希值,从所述分布式存储网络下载与所述第二区块头信息对应的第一哈希表;根据与所述第二区块头信息对应的第一哈希表,从所述分布式存储网络下载与所述第二区块头信息对应的第二哈希表;利用所述第二区块头信息和与所述第二区块头信息对应的第一哈希表...

【专利技术属性】
技术研发人员:汪德嘉郭宇王少凡
申请(专利权)人:江苏通付盾科技有限公司
类型:发明
国别省市:江苏;32

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

1