一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于区块链网络的共识方法、存储节点和矿工节点与流程

2022-11-16 06:37:52 来源:中国专利 TAG:


1.本发明涉及通信技术领域,具体涉及一种基于区块链网络的共识方法、存储节点和矿工节点。


背景技术:

2.在一些共识机制设计中,只有保存区块链中某一区块记录的哈希值对应内容的矿工节点才有资格取得记账权。但是如果涉及的数据量巨大,一个矿工节点将无法存储所有的区块关联的内容,在该情况下,如果恰好记账所要求的区块关联内容不在矿工节点自己的存储中,则该矿工节点只能空闲等待,造成算力空闲。


技术实现要素:

3.为此,本发明提供一种基于区块链网络的共识方法、存储节点和矿工节点,以避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。
4.为了实现上述目的,本发明第一方面提供一种基于区块链网络的共识方法,应用于存储节点,该方法包括:
5.获取至少一个参与节点在区块链网络中广播的第一信息;
6.在所述第一信息验证通过的情况下,存储所述第一信息对应的存储资源;
7.在所述存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与所述目标信息对应的获取方式信息,以供区块链网络中任意节点基于所述获取方式信息获取所述目标信息,以获得争取区块链网络中下一个区块记账权的资格。
8.可选地,所述在所述存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与所述目标信息对应的获取方式信息之前,所述方法还包括:
9.从区块链网络中获取查询请求,所述查询请求包括所述目标区块号。
10.可选地,所述在所述存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与所述目标信息对应的获取方式信息之前,所述方法还包括:
11.基于所述下一个区块对应的备选区块中的全部哈希值,确定第一哈希值;
12.根据所述第一哈希值和所述下一个区块的区块序号,获取所述目标区块号。
13.可选地,所述获取方式信息包括资源消耗补偿信息和资源获取链接;所述方法还包括:
14.响应于任意节点发送的与所述资源消耗补偿信息对应的补偿资源,向该节点发送所述资源获取链接对应的访问授权码,以供该节点基于所述访问授权码和所述资源获取链接获取所述目标信息。
15.可选地,所述方法还包括:
16.获取目标区块号对应的目标哈希值;
17.确定所述存储资源对应的哈希值中是否存在与所述目标哈希值一致的哈希值;
18.在所述存储资源对应的哈希值中存在与所述目标哈希值一致的哈希值的情况下,确定所述存储资源中包括所述目标区块号所对应的目标信息。
19.可选地,所述第一信息包括参与节点针对所述第一信息对应的存储资源计算获得的第二哈希值;所述在所述第一信息验证通过的情况下,将所述第一信息对应的存储资源进行存储之前,还包括:
20.基于所述第一信息获取所述第一信息对应的存储资源;
21.计算所述存储资源的第三哈希值;
22.在所述第二哈希值和所述第三哈希值一致的情况下,确定所述第一信息验证通过。
23.可选地,基于所述第一信息获取所述第一信息对应的存储资源的步骤,包括:
24.从所述第一信息中提取所述存储资源;或者,
25.从所述第一信息中提取所述存储资源对应的提取链接,并基于所述提取链接获取所述存储资源。
26.本发明第二方面提供一种基于区块链网络的共识方法,应用于矿工节点,所述方法包括:
27.基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值;
28.根据所述第一哈希值和所述下一个区块的区块序号,获取目标区块号;
29.在未存储所述目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,所述查询请求包括所述目标区块号;
30.从所述区块链网络中获取与所述查询请求对应的获取方式信息;所述获取方式信息是存储节点在确定存储资源中包括所述目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与所述目标信息的信息;所述存储资源是所述存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在所述第一信息验证通过的情况下,存储的所述第一信息对应的存储资源;
31.基于所述获取方式信息获取所述目标信息,以获得争取区块链网络中下一个区块记账权的资格。
32.本发明第三方面提供一种存储节点,该存储节点包括:
33.第一获取模块,用于获取至少一个参与节点在区块链网络中广播的第一信息;
34.第一存储模块,用于在所述第一信息验证通过的情况下,存储所述第一信息对应的存储资源;
35.第一发送模块,用于在所述存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与所述目标信息对应的获取方式信息,以供区块链网络中任意节点基于所述获取方式信息获取所述目标信息,以获得争取区块链网络中下一个区块记账权的资格。
36.本发明第四方面提供一种矿工节点,该矿工节点包括:
37.处理模块,用于基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值,并根据所述第一哈希值和所述下一个区块的区块序号,获取目标区块号;
38.第二发送模块,用于在未存储所述目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,所述查询请求包括所述目标区块号;
39.第二获取模块,还用于从所述区块链网络中获取与所述查询请求对应的获取方式信息;所述获取方式信息是存储节点在确定存储资源中包括所述目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与所述目标信息的信息;所述存储资源是所述存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在所述第一信息验证通过的情况下,存储的所述第一信息对应的存储资源;
40.第三获取模块,用于基于所述获取方式信息获取所述目标信息,以获得争取区块链网络中下一个区块记账权的资格。
41.本发明具有如下优点:
42.本发明实施例提供一种基于区块链网络的共识方法,获取至少一个参与节点在区块链网络中广播的第一信息;在第一信息验证通过的情况下,存储该第一信息对应的存储资源;在存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与目标信息对应的获取方式信息,以供区块链网络中任意节点基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格,能够激励存储节点积极对存储资源进行存储,避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。
附图说明
43.附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
44.图1为本发明实施例提供的一种基于区块链网络的共识方法的流程图;
45.图2为本发明实施例提供的一种基于区块链网络的共识方法的流程图;
46.图3为本发明实施例提供一种存储节点的结构示意图;
47.图4为本发明实施例提供的一种矿工节点的结构示意图。
具体实施方式
48.以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
49.如本发明所使用的,术语“和/或”包括一个或多个相关列举条目的任何和全部组合。
50.本发明所使用的术语仅用于描述特定实施例,且不意欲限制本发明。如本发明所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。
51.当本发明中使用术语“包括”和/或“由
……
制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。
52.本发明所述实施例可借助本发明的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。
53.除非另外限定,否则本发明所用的全部术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本发明的背景下的含义一致的含义,且将不解释为
具有理想化或过度形式上的含义,除非本发明明确如此限定。
54.区块链网络的“共识”过程即为确定由哪一个矿工节点对下一个区块进行记账的过程,其中,下一个区块指的是下一个可被写入区块链的新区块。在一些共识机制设计中,只有保存区块链中某一区块记录的哈希值对应内容的矿工节点才有资格争取记账权。但是如果涉及的数据量巨大,一个矿工节点将无法存储所有的区块关联的内容,在该情况下,如果恰好记账所要求的区块关联内容不在矿工节点自己的存储中,则该矿工节点将不能争取下一个区块记账权,只能空闲等待,造成算力空闲。
55.为了解决上述难题,本发明实施例提供一种基于区块链网络的共识方法,在区块链网络中引入专门的存储节点,该存储节点用于保存区块链网络中区块关联的内容,并且,该存储节点可以根据自己存储的内容的多少来获得资源,从而激励存储节点存储更多的内容。在该共识机制中,矿工节点记账所要求的区块关联内容不在矿工节点自己的存储中时,矿工节点可以从存储节点中获取需要的内容,避免矿工节点因为没有存储记账所需要的内容而导致矿工节点丧失生成区块链网络中下一个区块的资格,只能空闲等待,造成算力空闲。
56.图1为本发明实施例提供的一种基于区块链网络的共识方法的流程图。该区块链网络中包括参与节点、矿工节点、存储节点等,其中,参与节点是区块链网络中用于广播需要存储的信息的节点,矿工节是用于生成区块的节点,存储节点是用于提供存储、查询等服务的节点。该共识方法应用于区块链网络中的存储节点。如图1所示,该基于区块链网络的共识方法的包括步骤s101-步骤s103。
57.步骤s101、获取至少一个参与节点在区块链网络中广播的第一信息。
58.其中,参与节点是区块链网络中具有存储信息需求的节点。第一信息是用于请求对对应的存储资源进行存储的信息。该第一信息对应的存储资源是广播该第一信息的参与节点需要在区块链网络中存储的信息。
59.在一个实施场景中,在该区块链网络是元宇宙对应的区块链网络的情况下,该区块链网络中的参与节点包括提供元宇宙服务的节点,该第一信息对应的存储资源可以是元宇宙服务信息、元宇宙技术配置信息等信息。
60.在一个实施方式中,参与节点根据需要存储的存储资源生成第一信息,并通过私钥签名的广播消息的方式在区块链网络中广播第一信息。该第一信息包括参与节点计算出的存储资源的第二哈希值。
61.在一些实施例中,为了加快将存储资源存入区块链网络的进程,参与节点广播的第一信息中可以直接包含存储资源,以供存储节点和/或矿工节点直接从第一信息中提取该存储资源。
62.在另一些实施例中,在存储资源的资源量较大的情况下,为了减轻区块链网络的负担,参与节点广播的第一信息中可以包含该存储资源对应的提取链接,以使存储节点和/或矿工节点通过该提取链接获取存储资源。
63.在一个实施方式中,该参与节点在区块链网络中广播第一信息时,需要支付与该第一信息对应的信息处理费用。该信息处理费用用于为存储节点、矿工节点等用于构建区块链网络的节点提供资源补偿,从而推动区块链网络的发展。该信息处理费用的费用值与该第一信息对应的存储资源的资源量成正比,即第一信息对应的存储资源的资源量越大,
该信息处理费用的费用值越大。
64.在一个实施方式中,为了保障处理该第一信息的节点(例如存储节点和/或矿工节点)的安全,存储节点和矿工节点从区块链网络中获取第一信息之后,需要基于参与节点的公钥对该第一信息携带的私钥签名进行验证,在第一信息携带的私钥签名验证通过的情况下,确定该第一信息来源于该参与节点,即该第一信息来源合法。
65.在一个实施方式中,对该第一信息对应的存储资源进行存储时,需要保障该第一信息对应的存储资源是参与节点想要存储的信息,避免参与节点在广播第一信息之后、该第一信息对应的存储资源被存储之前,该存储资源存在被篡改的情况。在该实施方式中,存储节点和/或矿工节点在获取参与节点在区块链网络中广播的第一信息之后,需要对该第一信息进行验证。其中,对该第一信息进行验证的步骤,包括:
66.步骤一、基于第一信息获取第一信息对应的存储资源。
67.其中,第一信息是用于请求对对应的存储资源进行存储的信息。该第一信息对应的存储资源是广播该第一信息的参与节点需要在区块链网络中存储的信息。
68.在一个实施方式中,该第一信息包括对应的存储资源。则基于第一信息获取第一信息对应的存储资源的步骤,包括:从第一信息中提取存储资源。
69.在另一个实施方式中,该第一信息包括存储资源对应的提取链接。则基于第一信息获取第一信息对应的存储资源的步骤,包括:从第一信息中提取存储资源对应的提取链接,并基于提取链接获取该存储资源。
70.其中,存储资源对应的提取链接是用于指示存储资源存放位置的链接。该存储资源可以存储在参与节点的本地内存中,也可以存储在参与节点指定的服务器中,存储节点和/或者矿工节点可以凭借该提取连接从相应的存储空间(例如前述的本地内存或指定的服务器)中获取该存储资源。
71.步骤二、计算存储资源的第三哈希值。
72.其中,第三哈希值是接收第一信息的节点(例如存储节点、矿工节点)根据第一信息对应的存储资源计算获得的哈希值。
73.本实施例中,第一信息中还包括第二哈希值,该第二哈希值是参与节点自身对存储资源计算获得的哈希值。需要说明的是,针对相同存储资源,任何节点基于相同算法计确定的该相同存储资源的哈希值一致。换言之,若第一信息对应的存储资源没有被篡改,则参与节点基于该存储资源计算获得的第二哈希值,与接收第一信息的节点根据该存储资源计算获得的第三哈希值应当一致。因此,在计算存储资源的第三哈希值之后,对比第二哈希值和第三哈希值是否一致。
74.在第二哈希值和第三哈希值不一致的情况下,确定第一信息验证不通过。其中,在第二哈希值和第三哈希值不一致的情况下,说明接收第一信息的节点(例如存储节点、矿工节点)获得的该第一信息对应的存储资源与参与节点想要存储的信息存在差异,存储资源可能存在被篡改的情况,因此,确定第一信息验证不通过。
75.步骤三、在第二哈希值和第三哈希值一致的情况下,确定第一信息验证通过。
76.其中,在第二哈希值和第三哈希值一致的情况下,说明接收第一信息的节点(例如存储节点、矿工节点)获得的该第一信息对应的存储资源就是参与节点想要存储的信息,其不存在被篡改的情况,因此,确定第一信息验证通过。
77.本实施方式中,通过对第一信息进行验证,能够保障存储节点和/或矿工节点获取的存储资源是参与节点想要存储的信息,提高存储资源被存储之前的安全性。
78.步骤s102、在第一信息验证通过的情况下,存储第一信息对应的存储资源。
79.其中,第一信息验证通过,说明第一信息对应的存储资源是参与节点想要存储的信息,存储节点可以存储该第一信息对应的存储资源。
80.需要说明的是,对于存储节点而言,存储节点通过上述步骤s101-步骤s102可以存储至少一个参与节点发送的至少一个第一信息所对应的存储资源。存储节点存储的存储资源越多,获得的信息处理费用就越多,且存储节点向其他节点提供的可查询内容就越多。对于矿工节点而言,矿工节点可以通过与上述步骤s101-步骤s102类似的步骤存储该存储资源。但是一个矿工节点可能无法存储全部参与节点发送的第一信息对应的存储资源,因此,在本发明提供的共识方法中,矿工节点在记账过程中需要某些存储资源时,可以从存储节点中获取需要的存储资源。
81.在一个实施方式中,矿工节点争取区块链网络中下一个区块的记账权的过程包括下述步骤一至步骤三。
82.步骤一、基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值。
83.其中,下一个区块指的是下一个可被写入区块链的新区块,下一个区块对应的备选区块是指有一定概率成为该下一个区块的区块,该备选区块的数量为多个,该备选区块是参与争取区块链中下一个区块的记账权的节点所生成的区块。该备选区块中的全部哈希值指的是将要被打包在备选区块中的全部的存储资源所对应的哈希值。
84.在一些实施例中,可以基于预设算法对备选区块中的全部哈希值进行计算,确定第一哈希值。该第一哈希值与每个备选区块中的哈希值相关。
85.步骤二、根据第一哈希值和下一个区块的区块序号,获取目标区块号。
86.在一些实施例中,矿工节点根据第一哈希值和下一个区块的区块序号,获取目标区块号的步骤,包括:获取第一哈希值除以下一个区块的区块序号的余数,将该余数作为目标区块号。其中,区块序号用于指示区块是区块链中的第几个区块。目标区块号对应的区块是区块链中一个已经被创建的区块(历史区块)的区块号。
87.步骤三、在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,其中,查询请求包括目标区块号。
88.其中,目标区块号所对应的目标信息指的是该目标区块号对应的区块中记录的信息。
89.需要说明的是,在一些共识机制设计中,矿工节点只有存储有该目标区块号所对应的目标信息,该矿工节点才具有生成下一个区块的资格,即该矿工节点能够争取下一个区块的记账权。因此,矿工节点为了获得生成下一个区块的资格,在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,以获取该目标区块号所对应的目标信息。
90.在一个实施方式中,存储节点从区块链网络中获取查询请求,其中,查询请求包括目标区块号。
91.其中,该查询请求是区块链网络中任意节点(例如矿工节点、参与节点等节点)发送的用于查询目标区块号对应的区块所记录的信息的请求。本实施方式中,存储节点在获
取查询请求之后,可以查询自身的存储资源中是否包括目标区块号所对应的目标信息。
92.在另一个实施方式中,存储节点也可以自己确定目标区块号,以预先确定自身的存储资源中目标区块号对应的目标信息。
93.在本实施方式中,存储节点也确定目标区块号的步骤,包括:基于备选区块中的全部哈希值,确定第一哈希值,根据第一哈希值和下一个区块的区块序号,获取目标区块号。其中,该存储节点确定目标区块号的详细步骤与上述矿工节点确定出目标区块号的详细步骤类似,此处不再赘述。
94.在一个实施方式中,存储节点查询自身的存储资源中是否包括目标区块号所对应的目标信息的步骤包括下述步骤一至步骤三。
95.步骤一、获取目标区块号对应的目标哈希值。
96.其中,目标区块号对应的目标哈希值指的是目标区块号对应的区块所记录的目标内容的哈希值。
97.步骤二、确定存储资源对应的哈希值中是否存在与目标哈希值一致的哈希值。
98.存储资源对应的哈希值中不存在与目标哈希值一致的哈希值的情况下,说明存储资源中不包括目标区块号所对应的目标信息。
99.步骤三、在存储资源对应的哈希值中存在与所述目标哈希值一致的哈希值的情况下,确定存储资源中包括目标区块号所对应的目标信息。
100.步骤s103、在存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与目标信息对应的获取方式信息,以供区块链网络中任意节点基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格。
101.其中,与目标信息对应的获取方式信息是用于使需要目标信息的节点获取该目标信息的方式信息。区块链网络中任意节点包括矿工节点、参与节点等节点。
102.在一个实施方式中,存储节点广播的获取方式信息包括资源消耗补偿信息和资源获取链接。其中,资源消耗补偿信息用于指示获取目标信息需要给予该存储节点的补偿资源。资源获取链接是用于获取目标信息的连接,该资源获取链接需要通过访问授权码进行连接。
103.在该实施方式中,存储节点响应于任意节点发送的与资源消耗补偿信息对应的补偿资源,向该节点发送资源获取链接对应的访问授权码,以供该节点基于访问授权码和资源获取链接获取目标信息。
104.在一个实施方式中,矿工节点基于获取方式信息获取目标信息之后,获得争取区块链网络中下一个区块记账权的资格。该矿工节点获得该资格后,争取区块链网络中下一个区块记账权的步骤,包括:
105.基于该目标信息、将要被打包在下一个区块中的存储资源以及随机数,获取第四哈希值。在该第四哈希值小于难度值的情况下,该矿工节点获得该下一个区块的记账权,即该矿工节点挖矿成功。
106.在一些实施例中,矿工节点挖矿成功后,将该下一个区块以私钥签名的广播消息的方式发送到区块链网络中,获得对应的挖矿奖励,并将挖矿获得的奖励按预设比例分给提供目标信息的存储节点。
107.在一些实施例中,如果矿工节点没有挖矿成功,则矿工节点可以仅向提供目标信
息的存储节点支付固定的查询费用(例如,前述的补偿资源)。
108.在一些实施例中,如果提供目标信息的存储节点为多个,则该多个存储节点可以共享矿工节点发送的挖矿奖励或者查询费用。
109.在一些实施场景中,在元宇宙对应的区块链网络中,引入存储节点,这些存储节点可以根据自己存储的内容的多少来获得收益。以此来推动元宇宙中的节点愿意存储区块链中的内容,保证内容在元宇宙对应的区块链网络上不消失,进而推动元宇宙的区块链网络的发展。
110.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
111.本发明实施例提供的基于区块链网络的共识方法,首先,获取至少一个参与节点在区块链网络中广播的第一信息;然后,在第一信息验证通过的情况下,存储该第一信息对应的存储资源;最后,在存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与目标信息对应的获取方式信息,以供区块链网络中任意节点基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格,能够激励存储节点积极对存储资源进行存储,避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。
112.图2为本发明实施例提供的一种基于区块链网络的共识方法的流程图。该共识方法应用于矿工节点,如图2所示,该方法包括:步骤走s201-步骤s205。
113.步骤s201、基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值。
114.其中,下一个区块指的是下一个可被写入区块链的新区块,下一个区块对应的备选区块是指有一定概率成为该下一个区块的区块,该备选区块的数量为多个。该下一个区块对应备选区块中的全部哈希值指的是将要被打包在备选区块中的全部的存储资源所对应的哈希值。
115.在一些实施例中,可以基于预设算法对备选区块中的全部哈希值进行计算,确定第一哈希值。该第一哈希值与下一个区块对应的全部哈希值相关。
116.步骤s202、根据第一哈希值和下一个区块的区块序号,获取目标区块号。
117.在一些实施例中,矿工节点根据第一哈希值和下一个区块的区块序号,获取目标区块号的步骤,包括:获取第一哈希值除以下一个区块的区块序号的余数,将该余数作为目标区块号。其中,区块序号用于指示区块是区块链中的第几个区块。目标区块号对应的区块是区块链中一个已经被创建的区块(历史区块)的区块号。
118.步骤s203、在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求。
119.其中,查询请求包括目标区块号。目标区块号所对应的目标信息指的是该目标区块号对应的区块中记录的信息。
120.需要说明的是,在一些共识机制设计中,矿工节点只有存储有该目标区块号所对应的目标信息,该矿工节点才具有生成下一个区块的资格,即该矿工节点能够争取下一个
区块的记账权。因此,矿工节点为了获得生成下一个区块的资格,在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,以获取该目标区块号所对应的目标信息。
121.步骤s204、从区块链网络中获取与查询请求对应的获取方式信息。
122.其中,获取方式信息是存储节点在确定存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与目标信息的信息。存储资源是存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在第一信息验证通过的情况下,存储的第一信息对应的存储资源。
123.在一些实施例中,若多个存储节点反馈了获取方式信息,则该矿工节点可以同时支付给所有提供获取方式信息的存储节点查询费用,即所有反馈了获取方式信息的存储节点共享这笔查询费用。
124.步骤s205、基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格。
125.在一个实施方式中,存储节点广播的获取方式信息包括资源消耗补偿信息和资源获取链接。则矿工节点基于获取方式信息获取目标信息的步骤,包括:向反馈该获取方式信息的存储节点发送与资源消耗补偿信息对应的补偿资源,以获得该存储节点返回的资源获取链接对应的访问授权码,基于访问授权码和资源获取链接获取目标信息。
126.在一个实施方式中,矿工节点基于获取方式信息获取目标信息之后,获得争取区块链网络中下一个区块记账权的资格。该矿工节点获得该资格后,争取区块链网络中下一个区块记账权的步骤,包括:
127.矿工节点基于该目标信息、将要被打包在下一个区块中的存储资源以及随机数,获取第四哈希值。在该第四哈希值小于难度值的情况下,该矿工节点获得该下一个区块的记账权,即该矿工节点挖矿成功。本实施方式中,在新区块的生成过程中加入历史区块(目标区块号对应的区块)的链接的内容信息(目标信息),使得比如保存有历史区块的链接的内容信息的矿工节点才能进行下一个区块的生成以及获得挖矿奖励,从而激励所有矿工节点尽可能的保存所有区块对应的内容信息,避免区块只记录存储资源对应的哈希值从而使得存储资源丢失。
128.在一些实施例中,矿工节点将该下一个区块以私钥签名的广播消息的方式发送到区块链网络中,获得对应的挖矿奖励,并将挖矿获得的奖励按预设比例分给提供目标信息的存储节点。
129.在一个实施方式中,矿工节点基于获取方式信息获取目标信息之后,获得争取区块链网络中下一个区块记账权的资格。该矿工节点获得该资格后,争取区块链网络中下一个区块记账权的步骤,包括:
130.基于该目标信息、将要被打包在下一个区块中的存储资源以及随机数,获取第四哈希值。在该第四哈希值小于难度值的情况下,该矿工节点获得该下一个区块的记账权,即该矿工节点挖矿成功。
131.在一些实施例中,矿工节点将该下一个区块以私钥签名的广播消息的方式发送到区块链网络中,获得对应的挖矿奖励,并将挖矿获得的奖励按预设比例分给提供目标信息的存储节点。
132.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
133.本发明实施例提供一种基于区块链网络的共识方法,首先,基于下一个区块对应的备选区块中全部哈希值,确定第一哈希值;根据第一哈希值和下一个区块的区块序号,获取目标区块号;在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,该查询请求包括所述目标区块号;然后,从区块链网络中获取与查询请求对应的获取方式信息;该获取方式信息是存储节点在确定存储资源中包括所述目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与目标信息的信息;存储资源是存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在第一信息验证通过的情况下,存储的第一信息对应的存储资源;最后,基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格,能够激励存储节点积极对存储资源进行存储,避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。
134.图3为本发明实施例提供一种存储节点的结构示意图。如图3所示,该存储节点包括:第一获取模块31、第一存储模块32和第一发送模块33。
135.其中,第一获取模块31,用于获取至少一个参与节点在区块链网络中广播的第一信息。
136.第一存储模块32,用于在第一信息验证通过的情况下,存储第一信息对应的存储资源。
137.第一发送模块33,用于在存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与目标信息对应的获取方式信息,以供区块链网络中任意节点基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格。
138.在一个实施方式中,上述第一获取模块31,还用于从区块链网络中获取查询请求,其中,查询请求包括目标区块号。
139.在一个实施方式中,存储节点还包括计算模块,用于基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值,并根据该第一哈希值和下一个区块的区块序号,获取目标区块号。
140.在一个实施方式中,第一发送模块33还用于响应于任意节点发送的与所述资源消耗补偿信息对应的补偿资源,向该节点发送所述资源获取链接对应的访问授权码,以供该节点基于所述访问授权码和所述资源获取链接获取所述目标信息。
141.在一个实施方式中,存储节点还包括第一验证模块。
142.上述第一获取模块,还用于获取目标区块号对应的目标哈希值;
143.上述第一验证模块,用于确定所述存储资源对应的哈希值中是否存在与所述目标哈希值一致的哈希值,在存储资源对应的哈希值中存在与目标哈希值一致的哈希值的情况下,确定存储资源中包括目标区块号所对应的目标信息。
144.在一个实施方式中,存储节点还包括第二验证模块。
145.上述第一获取模块,还用于基于所述第一信息获取所述第一信息对应的存储资
源。
146.第二验证模块,用于计算存储资源的第三哈希值,并在第二哈希值和所述第三哈希值一致的情况下,确定第一信息验证通过。
147.本发明实施例提供的存储节点,包括:第一获取模块,用于获取至少一个参与节点在区块链网络中广播的第一信息;第一存储模块,用于在第一信息验证通过的情况下,存储该第一信息对应的存储资源;第一发送模块用于在存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送与目标信息对应的获取方式信息,以供区块链网络中任意节点基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格,能够激励存储节点积极对存储资源进行存储,避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。。
148.图4为本发明实施例提供的一种矿工节点的结构示意图。如图4所示,该矿工节点包括:处理模块41、第二发送模块42、第二获取模块43和第三获取模块44。
149.其中,处理模块41,用于基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值,并根据第一哈希值和下一个区块的区块序号,获取目标区块号。
150.第二发送模块42,用于在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,其中,查询请求包括目标区块号。
151.第二获取模块43,还用于从区块链网络中获取与查询请求对应的获取方式信息。
152.其中,获取方式信息是存储节点在确定存储资源中包括目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与目标信息的信息。
153.存储资源是存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在第一信息验证通过的情况下,存储的第一信息对应的存储资源。
154.第三获取模块44,用于基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格。
155.本发明实施例提供一种基于区块链网络的共识方法,首先,基于下一个区块对应的备选区块中的全部哈希值,确定第一哈希值;根据第一哈希值和所述下一个区块的区块序号,获取目标区块号;在未存储目标区块号所对应的目标信息的情况下,向区块链网络中发送查询请求,该查询请求包括所述目标区块号;然后,从区块链网络中获取与查询请求对应的获取方式信息;该获取方式信息是存储节点在确定存储资源中包括所述目标区块号所对应的目标信息的情况下,向区块链网络中发送的用于获取与目标信息的信息;存储资源是存储节点在获取至少一个参与节点在区块链网络中广播的第一信息,且在第一信息验证通过的情况下,存储的第一信息对应的存储资源;最后,基于获取方式信息获取目标信息,以获得争取区块链网络中下一个区块记账权的资格,能够激励存储节点积极对存储资源进行存储,避免矿工节点因为没有存储记账所需要的存储资源而导致矿工节点丧失争取区块链网络中下一个区块记账权的资格,提高矿工节点的算力利用率,避免算力空闲。
156.需要明确的是,本发明并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
157.本领域普通技术人员可以理解,上文中所发明方法中的全部或某些步骤、系统、装
置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其它存储器技术、只读光盘(compact disc read-only memory,缩写cd-rom)、数字多功能盘(digital video disc,缩写dvd)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
158.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
159.本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本实施例的范围之内并且形成不同的实施例。
160.可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献