一种基于区块链快速锚定交易信息的方法与流程

allin2023-03-20  52



1.本发明涉及区块链技术领域,尤其涉及一种基于区块链快速锚定交易信息的方法。


背景技术:

2.区块链技术是一种分布式账本技术,所谓分布式账本技术指区块链存储数据的形式为一个又一个区块,数据保存在区块中,区块与区块之间通过哈希链相连,每个区块又有一个记账者进行记账,形成了所有记账者共同掌握一个相同的账本;在有作弊者想要更改账本中的信息时,就需要取得区块链中大部分记账者的同意,是十分困难的,使得保存到区块链中的数据十分安全。
3.因区块链是有一个区块一个区块组合而成,所以在访问区块链交易信息的时候,区块链需要对每个区块的交易信息均进行查询,造成了大量的时间损失,因此寻找一种新的方案来增加区块链信息访问的速度,是区块链技术急需解决的问题。


技术实现要素:

4.为克服以上技术中存在的问题,本发明提供一种基于区块链快速锚定交易信息的方法,该方法包括:
5.首先,每个新区块写入交易信息时,在该区块中增加一笔交易信息,增加的交易信息为保存到该区块的所有用户身份信息;该区块中增加一笔交易信息的方法为:将区块链交易池中的交易信息写入新形成的区块时,提取交易池中所有交易信息的用户身份信息,将所有用户身份信息组成一个新的交易信息和交易池中的交易信息一起写入区块链新形成的区块;交易池为区块链形成新区块前,合法交易信息暂存在区块链系统的一个存储区域;
6.在需要获取用户交易信息时,提取所有区块的用户身份信息和对应的区块时间戳,根据用户身份信息和对应的区块时间戳,形成身份信息对应的时间戳表;
7.通过身份信息对应的时间戳表,锚定该身份信息对应的区块,并从区块中获取用户的交易信息。
8.进一步地,将交易信息分为普通交易信息和身份信息组成的交易信息,普通交易信息为用户发送的合法的交易信息,身份信息组成的交易信息为所述合法的交易信息对应的各用户的身份信息组成的交易信息。
9.进一步地,写入区块链新区块的交易信息为普通交易信息和身份信息组成的交易信息的哈希值,哈希值在区块链新区块中以默克尔树空间结构的形式进行保存。
10.进一步地,需要获取某个用户的交易信息时,首先向区块链系统发送获取该用户交易信息的请求;区块链系统接收到获取该用户交易信息的请求时,将提取区块链所有区块中的身份信息组成的交易信息和区块的时间戳,根据每个用户的身份信息和区块的时间戳形成所述每个用户的身份信息对应的时间戳表,所述时间戳表明确指出每个用户的身份
信息对应的区块时间戳,区块时间戳对应区块链的每个区块,即形成用户的身份信息和区块的对应关系,用户的交易信息保存到区块链中的对应区块位置。
11.进一步地,根据用户身份信息和对应的区块时间戳形成的时间戳表,锚定所述时间戳表对应的所有区块,提取区块中的该用户的交易信息,即能获取区块链上该用户的全部交易信息。
12.进一步地,根据用户身份信息和对应的区块时间戳形成的时间戳表获得所有用户身份信息和区块的对应关系,即获得所有用户交易信息和区块的对应关系,根据获得的所有用户交易信息和区块的对应关系,能够获取用户保存到区块链中的所有交易信息。
13.进一步地,从区块中获取用户的交易信息包括:获取用户个人交易信息和获取大量用户的交易信息;其中,所述获取用户个人交易信息的方法为:根据用户身份信息和对应的区块时间戳形成的时间戳表,单独查询时间戳表中用户个人身份信息对应的时间戳表,确定用户个人身份信息所对应的区块,锚定用户个人身份信息所对应的区块,根据用户个人身份信息锚定区块中用户个人身份信息所对应的交易,提取所有区块中所述用户个人身份信息所对应的交易,从而获取区块链中所述用户个人交易信息。
14.进一步地,获取大量用户的交易信息的方法为:根据用户身份信息和对应的区块时间戳形成的时间戳表,确定向区块链发送获取用户交易信息请求的大量用户身份信息,根据用户的身份信息,从所述用户身份信息和对应的区块时间戳形成的时间戳表中提取所述大量用户身份信息对应的时间戳表,通过提取的大量用户身份信息对应的时间戳表锚定用户身份信息所对应的区块,提取区块中的用户交易信息,从而获取大量用户的交易信息。
15.本发明的有益效果
16.本发明通过在区块链的每个区块中增加一笔交易信息,该交易信息为区块对应的身份信息;在访问用户信息时,只需访问区块中的身份信息组成的那个交易信息和该区块对应的时间戳,形成每个用户的身份信息对应的时间戳表,建立用户的身份信息和区块时间戳的对应关系,直接锚定用户身份信息对应的区块,获得区块中用户的交易信息,通过该方法使得信息溯源和信息的访问更加快速、准确。
附图说明
17.图1:一种基于区块链快速锚定交易信息的方法的流程图。
18.图2:区块链各区块中默克尔树结构图。
具体实施方式
19.以下结合附图对本发明的具体实施例进行详细说明,应该理解的是此处所给出的具体实施例仅用于说明和解释本发明,并不能用来限制本发明。
20.如图1所示:为本发明的一种基于区块链快速锚定交易信息的方法的流程图;该流程图包括如下步骤:步骤s100,每个新区块写入交易信息时,在该区块中增加一笔交易信息,增加的交易信息为保存到该区块的所有用户身份信息;步骤s101,在需要获取用户交易信息时,提取所有区块的用户身份信息和对应的区块时间戳,根据用户身份信息和对应的区块时间戳,形成身份信息对应的时间戳表;步骤s102,通过身份信息对应的时间戳表,锚定该身份信息对应的区块,并从区块中获取用户的交易信息。
21.具体地,该方法通过在区块链原有保存交易信息的基础上,在区块链的每个区块中增加一笔交易信息,该交易信息为区块保存的交易信息对应的用户身份信息;提取区块即将保存的交易信息对应的用户身份信息和交易信息一起保存到新形成的区块;在访问用户信息时,只需提取区块中的身份信息组成的那个交易信息的交易哈希和该区块对应的时间戳,将提取的所有用户身份以及它们对应的区块时间戳进行整合,建立用户身份信息对应的时间戳表,每个时间戳表上包含用户身份信息对应的区块;根据用户的身份信息和区块时间戳的对应关系,直接锚定用户身份信息对应的所有区块,进而获取区块中对应的用户交易信息。
22.在上述实施例中,步骤s100,每个新区块写入交易信息时,在该区块中增加一笔交易信息,增加的交易信息为保存到该区块的所有用户身份信息;具体地,在该区块中增加一笔交易信息的方法为:将区块链交易池中的交易信息写入新形成的区块时,提取交易池中所有交易信息的用户身份信息,将所有用户身份信息组成一个新的交易信息和交易池中的交易信息一起写入区块链新形成的区块;交易池为区块链形成新区块前,合法交易信息暂存在区块链系统的一个存储区域。
23.具体地,通过上述实施例保存交易信息的方式,使得写入区块链中的交易信息分为:普通交易信息和身份信息组成的交易信息,普通交易信息为用户发送的合法的交易信息,身份信息组成的交易信息为提取合法的交易信息中各用户的身份信息,并将所有用户的身份信息组成一个新的交易信息。
24.具体地,写入区块链新区块的交易信息为用户发送的合法交易信息和用户身份信息组成的交易信息的哈希值,所述哈希值在区块链新区块中以形成默克尔树空间结构的形式保存在区块链的各个区块中。
25.优选地,提取交易池中交易信息的用户身份信息,将全部用户身份信息作为一个交易信息写入交易池中;然后将交易池中的所有交易信息一起写入到区块链的区块中,其中,身份信息组成的交易信息写入区块链区块的默克尔树最底层树枝的最左端位置,其他交易信息随意排列;默克尔树为区块链中的区块保存交易信息的数据结构,默克尔树的基础结构为:将交易池中的各交易信息求取哈希值,作为默克尔树的最底层树枝结构,将最底层树枝哈希值两两结合生成新的哈希值作为默克尔树第二层数据结构,将该层结构中的哈希值,再进行两两结合形成默克尔树的第三层数据结构;通过该种方法,将哈希值不断两两结合,不断迭代,直到最后仅剩下一个哈希值,将该哈希值作为默克尔树的树根值,即默克尔根值。
26.优选地,如图2所示:为本发明中区块链各区块中默克尔树结构图;该图中h1、h2、h3和h4组成默克尔树的最底层树枝结构,其中h1为用户身份信息组成的交易信息对应的哈希值,h2、h3和h4为普通的交易信息对应的哈希值;将h1和h2进行组合为h1,将h3和h4进行组合为h2;h1和h2组成默克尔树结构的第二层结构;接着将h1和h2结合为hk最终形成默克尔树的树根值,即默克尔根值;通过该方法将身份信息组成的交易信息和普通交易信息一起写入区块链的一个区块。
27.在上述实施例中,步骤s101,在需要获取用户交易信息时,提取所有区块的用户身份信息和对应的区块时间戳,根据用户身份信息和对应的区块时间戳,形成身份信息对应的时间戳表;具体地,获取用户交易信息的方法为:需要获取某个用户的交易信息时,首先
向区块链系统发送获取该用户交易信息的请求;区块链系统接收到获取用户交易信息的请求时,将提取区块链所有区块中的用户身份信息组成的那个交易信息和区块的时间戳;按照时间戳的先后顺序,根据每个用户的身份信息和时间戳的对应关系,形成身份信息对应的时间戳表,获得每个用户身份信息对应的时间戳表;该时间戳表明确指出每个用户的身份信息对应的区块时间戳,区块时间戳对应区块链的每个区块,即形成用户身份信息和区块链区块的对应关系,形成用户交易信息和区块链区块的对应关系。
28.优选地,如图2中,当需要获取用户的交易信息时,提取如图2中每个区块保存的交易信息h1和每个区块的区块时间戳,获取每个区块中保存的交易信息对应的全部身份信息,形成用户身份信息和区块时间戳的对应关系;然后根据每个用户的身份信息,以及该身份信息和区块时间戳的对应关系,形成每个用户的身份信息对应的时间戳表。
29.优选地,以用户a、b和c为例,对上述实施例形成时间戳表的过程进行阐述;通过提取如图2中每个区块保存的交易信息h1和每个区块的区块时间戳,检索发现,用户a的身份信息对应的时间戳分别是t1、t2和t3,则形成用户a的身份信息对应的时间戳表为:a的身份信息t1t2t3,即若a的身份信息为7865xy,则形成用户a的身份信息对应的时间戳为:7865xyt1t2t3;用户b的身份信息对应的时间戳分别是t1、t4和t5,则形成用户b的身份信息对应的时间戳表为:b的身份信息t1t4t5;同样的道理,可以得出用户c的身份信息对应的时间戳表。
30.在上述实施例中,步骤s102,通过身份信息对应的时间戳表,锚定该身份信息对应的区块,并从区块中获取用户的交易信息;具体地,获取用户的交易信息分为:获取用户个人交易信息和获取大量用户的交易信息。
31.具体地,获取用户个人交易信息的方法为:根据用户身份信息和对应的区块时间戳形成的时间戳表,单独查询时间戳表中该用户个人身份信息对应的时间戳表,确定该用户个人身份信息所对应的区块,锚定用户个人身份信息所对应的区块,根据用户个人身份信息锚定区块中用户个人身份信息所对应的交易,提取所有区块中该用户个人身份信息所对应的交易,从而获取区块链中该用户个人交易信息。
32.具体地,获取大量用户的交易信息指区块链系统将某段时间内用户访问的交易信息请求整合到一起;区块链系统提取出区块中的全部身份信息,并根据各个用户的身份信息所在的区块时间戳,组成各个用户的身份信息对应的时间戳表,最后根据所需访问的用户信息,从中挑选出所有用户信息对应的时间戳表,根据所有用户信息所对应的时间戳表,锚定区块链中的区块,进而锚定区块中用户的信息,获得大量用户的交易信息。
33.优选地,根据获取的用户身份信息和区块时间戳组成的时间戳表获取用户个人用户交易信息的方法为:根据用户身份信息和区块时间戳组成的时间戳表锚定该时间戳表对应的所有区块,提取对应的区块中的该用户的交易信息,即能获取区块链上所有该用户的交易信息。
34.优选地,根据获取的用户身份信息和区块时间戳组成的时间戳表获取大量用户的交易信息的方法为:根据用户身份信息和区块时间戳组成的时间戳表的方法获得所有用户的身份信息和区块链时间戳组成的时间戳表,获得每个用户的身份信息和区块的对应关系,从而获得所有用户交易信息和区块的对应关系;通过所有用户交易信息和区块的对应关系,能够获取大量用户保存到区块链中的交易信息。
35.优选地,获取用户个人交易信息的方法为:根据该用户的身份信息和该用户身份信息所在的区块时间戳,形成的时间戳表,确定用户身份信息所在的区块,锚定用户身份信息所在的区块,根据用户身份信息锚定区块中身份信息所对应的交易,提取所有区块中该用户的交易信息,即获取区块链中该用户的全部交易信息。
36.优选地,获取大量用户的交易信息的方法为:根据获取的区块链中所有用户的身份信息和身份信息所在的区块时间戳,确定需要获取交易信息的用户的身份信息,根据需要获取交易信息的用户的身份信息,获取用户身份信息和时间戳对应的时间戳表,通过时间戳表锚定用户身份信息所对应的区块,提取其中的用户交易信息,从而获取大量用户的交易信息。
37.需要理解,上述实施例为本发明的个别或几个实施例,而不是全部实施例,从事本发明的普通技术人员,在没有创造性劳动的前提下,对本发明的篡改、同等变换均属于本发明的保护范围。

