CN115632800B - 基于区块链共识的物联网源端数据存储方法及装置 - Google Patents
基于区块链共识的物联网源端数据存储方法及装置 Download PDFInfo
- Publication number
- CN115632800B CN115632800B CN202211660436.4A CN202211660436A CN115632800B CN 115632800 B CN115632800 B CN 115632800B CN 202211660436 A CN202211660436 A CN 202211660436A CN 115632800 B CN115632800 B CN 115632800B
- Authority
- CN
- China
- Prior art keywords
- data
- uplink
- information
- node
- consensus
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 using cryptographic hash functions
- H04L9/3242—Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种基于区块链共识的物联网源端数据存储方法及装置,该方法包括:当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点,从区块链网络中所包括的所有共识节点中确定出目标主节点,并基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点;分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件;若满足,则确定待上链数据对应的目标区块,并将待上链数据存储至目标区块。可见,实施本发明能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性。
Description
技术领域
本发明涉及区块链和物联网技术领域,尤其涉及一种基于区块链共识的物联网源端数据存储方法及装置。
背景技术
数据采集终端广泛应用于水、电、气、暖等能源的数据采集领域,并将采集结果通过物联网传送至远端服务器进行数据统计、分析,使得远端服务器根据分析结果实现对能源数据的管控及高效利用。但是物联网源端与远端服务器的数据传输容易存在篡改或劫持,数据的真实性难以保障。
目前对于物联网源端的数据存储有提出采用区块链上链的方式,首先获取物联网原始数据并进行处理,将处理后的数据传送至云端平台保存,随后对处理后的数据进行哈希计算,获得哈希值,并将哈希值封装成交易包,然后在可信执行环境中使用私钥对交易包进行签名,并将签名后的交易包与公钥结合后发送至区块链集群。最后对云端数据进行哈希计算,获得云端数据哈希值,通过云端数据哈希值与区块链集群中存储的哈希值的对比结果,判断云端数据是否为伪造数据。然而聚焦传统公私钥的存储方式易被泄露,一旦存储私钥的物联网终端设备被攻破,私钥即泄漏,无法辨别远端数据是否被篡改,不能有效保障源端数据的真实性。可见,提供一种新的数据存储方法以提高数据的真实性以及提高数据存储的安全性显得尤为重要。
发明内容
本发明所要解决的技术问题在于,提供一种基于区块链共识的物联网源端数据存储方法及装置,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性。
为了解决上述技术问题,本发明第一方面公开了一种基于区块链共识的物联网源端数据存储方法,所述方法包括:
当检测到存在源端采集的待上链数据需要接入区块链网络时,确定所述待上链数据对应的目标节点;
从所述区块链网络中所包括的所有共识节点中确定出目标主节点;
基于所述目标主节点,将所述区块链网络中所存在的所有共识节点中所包括的数据同步至所述目标节点;
分析所述待上链数据,得到数据分析结果,判断所述数据分析结果是否用于表示所述待上链数据满足预设的数据上链条件;
当判断出所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件时,确定所述待上链数据对应的目标区块,并将所述待上链数据存储至所述目标区块。
作为一种可选的实施方式,在本发明第一方面中,所述从所述区块链网络中所包括的所有共识节点中确定出目标主节点,包括:
向所述区块链网络广播握手信息,以获取所述区块链网络中所存在的每个共识节点的节点信息;
基于所有所述共识节点的节点信息,确定所述区块链网络中每个所述共识节点的节点权重信息,并基于所有所述共识节点的节点权重信息,确定目标主节点。
作为一种可选的实施方式,在本发明第一方面中,所述基于所有所述共识节点的节点权重信息,确定目标主节点,包括:
针对所述区块链网络中的每个所述共识节点,将该共识节点的节点权重信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的节点权重信息;
针对所述区块链网络中的每个所述共识节点,基于该共识节点所接收到的所有所述剩余节点的节点权重信息执行选举操作,得到选举信息,并将所述选举信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的选举信息;
基于所有所述共识节点的选举信息,确定目标主节点。
作为一种可选的实施方式,在本发明第一方面中,所述分析所述待上链数据,得到数据分析结果,包括:
提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果;
当所述第一数据校验结果用于表示所述待上链数据满足预设的数据认证条件时,确定所述待上链数据的上链请求信息,并将所述上链请求信息广播至所述区块链网络中的所有所述共识节点,所述上链请求信息包括所述待上链数据以及所述待上链数据的摘要信息;
对所述上链请求信息执行第二校验操作,得到第二校验信息,将所述第二校验信息广播至所述区块链网络中的所有所述共识节点,以使每个所述共识节点根据所述第二校验信息对所述待上链数据执行数据检查操作,得到每个所述共识节点的数据检查结果,并根据所有所述共识节点的数据检查结果,生成数据检查结果集合;
基于所述数据检查结果集合,生成数据分析结果。
作为一种可选的实施方式,在本发明第一方面中,所述提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果,包括:
确定所述目标节点对应的目标区块链数据库,并在所述目标区块链数据库中确定第一标识符;
提取所述待上链数据对应的发送端信息,所述发送端信息包括所述待上链数据对应的公钥加密信息以及数字标识信息;
在所述目标区块链数据库中与所述公钥加密信息相匹配的目标公钥,基于所述目标公钥对所述数字标识信息进行解密,得到数据解密结果,基于所述数据解密结果,确定第二标识符;
基于所述第一标识符和第二标识符以及所述数据解密结果,确定所述第一标识符和所述第二标识符的比对关系,根据所述比对关系确定第一数据校验结果。
作为一种可选的实施方式,在本发明第一方面中,所述数据检查结果集合中包括多个所述数据检查结果;
所述基于所述数据检查结果集合,生成数据分析结果,包括:
根据所述数据检查结果集合中所包括的每个所述数据检查结果,确定所述数据检查结果集合中用于表示数据比对一致的目标数据检查结果的目标数量;
判断所述目标数量是否大于等于预设的数量阈值;
当判断出所述目标数量大于等于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件;
当判断出所述目标数量小于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据不满足预设的所述数据上链条件。
作为一种可选的实施方式,在本发明第一方面中,所述对所述上链请求信息执行第二校验操作,得到第二校验信息,包括:
将所述上链请求信息中的所述待上链数据的摘要信息确定为第一摘要信息,并根据所述待上链数据,生成第二摘要信息;
对所述第一摘要信息与所述第二摘要信息执行第二校验操作,得到对比结果,所述对比结果用于表示所述第一摘要信息和所述第二摘要信息之间的相似程度;
基于所述对比结果以及所述待上链数据,生成第二校验信息。
本发明第二方面公开了一种基于区块链共识的物联网源端数据存储装置,所述装置包括:
确定模块,用于当检测到存在源端采集的待上链数据需要接入区块链网络时,确定所述待上链数据对应的目标节点,从所述区块链网络中所包括的所有共识节点中确定出目标主节点;
同步模块,用于基于所述目标主节点,将所述区块链网络中所存在的所有共识节点中所包括的数据同步至所述目标节点;
分析模块,用于分析所述待上链数据,得到数据分析结果;
判断模块,用于判断所述数据分析结果是否用于表示所述待上链数据满足预设的数据上链条件;
所述确定模块,还用于当所述判断模块判断出所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件时,确定所述待上链数据对应的目标区块;
存储模块,用于将所述待上链数据存储至所述目标区块。
作为一种可选的实施方式,在本发明第二方面中,所述确定模块从所述区块链网络中所包括的所有共识节点中确定出目标主节点的具体方式包括:
向所述区块链网络广播握手信息,以获取所述区块链网络中所存在的每个共识节点的节点信息;
基于所有所述共识节点的节点信息,确定所述区块链网络中每个所述共识节点的节点权重信息,并基于所有所述共识节点的节点权重信息,确定目标主节点。
作为一种可选的实施方式,在本发明第二方面中,所述确定模块基于所有所述共识节点的节点权重信息,确定目标主节点的具体方式包括:
针对所述区块链网络中的每个所述共识节点,将该共识节点的节点权重信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的节点权重信息;
针对所述区块链网络中的每个所述共识节点,基于该共识节点所接收到的所有所述剩余节点的节点权重信息执行选举操作,得到选举信息,并将所述选举信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的选举信息;
基于所有所述共识节点的选举信息,确定目标主节点。
作为一种可选的实施方式,在本发明第二方面中,所述分析模块分析所述待上链数据,得到数据分析结果的具体方式包括:
提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果;
当所述第一数据校验结果用于表示所述待上链数据满足预设的数据认证条件时,确定所述待上链数据的上链请求信息,并将所述上链请求信息广播至所述区块链网络中的所有所述共识节点,所述上链请求信息包括所述待上链数据以及所述待上链数据的摘要信息;
对所述上链请求信息执行第二校验操作,得到第二校验信息,将所述第二校验信息广播至所述区块链网络中的所有所述共识节点,以使每个所述共识节点根据所述第二校验信息对所述待上链数据执行数据检查操作,得到每个所述共识节点的数据检查结果,并根据所有所述共识节点的数据检查结果,生成数据检查结果集合;
基于所述数据检查结果集合,生成数据分析结果。
作为一种可选的实施方式,在本发明第二方面中,所述分析模块提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果的具体方式包括:
确定所述目标节点对应的目标区块链数据库,并在所述目标区块链数据库中确定第一标识符;
提取所述待上链数据对应的发送端信息,所述发送端信息包括所述待上链数据对应的公钥加密信息以及数字标识信息;
在所述目标区块链数据库中与所述公钥加密信息相匹配的目标公钥,基于所述目标公钥对所述数字标识信息进行解密,得到数据解密结果,基于所述数据解密结果,确定第二标识符;
基于所述第一标识符和第二标识符以及所述数据解密结果,确定所述第一标识符和所述第二标识符的比对关系,根据所述比对关系确定第一数据校验结果。
作为一种可选的实施方式,在本发明第二方面中,所述数据检查结果集合中包括多个所述数据检查结果;
所述分析模块基于所述数据检查结果集合,生成数据分析结果的具体方式包括:
根据所述数据检查结果集合中所包括的每个所述数据检查结果,确定所述数据检查结果集合中用于表示数据比对一致的目标数据检查结果的目标数量;
判断所述目标数量是否大于等于预设的数量阈值;
当判断出所述目标数量大于等于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件;
当判断出所述目标数量小于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据不满足预设的所述数据上链条件。
作为一种可选的实施方式,在本发明第二方面中,所述分析模块对所述上链请求信息执行第二校验操作,得到第二校验信息的具体方式包括:
将所述上链请求信息中的所述待上链数据的摘要信息确定为第一摘要信息,并根据所述待上链数据,生成第二摘要信息;
对所述第一摘要信息与所述第二摘要信息执行第二校验操作,得到对比结果,所述对比结果用于表示所述第一摘要信息和所述第二摘要信息之间的相似程度;
基于所述对比结果以及所述待上链数据,生成第二校验信息。
本发明第三方面公开了另一种基于区块链共识的物联网源端数据存储装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的基于区块链共识的物联网源端数据存储方法。
本发明第四方面公开了一种计算机可存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的基于区块链共识的物联网源端数据存储方法。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例中,当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点,从区块链网络中所包括的所有共识节点中确定出目标主节点,并基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点;分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件;若满足,则确定待上链数据对应的目标区块,并将待上链数据存储至目标区块。可见,实施本发明能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于区块链共识的物联网源端数据存储方法的流程示意图;
图2是本发明实施例公开的另一种基于区块链共识的物联网源端数据存储方法的流程示意图;
图3是本发明实施例公开的一种基于区块链共识的物联网源端数据存储装置的结构示意图;
图4是本发明实施例公开的另一种基于区块链共识的物联网源端数据存储装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种基于区块链共识的物联网源端数据存储方法及装置,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于区块链共识的物联网源端数据存储方法的流程示意图。其中,图1所描述的基于区块链共识的物联网源端数据存储方法可以应用于基于区块链共识的物联网源端数据存储装置中,也可以应用于基于区块链共识的物联网源端数据存储的本地服务器或云端服务器,本发明实施例不做限定。如图1所示,该基于区块链共识的物联网源端数据存储方法可以包括以下操作:
101、当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点。
本发明实施例中,可选的,目标节点为区块链物联网关,或者,服务器区块链节点。可选的,源端所采集的待上链数据为源端采集到的新的待上链数据。
本发明实施例中,可选的,检测是否存在源端采集的待上链数据是通过预设的数据采集传感器进行检测的。
本发明实施例中,需要说明的是,区块链是藉由密码学与共识机制等技术,建立与储存庞大事务数据的点对点网络系统,其本质是一种安全共享的去中心化的数据账本。区块链一般可分为公有链、私有链和联盟链;联盟链是指参与节点事先确定好的区块链,只对联盟内部成员开放全部或部分功能。其特点介于公有链和私有链之间,账本半公开化、交易确认速度较快,记账成本低,数据有一定的隐私性。
102、从区块链网络中所包括的所有共识节点中确定出目标主节点。
本发明实施例中,区块链网络中所包括的每个共识节点为服务器端区块链节点、区块链物联网关中的一种或多种。
本发明实施例中,可选的,目标主节点的数量为一个。
103、基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点。
本发明实施例中,可选的,区块链网络中所存在的每个共识节点均存储有一种或多种数据。进一步可选的,每个共识节点所存储的数据均为不同的数据。
本发明实施例中,需要说明的是,在将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点之前,目标节点未存储有数据。
104、分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件。
本发明实施例中,可选的,数据分析结果用于表示待上链数据的校验结果。其中,校验结果可以包括目标主节点的主节点校验结果,还可以包括区块链网络中所包括的每个共识节点的共识节点校验结果。
105、当判断出数据分析结果用于表示待上链数据满足预设的数据上链条件时,确定待上链数据对应的目标区块,并将待上链数据存储至目标区块。
本发明实施例中,可选的,当判断出数据分析结果用于表示待上链数据不满足预设的数据上链条件时,可以结束本流程。
本发明实施例中,可选的,目标区块与待上链数据相匹配且目标区域未存储有数据。
本发明实施例中,可选的,将待上链数据存储至目标区块,包括:
将数据分析结果广播至区块链网络中的所有共识节点处,针对每个共识节点,将该共识节点所包括的所有数据存储至目标区块中。
可见,实施图1所描述的基于区块链共识的物联网源端数据存储方法能够当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点,从区块链网络中所包括的所有共识节点中确定出目标主节点,并基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点;分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件;若满足,则确定待上链数据对应的目标区块,并将待上链数据存储至目标区块,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
实施例二
请参阅图2,图2是本发明实施例公开的一种基于区块链共识的物联网源端数据存储方法的流程示意图。其中,图2所描述的基于区块链共识的物联网源端数据存储方法可以应用于基于区块链共识的物联网源端数据存储装置中,也可以应用于基于区块链共识的物联网源端数据存储的本地服务器或云端服务器,本发明实施例不做限定。如图2所示,该基于区块链共识的物联网源端数据存储方法可以包括以下操作:
201、当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点。
202、向区块链网络广播握手信息,以获取区块链网络中所存在的每个共识节点的节点信息。
本发明实施例中,需要说明的是,握手信息是在通信电路建立之后,信息传输开始之前。其中,握手用于达成参数,如信息传输率,字母表,奇偶校验,中断过程,和其他协议特性。
本发明实施例中,可选的,区块链网络中所存在的每个共识节点的节点信息包括每个共识节点的最新交易序号、每个共识节点的首个交易序号、每个共识节点校验错误的交易序号集合中的一种或多种。
举例来说,为k号共识节点校验的最新交易序号;为k号共识节点校验的首个交易序号;为k号共识节点校验错误的交易序号集合;
其中,
其中,为k号共识节点第一个校验错误的交易序号;为k号共识节点第n个校验错误的交易序号,为k号共识节点校验错误的交易总数量。
203、基于所有共识节点的节点信息,确定区块链网络中每个共识节点的节点权重信息,并基于所有共识节点的节点权重信息,确定目标主节点。
本发明实施例中,基于所有共识节点的节点信息,确定区块链网络中每个共识节点的节点权重信息,包括:
基于所有共识节点的节点信息,结合预先设定的节点权重计算公式,确定区块链网络中每个共识节点的节点权重信息。
其中,举例来说,A为预设的权重分参考系数;
预先设定的节点权重计算公式,包括:
其中,用于表示该共识节点的节点选举资格,为k号共识节点校验的最新交易序号,为k号共识节点校验的首个交易序号,为k号共识节点校验错误的交易总数量;
预先设定的节点权重计算公式,还包括:
其中,为该共识节点的节点基础分;
预先设定的节点权重计算公式,还包括:
其中,为连续校验正确奖励系数;
预先设定的节点权重计算公式,还包括:
其中,为连续校验错误历史惩罚系数;
预先设定的节点权重计算公式,还包括:
:
其中,为连续校验错误惩罚系数;x为k号共识节点第n个校验错误的交易序号与第n-1个校验错误的交易序号之差;a为固定参数,用于表示k号共识节点校验的交易总数乘0.05;C为联动参数,由预设的权重分参考系数A和固定参数a计算得到;
预先设定的节点权重计算公式,还包括:
其中,为节点权重分。
这样通过多个预先设定的节点权重计算公式并结合每个共识节点的节点信息,确定每个共识节点的节点权重信息,能够提高确定节点权重信息的准确性和可靠性,进而能够提高确定目标主节点的准确性和可靠性。
204、基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点。
205、分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件。
206、当判断出数据分析结果用于表示待上链数据满足预设的数据上链条件时,确定待上链数据对应的目标区块,并将待上链数据存储至目标区块。
本发明实施例中,针对步骤201、步骤204-步骤206的其他描述,请参照本发明实施例一中针对步骤101、步骤103-步骤105的详细描述,本发明实施例不再赘述。
可见,实施图2所描述的基于区块链共识的物联网源端数据存储方法能够在检测到存在源端采集的待上链数据需要接入区块链网络时确定待上链数据对应的目标节点,并向区块链网络广播握手信息以获取每个共识节点的节点信息,基于所有共识节点的节点信息确定每个共识节点的权重信息并进一步确定目标主节点,基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点,分析待上链数据得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件,若满足,则确定待上链数据对应的目标区块并将待上链数据存储至目标区块,能够提高确定每个共识节点的权重信息的准确性和可靠性,从而能够提高确定目标主节点的准确性和可靠性,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在一个可选的实施例中,基于所有共识节点的节点权重信息,确定目标主节点,包括:
针对区块链网络中的每个共识节点,将该共识节点的节点权重信息广播至区块链网络中除该共识节点外的所有剩余节点处,以使所有剩余节点接收该共识节点的节点权重信息;
针对区块链网络中的每个共识节点,基于该共识节点所接收到的所有剩余节点的节点权重信息执行选举操作,得到选举信息,并将选举信息广播至区块链网络中除该共识节点外的所有剩余节点处,以使所有剩余节点接收该共识节点的选举信息;
基于所有共识节点的选举信息,确定目标主节点。
在该可选的实施例中,可选的,针对区块链网络中的每个共识节点,将该共识节点的节点权重信息广播至区块链网络中除该共识节点外的所有剩余节点处,以使所有剩余节点接收该共识节点的节点权重信息,包括:
所有共识节点(已接入的区块链物联网关和服务器端区块链节点)根据本节点历史校验记录计算本节点选举权重分后,将封装进回复消息,广播消息给其他共识节点。
在该可选的实施例中,可选的,针对区块链网络中的每个共识节点,基于该共识节点所接收到的所有剩余节点的节点权重信息执行选举操作,得到选举信息,包括:
所有共识节点收到消息,对比每个节点的选举权重分~,投票给权重分最高的共识节点(N表示联盟链中共识节点的总数)。每一个节点将选举结果封装进选举消息。
在该可选的实施例中,可选的,将选举信息广播至区块链网络中除该共识节点外的所有剩余节点处,以使所有剩余节点接收该共识节点的选举信息,包括:
广播选举消息给其他共识节点。
在该可选的实施例中,可选的,基于所有共识节点的选举信息,确定目标主节点,包括:
所有共识节点收到其他共识节点的投票结果,选择获得选票最多的共识节点成为新的主节点。随后,各共识节点发送确认结果消息给新的主节点;
新的共识主节点收到的消息的数量≥2f+1时,则广播回复所有副共识节点回复确认成为新共识主节点的消息,确认履职主节点。
可见,实施该可选的实施例能够将每个共识节点的节点权重信息广播至区块链网络中的每个共识节点处,以使每个共识节点基于所接收到的节点权重信息执行选举操作,得到选举信息,并基于所有共识节点的选举信息确定目标主节点,能够提高确定目标主节点的准确性和可靠性,以及能够提高确定目标主节点的智能性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在另一个可选的实施例中,分析待上链数据,得到数据分析结果,包括:
提取待上链数据的数据来源信息,并对数据来源信息执行第一校验操作,得到第一数据校验结果;
当第一数据校验结果用于表示待上链数据满足预设的数据认证条件时,确定待上链数据的上链请求信息,并将上链请求信息广播至区块链网络中的所有共识节点,上链请求信息包括待上链数据以及待上链数据的摘要信息;
对上链请求信息执行第二校验操作,得到第二校验信息,将第二校验信息广播至区块链网络中的所有共识节点,以使每个共识节点根据第二校验信息对待上链数据执行数据检查操作,得到每个共识节点的数据检查结果,并根据所有共识节点的数据检查结果,生成数据检查结果集合;
基于数据检查结果集合,生成数据分析结果。
在该可选的实施例中,可选的,第一数据校验结果用于表示对待上链数据的来源以及对待上链数据的发送端的校验结果,当第一数据校验结果用于表示待上链数据满足预设的数据认证条件时,确定发送该待上链数据对应的发送端满足预设的认证条件;当第一数据校验结果用于表示待上链数据不满足预设的数据认证条件时,确定发送该待上链数据对应的发送端不满足预设的认证条件。
在该可选的实施例中,可选的,数据检查结果集合包括多个数据检查结果,进一步的,数据检查结果集合包括区块链网络中所有共识节点的数据检查结果。
可见,实施该可选的实施例能够基于数据来源信息执行第一校验操作得到第一数据校验结果,当第一数据校验结果用于表示待上链数据满足预设的数据认证条件时,确定待上链数据的上链请求信息,并将上链请求信息广播至区块链网络中的所有共识节点,对上链请求信息执行第二校验操作得到第二校验信息,将第二校验信息广播至区块链网络中的所有共识节点处,以使每个共识节点对待上链数据执行数据检查操作得到数据检查结果,进而生成数据检查结果集合,并基于数据检查结果集合生成数据分析结果,能够提高生成数据分析结果的准确性和可靠性,从而能够提高判断待上链数据是否满足预设的数据上链条件的准确性和可靠性,进而有利于提高将待上链数据存储至目标区块的准确性、可靠性以及智能性,以及有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,提取待上链数据的数据来源信息,并对数据来源信息执行第一校验操作,得到第一数据校验结果,包括:
确定目标节点对应的目标区块链数据库,并在目标区块链数据库中确定第一标识符;
提取待上链数据对应的发送端信息,发送端信息包括待上链数据对应的公钥加密信息以及数字标识信息;
在目标区块链数据库中与公钥加密信息相匹配的目标公钥,基于目标公钥对数字标识信息进行解密,得到数据解密结果,基于数据解密结果,确定第二标识符;
基于第一标识符和第二标识符以及数据解密结果,确定第一标识符和第二标识符的比对关系,根据比对关系确定第一数据校验结果。
在该可选的实施例中,可选的,确定目标节点对应的目标区块链数据库,并在目标区块链数据库中确定第一标识符,包括:
区块链物联网关通过WiFi通信模块接收到数据采集传感器传来的数据,数据经过发送者公钥加密,并加有发送者的数字签名;区块链物联网关通过WiFi认证协议WPA2-PSK获取CCMP帧中的MAC Header,在本节点存储的区块链数据库中查询MAC Header获取对应的设备唯一标识符Device ID 1,其中,Device ID 1为第一标识符。
在该可选的实施例中,可选的,在目标区块链数据库中与公钥加密信息相匹配的目标公钥,基于目标公钥对数字标识信息进行解密,得到数据解密结果,基于数据解密结果,确定第二标识符,包括:
区块链物联网关在本节点存储的区块链数据库中查找消息发送者的公钥,并在其TEE可信执行环境中使用公钥进行数字签名解密,以验证数字签名并获取消息的发送者;在区块链上,与消息的发送者对应的唯一标识符Device ID 2,其中,Device ID 2为第二标识符。
在该可选的实施例中,基于第一标识符和第二标识符以及数据解密结果,确定第一标识符和第二标识符的比对关系,根据比对关系确定第一数据校验结果,包括:
判断数据解密结果是否用于表示公钥解密成功;
当判断出数据解密结果用于表示公钥解密成功时,确定第一标识符和第二标识符的比对关系为比对结果一致关系,并将第一数据校验结果确定为待上链数据满足预设的数据认证条件;
当判断出数据解密结果用于表示公钥解密不成功时,确定第一标识符和第二标识符的比对关系为比对结果不一致关系,并将第一数据校验结果确定为待上链数据不满足预设的数据认证条件。
可见,实施该可选的实施例能够确定第一标识符,并基于对数字标识信息进行解密得到的数据解密结果确定第二标识符,并基于第一标识符、第二标识符以及数据解密结果确定比对关系并进一步的确定第一数据校验结果,能够基于第一标识符和第二标识符确定第一标识符和第二标识符之间的比对关系,有利于提高确定比对关系的准确性和可靠性,从而有利于提高确定第一数据校验结果的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,数据检查结果集合中包括多个数据检查结果;
基于数据检查结果集合,生成数据分析结果,包括:
根据数据检查结果集合中所包括的每个数据检查结果,确定数据检查结果集合中用于表示数据比对一致的目标数据检查结果的目标数量;
判断目标数量是否大于等于预设的数量阈值;
当判断出目标数量大于等于预设的数量阈值时,确定数据分析结果用于表示待上链数据满足预设的数据上链条件;
当判断出目标数量小于预设的数量阈值时,确定数据分析结果用于表示待上链数据不满足预设的数据上链条件。
在该可选的实施例中,可选的,判断目标数量是否大于等于预设的数量阈值,包括:
判断目标数量是否大于等于2f;
其中,f为该区块链网络可容忍恶意节点数量,;
进一步的,当f不为正整数时,执行向下取整操作。举例来说,当计算得到的f为4.33时,确定f的值为4。
在该可选的实施例中,可选的,在判断出目标数量小于预设的数量阈值并确定数据分析结果用于表示待上链数据不满足预设的数据上链条件之后,该方法还包括:
判断目标数量是否大于f且小于2f;
当判断结果为是时,基于目标主节点通知区块链网络中的所有共识节点,重新通过PBFT算法执行验证操作;
当判断结果为否时,判断目标数量是否大于等于0且小于f;
当判断出目标数量大于等于0且小于f时,确定当前的目标主节点不被信任,并重新触发执行从区块链网络中所包括的所有共识节点中确定出目标主节点的操作。
在该可选的实施例中,可选的,基于数据检查结果集合,生成数据分析结果,还包括:
根据数据检查结果结合中所包括的每个数据检查结果,确定数据检查结果集合中用于表示数据比对不一致的关键数据检查结果的关键数量;
判断关键数量是否满足预设的数量条件;
当判断出关键数量满足预设的数量条件时,确定数量分析结果用于表示待上链数据满足预设的数据上链条件;
当判断出关键数量不满足预设的数量条件时,确定数量分析结果用于表示待上链数据不满足预设的数据上链条件。
其中,判断关键数量是否满足预设的数量条件,包括:
判断关键数量是否小于等于2f,其中,f为该区块链网络可容忍恶意节点数量,当判断出关键数量小于等于2f时,确定数量分析结果用于表示待上链数据满足预设的数据上链条件;当判断出关键数量大于2f时,确定数量分析结果用于表示待上链数据不满足预设的数据上链条件。
进一步的,在确定数量分析结果用于表示待上链数据不满足预设的数据上链条件之后,该方法还包括:
判断关键数量是否小于等于2f且大于f,当判断结果为是时,基于目标主节点通知区块链网络中的所有共识节点,重新通过PBFT算法执行验证操作;当判断结果为否时,判断关键数量是否大于2f,当判断出关键数量大于2f时,确定当前的目标主节点不被信任,并重新触发执行从区块链网络中所包括的所有共识节点中确定出目标主节点的操作。
可见,实施该可选的实施例能够根据数据检查结果集合中所包括的所有数据检查结果确定数据检查结果集合中目标数据检查结果的目标数量,并判断目标数量是否大于等于预设的数量阈值,并基于该判断结果生成数据分析结果,能够提高生成数据分析结果的准确性和可靠性,从而有利于提高判断待上链数据是否满足预设的数据上链条件的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,对上链请求信息执行第二校验操作,得到第二校验信息,包括:
将上链请求信息中的待上链数据的摘要信息确定为第一摘要信息,并根据待上链数据,生成第二摘要信息;
对第一摘要信息与第二摘要信息执行第二校验操作,得到对比结果,对比结果用于表示第一摘要信息和第二摘要信息之间的相似程度;
基于对比结果以及待上链数据,生成第二校验信息。
在该可选的实施例中,区块链物联网关计算数据采集传感器传来的数据m的摘要。将采集数据m、及其数据摘要、区块链物联网关的签名封装成交易上链请求消息,通过Ethernet广播给其他区块链共识节点。消息包含采集数据m,数据摘要,以及区块链网关签名。
主节点收到消息,并将所有消息发送至所有共识节点中,以使所有共识节点计算采集数据m的摘要,随后校验所有共识节点计算得到的与消息中的是否一致,校验结果标记为。随后,主节点将校验结果消息发送给所有副节点;消息内包含校验结果,采集数据m,数据传感器传来的数据摘要D(m),节点签名;其中,D(m)为区块链物联网关接收的数据采集传感器传来的数据m的摘要;为经过所有共识节点计算后的数据m的摘要;
每个副节点均收到消息,每个副节点均将主节点的校验结果与本节点的校验结果进行检查,验证是否一致,得到验证结果,并根据验证结果生成第二校验信息;
其中,每个副节点均为共识节点,且每个副节点均存在对应的验证结果,验证结果用于表示该副节点的校验结果与主节点的校验结果之间的验证结果是否一直,若一致,则验证结果表示为;若不一致,则验证结果表示为;并进一步将验证结果封装进消息;
以及,为第一摘要信息,数据m为待上链数据。需要说明的是,Ethernet为以太网,其中,以太网是一种计算机局域网技术。IEEE组织的IEEE 802.3标准制定了以太网的技术标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网是应用最普遍的局域网技术,取代了其他局域网技术如令牌环、FDDI和ARCNET。
可见,实施该可选的实施例能够确定待上链数据的第一摘要信息以及第二摘要信息并执行第二校验操作,得到对比结果,并基于对比结果和待上链数据,生成第二校验信息,能够提高生成第二校验信息的准确性和可靠性,从而能够提高得到每个共识节点的数据检查结果的准确性和可靠性,以及能够提高生成数据分析结果的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
实施例三
请参阅图3,图3是本发明实施例公开的一种基于区块链共识的物联网源端数据存储装置的结构示意图。如图3所示,该基于区块链共识的物联网源端数据存储装置可以包括:
确定模块301,用于当检测到存在源端采集的待上链数据需要接入区块链网络时,确定所述待上链数据对应的目标节点,从所述区块链网络中所包括的所有共识节点中确定出目标主节点;
同步模块302,用于基于所述目标主节点,将所述区块链网络中所存在的所有共识节点中所包括的数据同步至所述目标节点;
分析模块303,用于分析所述待上链数据,得到数据分析结果;
判断模块304,用于判断所述数据分析结果是否用于表示所述待上链数据满足预设的数据上链条件;
所述确定模块301,还用于当所述判断模块304判断出所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件时,确定所述待上链数据对应的目标区块;
存储模块305,用于将所述待上链数据存储至所述目标区块。
可见,实施图3所描述的装置能够当检测到存在源端采集的待上链数据需要接入区块链网络时,确定待上链数据对应的目标节点,从区块链网络中所包括的所有共识节点中确定出目标主节点,并基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点;分析待上链数据,得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件;若满足,则确定待上链数据对应的目标区块,并将待上链数据存储至目标区块,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在一个可选的实施例中,所述确定模块301从所述区块链网络中所包括的所有共识节点中确定出目标主节点的具体方式包括:
向所述区块链网络广播握手信息,以获取所述区块链网络中所存在的每个共识节点的节点信息;
基于所有所述共识节点的节点信息,确定所述区块链网络中每个所述共识节点的节点权重信息,并基于所有所述共识节点的节点权重信息,确定目标主节点。
可见,实施图3所描述的装置能够在检测到存在源端采集的待上链数据需要接入区块链网络时确定待上链数据对应的目标节点,并向区块链网络广播握手信息以获取每个共识节点的节点信息,基于所有共识节点的节点信息确定每个共识节点的权重信息并进一步确定目标主节点,基于目标主节点,将区块链网络中所存在的所有共识节点中所包括的数据同步至目标节点,分析待上链数据得到数据分析结果,判断数据分析结果是否用于表示待上链数据满足预设的数据上链条件,若满足,则确定待上链数据对应的目标区块并将待上链数据存储至目标区块,能够提高确定每个共识节点的权重信息的准确性和可靠性,从而能够提高确定目标主节点的准确性和可靠性,能够通过区块链和联盟链对数据的进行分析进而进行数据存储,进而保证实现数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在另一个可选的实施例中,所述确定模块301基于所有所述共识节点的节点权重信息,确定目标主节点的具体方式包括:
针对所述区块链网络中的每个所述共识节点,将该共识节点的节点权重信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的节点权重信息;
针对所述区块链网络中的每个所述共识节点,基于该共识节点所接收到的所有所述剩余节点的节点权重信息执行选举操作,得到选举信息,并将所述选举信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的选举信息;
基于所有所述共识节点的选举信息,确定目标主节点。
可见,实施图3所描述的装置能够将每个共识节点的节点权重信息广播至区块链网络中的每个共识节点处,以使每个共识节点基于所接收到的节点权重信息执行选举操作,得到选举信息,并基于所有共识节点的选举信息确定目标主节点,能够提高确定目标主节点的准确性和可靠性,以及能够提高确定目标主节点的智能性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,所述分析模块303分析所述待上链数据,得到数据分析结果的具体方式包括:
提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果;
当所述第一数据校验结果用于表示所述待上链数据满足预设的数据认证条件时,确定所述待上链数据的上链请求信息,并将所述上链请求信息广播至所述区块链网络中的所有所述共识节点,所述上链请求信息包括所述待上链数据以及所述待上链数据的摘要信息;
对所述上链请求信息执行第二校验操作,得到第二校验信息,将所述第二校验信息广播至所述区块链网络中的所有所述共识节点,以使每个所述共识节点根据所述第二校验信息对所述待上链数据执行数据检查操作,得到每个所述共识节点的数据检查结果,并根据所有所述共识节点的数据检查结果,生成数据检查结果集合;
基于所述数据检查结果集合,生成数据分析结果。
可见,实施图3所描述的装置能够基于数据来源信息执行第一校验操作得到第一数据校验结果,当第一数据校验结果用于表示待上链数据满足预设的数据认证条件时,确定待上链数据的上链请求信息,并将上链请求信息广播至区块链网络中的所有共识节点,对上链请求信息执行第二校验操作得到第二校验信息,将第二校验信息广播至区块链网络中的所有共识节点处,以使每个共识节点对待上链数据执行数据检查操作得到数据检查结果,进而生成数据检查结果集合,并基于数据检查结果集合生成数据分析结果,能够提高生成数据分析结果的准确性和可靠性,从而能够提高判断待上链数据是否满足预设的数据上链条件的准确性和可靠性,进而有利于提高将待上链数据存储至目标区块的准确性、可靠性以及智能性,以及有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,所述分析模块303提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果的具体方式包括:
确定所述目标节点对应的目标区块链数据库,并在所述目标区块链数据库中确定第一标识符;
提取所述待上链数据对应的发送端信息,所述发送端信息包括所述待上链数据对应的公钥加密信息以及数字标识信息;
在所述目标区块链数据库中与所述公钥加密信息相匹配的目标公钥,基于所述目标公钥对所述数字标识信息进行解密,得到数据解密结果,基于所述数据解密结果,确定第二标识符;
基于所述第一标识符和第二标识符以及所述数据解密结果,确定所述第一标识符和所述第二标识符的比对关系,根据所述比对关系确定第一数据校验结果。
可见,实施图3所描述的装置能够确定第一标识符,并基于对数字标识信息进行解密得到的数据解密结果确定第二标识符,并基于第一标识符、第二标识符以及数据解密结果确定比对关系并进一步的确定第一数据校验结果,能够基于第一标识符和第二标识符确定第一标识符和第二标识符之间的比对关系,有利于提高确定比对关系的准确性和可靠性,从而有利于提高确定第一数据校验结果的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,所述数据检查结果集合中包括多个所述数据检查结果;
所述分析模块303基于所述数据检查结果集合,生成数据分析结果的具体方式包括:
根据所述数据检查结果集合中所包括的每个所述数据检查结果,确定所述数据检查结果集合中用于表示数据比对一致的目标数据检查结果的目标数量;
判断所述目标数量是否大于等于预设的数量阈值;
当判断出所述目标数量大于等于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件;
当判断出所述目标数量小于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据不满足预设的所述数据上链条件。
可见,实施图3所描述的装置能够根据数据检查结果集合中所包括的所有数据检查结果确定数据检查结果集合中目标数据检查结果的目标数量,并判断目标数量是否大于等于预设的数量阈值,并基于该判断结果生成数据分析结果,能够提高生成数据分析结果的准确性和可靠性,从而有利于提高判断待上链数据是否满足预设的数据上链条件的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
在又一个可选的实施例中,所述分析模块303对所述上链请求信息执行第二校验操作,得到第二校验信息的具体方式包括:
将所述上链请求信息中的所述待上链数据的摘要信息确定为第一摘要信息,并根据所述待上链数据,生成第二摘要信息;
对所述第一摘要信息与所述第二摘要信息执行第二校验操作,得到对比结果,所述对比结果用于表示所述第一摘要信息和所述第二摘要信息之间的相似程度;
基于所述对比结果以及所述待上链数据,生成第二校验信息。
可见,实施图3所描述的装置能够确定待上链数据的第一摘要信息以及第二摘要信息并执行第二校验操作,得到对比结果,并基于对比结果和待上链数据,生成第二校验信息,能够提高生成第二校验信息的准确性和可靠性,从而能够提高得到每个共识节点的数据检查结果的准确性和可靠性,以及能够提高生成数据分析结果的准确性和可靠性,进而有利于提高数据存储的安全性、完整性以及真实性,有利于提高数据存储的智能性,以及有利于提高数据存储和数据分析的真实性。
实施例四
请参阅图4,图4是本发明实施例公开的另一种基于区块链共识的物联网源端数据存储装置的结构示意图。如图4所示,该基于区块链共识的物联网源端数据存储装置可以包括:
存储有可执行程序代码的存储器401;
与存储器401耦合的处理器402;
处理器402调用存储器401中存储的可执行程序代码,执行本发明实施例一或本发明实施例二所描述的基于区块链共识的物联网源端数据存储方法中的步骤。
实施例五
本发明实施例公开了一种计算机可存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一或本发明实施例二所描述的基于区块链共识的物联网源端数据存储方法中的步骤。
实施例六
本发明实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行实施例一或实施例二中所描述的基于区块链共识的物联网源端数据存储方法中的步骤。
以上所描述的装置实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种基于区块链共识的物联网源端数据存储装置及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (9)
1.一种基于区块链共识的物联网源端数据存储方法,其特征在于,所述方法包括:
当检测到存在源端采集的待上链数据需要接入区块链网络时,确定所述待上链数据对应的目标节点;
从所述区块链网络中所包括的所有共识节点中确定出目标主节点;
基于所述目标主节点,将所述区块链网络中所存在的所有共识节点中所包括的数据同步至所述目标节点;
分析所述待上链数据,得到数据分析结果,判断所述数据分析结果是否用于表示所述待上链数据满足预设的数据上链条件;
当判断出所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件时,确定所述待上链数据对应的目标区块,并将所述待上链数据存储至所述目标区块;
所述分析所述待上链数据,得到数据分析结果,包括:
提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果;
当所述第一数据校验结果用于表示所述待上链数据满足预设的数据认证条件时,确定所述待上链数据的上链请求信息,并将所述上链请求信息广播至所述区块链网络中的所有所述共识节点,所述上链请求信息包括所述待上链数据以及所述待上链数据的摘要信息;
对所述上链请求信息执行第二校验操作,得到第二校验信息,将所述第二校验信息广播至所述区块链网络中的所有所述共识节点,以使每个所述共识节点根据所述第二校验信息对所述待上链数据执行数据检查操作,得到每个所述共识节点的数据检查结果,并根据所有所述共识节点的数据检查结果,生成数据检查结果集合;
基于所述数据检查结果集合,生成数据分析结果。
2.根据权利要求1所述的基于区块链共识的物联网源端数据存储方法,其特征在于,所述从所述区块链网络中所包括的所有共识节点中确定出目标主节点,包括:
向所述区块链网络广播握手信息,以获取所述区块链网络中所存在的每个共识节点的节点信息;
基于所有所述共识节点的节点信息,确定所述区块链网络中每个所述共识节点的节点权重信息,并基于所有所述共识节点的节点权重信息,确定目标主节点。
3.根据权利要求2所述的基于区块链共识的物联网源端数据存储方法,其特征在于,所述基于所有所述共识节点的节点权重信息,确定目标主节点,包括:
针对所述区块链网络中的每个所述共识节点,将该共识节点的节点权重信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的节点权重信息;
针对所述区块链网络中的每个所述共识节点,基于该共识节点所接收到的所有所述剩余节点的节点权重信息执行选举操作,得到选举信息,并将所述选举信息广播至所述区块链网络中除该共识节点外的所有剩余节点处,以使所有所述剩余节点接收该共识节点的选举信息;
基于所有所述共识节点的选举信息,确定目标主节点。
4.根据权利要求3所述的基于区块链共识的物联网源端数据存储方法,其特征在于,所述提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果,包括:
确定所述目标节点对应的目标区块链数据库,并在所述目标区块链数据库中确定第一标识符;
提取所述待上链数据对应的发送端信息,所述发送端信息包括所述待上链数据对应的公钥加密信息以及数字标识信息;
在所述目标区块链数据库中与所述公钥加密信息相匹配的目标公钥,基于所述目标公钥对所述数字标识信息进行解密,得到数据解密结果,基于所述数据解密结果,确定第二标识符;
基于所述第一标识符和第二标识符以及所述数据解密结果,确定所述第一标识符和所述第二标识符的比对关系,根据所述比对关系确定第一数据校验结果。
5.根据权利要求4所述的基于区块链共识的物联网源端数据存储方法,其特征在于,所述数据检查结果集合中包括多个所述数据检查结果;
所述基于所述数据检查结果集合,生成数据分析结果,包括:
根据所述数据检查结果集合中所包括的每个所述数据检查结果,确定所述数据检查结果集合中用于表示数据比对一致的目标数据检查结果的目标数量;
判断所述目标数量是否大于等于预设的数量阈值;
当判断出所述目标数量大于等于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件;
当判断出所述目标数量小于预设的所述数量阈值时,确定所述数据分析结果用于表示所述待上链数据不满足预设的所述数据上链条件。
6.根据权利要求5所述的基于区块链共识的物联网源端数据存储方法,其特征在于,所述对所述上链请求信息执行第二校验操作,得到第二校验信息,包括:
将所述上链请求信息中的所述待上链数据的摘要信息确定为第一摘要信息,并根据所述待上链数据,生成第二摘要信息;
对所述第一摘要信息与所述第二摘要信息执行第二校验操作,得到对比结果,所述对比结果用于表示所述第一摘要信息和所述第二摘要信息之间的相似程度;
基于所述对比结果以及所述待上链数据,生成第二校验信息。
7.一种基于区块链共识的物联网源端数据存储装置,其特征在于,所述装置包括:
确定模块,用于当检测到存在源端采集的待上链数据需要接入区块链网络时,确定所述待上链数据对应的目标节点,从所述区块链网络中所包括的所有共识节点中确定出目标主节点;
同步模块,用于基于所述目标主节点,将所述区块链网络中所存在的所有共识节点中所包括的数据同步至所述目标节点;
分析模块,用于分析所述待上链数据,得到数据分析结果;
判断模块,用于判断所述数据分析结果是否用于表示所述待上链数据满足预设的数据上链条件;
所述确定模块,还用于当所述判断模块判断出所述数据分析结果用于表示所述待上链数据满足预设的所述数据上链条件时,确定所述待上链数据对应的目标区块;
存储模块,用于将所述待上链数据存储至所述目标区块;
其中,所述分析模块分析所述待上链数据,得到数据分析结果的具体方式包括:
提取所述待上链数据的数据来源信息,并对所述数据来源信息执行第一校验操作,得到第一数据校验结果;
当所述第一数据校验结果用于表示所述待上链数据满足预设的数据认证条件时,确定所述待上链数据的上链请求信息,并将所述上链请求信息广播至所述区块链网络中的所有所述共识节点,所述上链请求信息包括所述待上链数据以及所述待上链数据的摘要信息;
对所述上链请求信息执行第二校验操作,得到第二校验信息,将所述第二校验信息广播至所述区块链网络中的所有所述共识节点,以使每个所述共识节点根据所述第二校验信息对所述待上链数据执行数据检查操作,得到每个所述共识节点的数据检查结果,并根据所有所述共识节点的数据检查结果,生成数据检查结果集合;
基于所述数据检查结果集合,生成数据分析结果。
8.一种基于区块链共识的物联网源端数据存储装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-6任一项所述的基于区块链共识的物联网源端数据存储方法。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-6任一项所述的基于区块链共识的物联网源端数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211660436.4A CN115632800B (zh) | 2022-12-22 | 2022-12-22 | 基于区块链共识的物联网源端数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211660436.4A CN115632800B (zh) | 2022-12-22 | 2022-12-22 | 基于区块链共识的物联网源端数据存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115632800A CN115632800A (zh) | 2023-01-20 |
CN115632800B true CN115632800B (zh) | 2023-05-05 |
Family
ID=84910261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211660436.4A Active CN115632800B (zh) | 2022-12-22 | 2022-12-22 | 基于区块链共识的物联网源端数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115632800B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111294356A (zh) * | 2020-02-11 | 2020-06-16 | 深圳壹账通智能科技有限公司 | 基于区块链的组织节点上链方法和系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737104A (zh) * | 2019-10-25 | 2020-10-02 | 北京沃东天骏信息技术有限公司 | 区块链网络服务平台及其测试用例共享方法、存储介质 |
CN110796547A (zh) * | 2019-10-30 | 2020-02-14 | 桂林电子科技大学 | 一种基于联盟区块链的改进的实用拜占庭容错系统 |
CN111612455A (zh) * | 2020-04-21 | 2020-09-01 | 国网江苏省电力有限公司电力科学研究院 | 一种面向用电信息保护的拜占庭容错联盟链共识方法及其系统、存储介质 |
CN113179166B (zh) * | 2021-04-13 | 2022-07-08 | 华东师范大学 | 基于高鲁棒性拜占庭容错的联盟链数据安全实时上链方法 |
CN114390068A (zh) * | 2022-01-04 | 2022-04-22 | 青岛海尔电冰箱有限公司 | 区块链共识方法及计算机可读存储介质 |
CN115085926A (zh) * | 2022-02-23 | 2022-09-20 | 中通服中睿科技有限公司 | 基于区块链和物联网数据汇聚闸道的数据采集方法及系统 |
CN115208779B (zh) * | 2022-09-14 | 2022-12-02 | 图林科技(深圳)有限公司 | 基于区块链和大数据的数据流监测方法及云计算服务平台 |
-
2022
- 2022-12-22 CN CN202211660436.4A patent/CN115632800B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111294356A (zh) * | 2020-02-11 | 2020-06-16 | 深圳壹账通智能科技有限公司 | 基于区块链的组织节点上链方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115632800A (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112446785A (zh) | 跨链交易方法、系统、装置、设备和存储介质 | |
TW200939063A (en) | Record system and method based on one-way hash function | |
CN109861996B (zh) | 基于区块链的关系证明方法、装置、设备及存储介质 | |
CN111881481B (zh) | 基于区块链的医疗数据处理方法、装置、设备及存储介质 | |
CN113282603A (zh) | 区块链共识节点校验方法、装置、设备以及存储介质 | |
CN111654395B (zh) | 投票信息处理方法、装置、设备以及存储介质 | |
CN110611647A (zh) | 一种区块链系统上的节点加入方法和装置 | |
CN111538784A (zh) | 一种基于区块链的数字资产交易方法、装置及存储介质 | |
CN112311779B (zh) | 应用于区块链系统的数据访问控制方法及装置 | |
CN111753334A (zh) | 一种联盟链跨链数据一致性验证方法、装置和电子设备 | |
CN109698806B (zh) | 一种用户数据校验方法及系统 | |
CN111209339B (zh) | 区块同步方法、装置、计算机以及存储介质 | |
CN114827150B (zh) | 一种物联网终端数据上链适配方法、系统及存储介质 | |
CN110941840A (zh) | 一种数据处理方法、系统及终端 | |
CN113630421A (zh) | 基于非对称加密算法防web系统数据移植方法 | |
CN115632800B (zh) | 基于区块链共识的物联网源端数据存储方法及装置 | |
CN112039675A (zh) | 一种基于区块链智能合约的令牌生成与认证方法 | |
CN109167665B (zh) | 一种机器人竞赛规则管理系统 | |
CN113992336B (zh) | 基于区块链的加密网络离线数据可信交换方法及装置 | |
CN107222453A (zh) | 一种文件传输方法及装置 | |
CN112465516B (zh) | 基于区块链网络的设备管理方法,相关设备及存储介质 | |
CN110443616B (zh) | 基于随机门限签名机制的拜占庭容错共识方法 | |
CN108848089B (zh) | 一种数据加密方法及数据传输系统 | |
CN113326527A (zh) | 一种基于区块链的可信数字签名系统及方法 | |
CN112968864A (zh) | 一种可信的IPv6网络服务过程机制 |
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 |