技术特征:
1.一种基于区块链快速锚定交易信息的方法,其特征在于,所述方法包括如下步骤:首先,每个新区块写入交易信息时,在所述新区块中增加一笔交易信息,所述增加一笔交易信息为保存到所述新区块的全部交易信息对应的用户身份信息;所述在所述新区块中增加一笔交易信息的方法为:将区块链交易池中的交易信息写入新形成的区块时,提取交易池中所有交易信息对应的用户身份信息,将提取的所有用户身份信息组成一个新的交易信息和交易池中的交易信息一起写入区块链新形成的区块;所述交易池为区块链形成新区块前,合法交易信息暂存在区块链系统中的一个存储区域;在需要获取用户交易信息时,提取所有区块的用户身份信息和对应的区块时间戳,根据用户身份信息和对应的区块时间戳,形成身份信息对应的时间戳表;通过身份信息对应的时间戳表,锚定所述身份信息对应的区块,并从区块中获取用户的交易信息。2.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述每个新区块写入交易信息时包括:将交易信息分为普通交易信息和身份信息组成的交易信息,所述普通交易信息为用户发送的合法的交易信息,所述身份信息组成的交易信息为所述合法的交易信息对应的各用户的身份信息组成的交易信息。3.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述每个新区块写入交易信息时还包括:写入区块链新区块的交易信息分为普通交易信息和身份信息组成的交易信息的哈希值,所述哈希值在区块链新区块中以默克尔树空间结构的形式进行保存。4.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述获取用户交易信息包括:需要获取某个用户的交易信息时,首先向区块链系统发送获取所述用户交易信息的请求;区块链系统接收到获取所述用户交易信息的请求时,将提取区块链所有区块中的身份信息组成的交易信息和区块的时间戳,根据每个用户的身份信息和区块的时间戳形成所述每个用户的身份信息对应的时间戳表,所述时间戳表明确指出每个用户的身份信息对应的区块时间戳,区块时间戳对应区块链的每个区块,即形成用户的身份信息和区块的对应关系,用户的交易信息保存到区块链中的对应区块位置。5.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述获取用户交易信息还包括:根据用户身份信息和对应的区块时间戳形成的时间戳表,锚定所述时间戳表对应的所有区块,提取区块中的所述用户的交易信息,即能获取区块链上所述用户的全部交易信息。6.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述获取用户交易信息还包括:根据用户身份信息和对应的区块时间戳形成的时间戳表获得所有用户身份信息和区块的对应关系,即获得所有用户交易信息和区块的对应关系,根据获得的所有用户交易信息和区块的对应关系,能够获取用户保存到区块链中的所有交易信息。7.根据权利要求1所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述通过身份信息对应的时间戳表,锚定所述身份信息对应的区块,并从区块中获取用户的交易信息包括:获取用户个人交易信息和获取大量用户的交易信息;其中,所述获取用户个人交易信息的方法为:根据用户身份信息和对应的区块时间戳形成的时间戳表,单独查询时
间戳表中用户个人身份信息对应的时间戳表,确定用户个人身份信息所对应的区块,锚定用户个人身份信息所对应的区块,根据用户个人身份信息锚定区块中用户个人身份信息所对应的交易,提取所有区块中所述用户个人身份信息所对应的交易,从而获取区块链中所述用户个人交易信息。8.根据权利要求7所述的一种基于区块链快速锚定交易信息的方法,其特征在于,所述获取大量用户的交易信息的方法为:根据用户身份信息和对应的区块时间戳形成的时间戳表,确定向区块链发送获取用户交易信息请求的大量用户身份信息,根据用户的身份信息,从所述用户身份信息和对应的区块时间戳形成的时间戳表中提取所述大量用户身份信息对应的时间戳表,通过提取的所述大量用户身份信息对应的时间戳表锚定用户身份信息所对应的区块,提取区块中的用户交易信息,从而获取大量用户的交易信息。

技术总结
本发明公开了一种基于区块链快速锚定交易信息的方法,包括如下步骤:首先,每个新区块写入交易信息时,在该区块中增加一笔交易信息,该交易信息为保存到该区块的所有用户身份信息;在需要获取用户交易信息时,提取所有区块的用户身份信息和对应的区块时间戳,根据用户身份信息和所有区块时间戳,形成身份信息对应的时间戳表;通过身份信息对应的时间戳表,锚定该身份信息对应的区块,并从区块中获取用户的交易信息;本发明通过在区块链的每个区块中增加一笔交易信息,该交易信息为区块对应的身份信息,在访问用户信息时,建立用户的身份信息和区块时间戳的对应关系,直接锚定用户身份信息对应的区块,通过该方法使得信息溯源更加快速、准确。准确。准确。


技术研发人员:陈粦玉
受保护的技术使用者:广州融慧信息科技有限公司
技术研发日:2022.03.29
技术公布日:2022/7/5
转载请注明原文地址: https://www.8miu.com/read-6812.html

最新回复(0)