CN109815732B - 一种基于联盟链的车间数据存储与访问系统、方法及装置 - Google Patents

一种基于联盟链的车间数据存储与访问系统、方法及装置 Download PDF

Info

Publication number
CN109815732B
CN109815732B CN201910020919.XA CN201910020919A CN109815732B CN 109815732 B CN109815732 B CN 109815732B CN 201910020919 A CN201910020919 A CN 201910020919A CN 109815732 B CN109815732 B CN 109815732B
Authority
CN
China
Prior art keywords
workshop
data
node
block
access
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.)
Expired - Fee Related
Application number
CN201910020919.XA
Other languages
English (en)
Other versions
CN109815732A (zh
Inventor
许方敏
赵成林
杨帆
李斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910020919.XA priority Critical patent/CN109815732B/zh
Publication of CN109815732A publication Critical patent/CN109815732A/zh
Application granted granted Critical
Publication of CN109815732B publication Critical patent/CN109815732B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明实施例提供了一种基于联盟链的车间数据存储与访问系统、方法及装置。该方法包括:第一车间节点根据数据采集设备发送的第一车间数据,生成第一传输数据;并将第一传输数据广播至联盟链中的各车间节点;根据预设共识机制,选出一个车间节点生成区块,并将该区块广播至其它车间节点;其余车间节点获取并判断第一区块中的数据是否达到预设的存储条件;若达到,则存储区块;当第一车间节点接收到访问设备发送的访问请求时,判断访问设备是否具有访问权限;若有,则显示数据,同时联盟链中各节点之间的数据传输需进行数字签名。此发明避免了工业车间数据被恶意设备查看以及篡改,提高了工业车间数据的机密性和完整性。

Description

一种基于联盟链的车间数据存储与访问系统、方法及装置
技术领域
本发明涉及互联网应用技术领域,特别是涉及一种基于联盟链的车间数据存储与访问系统、方法及装置。
背景技术
工业产品的生产过程可划分为多个阶段,每个阶段由车间设备生产产品的不同零部件,且一件成品需要不同车间设备协调合作完成。例如,某产品的生产过程可以分为毛坯制造、零件加工和产品包装三个阶段,且零件加工阶段需要在毛坯制造阶段完成的基础上,根据毛坯制造阶段相应的产品零部件的参数信息完成零件加工阶段相应的部件生产。同时,企业需根据设备操作、生产以及维护数据对工厂设备,订单生产安排以及库存进行统一管理。
现有技术中每个车间设备生成的多数设备的操作、生产和维护数据多数沉积在车间级设备中,无法实现信息互联互通;少数数据统一上传至中心化服务器,例如目前采用的ERP(Enterprise Resource Planning,企业资源计划)系统,具备管理员权限的用户或设备可以接入并修改中心化数据库中的数据。
发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
在传统的生产模式下,设备的操作、生产和维护数据是存储在单一、孤立的系统中,形成信息孤岛,不利于各部门、各车间信息的流通;同时具备管理员权限的用户或设备企业可以对中心化服务器数据进行修改,难以确保记录的真实性与一致性。
发明内容
本发明实施例的目的在于提供一种基于联盟链的车间数据存储与访问系统、方法及装置,以提高工业车间数据的保密性。
具体技术方案如下:
第一方面,提供了一种基于联盟链的车间数据存储与访问系统,所述系统包括:数据采集设备、联盟链中的多个车间节点和访问设备;其中,
所述数据采集设备,用于向联盟链中的第一车间节点发送第一车间数据;
所述第一车间节点,用于根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
所述第一车间节点,还用于将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据,并将所述第一传输数据发送至所述联盟链中的各车间节点;
所述联盟链中的各车间节点,用于根据接收到的第一传输数据和预设的共识算法,确定生成区块的记账节点;其中,所述区块中包括第一车间数据和未处理数据池中的部分数据;
若所述第一车间节点为所述联盟链中的记账节点,则所述第一车间节点还用于将未处理数据池中的部分数据和所述第一车间数据,组成包含第一车间数据的区块;并将所述包含第一车间数据的区块发送给所述联盟链中的各车间节点;
若所述第一车间节点不是所述联盟链中的记账节点,则所述第一车间节点还用于接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证;所述联盟链中的记账节点将所述包含第一车间数据的区块发送给所联盟链中各车间节点;
所述联盟链中的各车间节点,还用于判断所述包含第一车间数据的区块是否达到预设的存储条件,若所述包含第一车间数据的区块达到预设的存储条件,则所述联盟链中的各车间节点分别存储所述包含第一车间数据的区块;
所述访问设备,用于向所述第一车间节点发送针对所述第一车间节点存储的区块中的第一车间数据的访问请求;
所述第一车间节点,还用于接收所述访问设备发送的访问请求,并判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;当所述访问设备对所述第一车间节点中存储的区块中的第一车间数据具有访问权限时,则所述第一车间节点显示所述第一车间数据,并生成访问记录。
第二方面,提供了一种基于联盟链的车间数据存储与访问方法,所述方法应用于联盟链中的第一车间节点,所述联盟链中包含多个车间节点,所述方法包括:
接收第一车间节点的数据采集设备发送的第一车间数据;
根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,并将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据;其中,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
将所述第一传输数据发送至所述联盟链中的各车间节点;
获取包含第一车间数据的区块,所述区块包括第一车间数据和未处理数据池中的部分数据;
判断所述区块是否达到预设的存储条件;
若所述区块达到预设的存储条件,则存储所述区块;
当接收到访问设备发送的针对所述第一车间节点存储的区块中的第一车间数据的访问请求时,判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;
若访问设备对所述区块中的第一车间数据具有访问权限,则显示所述第一车间数据,并生成访问记录。
可选的,所述获取包含第一车间数据的区块的步骤,可以包括:
若所述第一车间节点是所述联盟链中的记账节点,则将所述第一车间数据和未处理数据池中的部分数据,组成包含第一车间数据的区块;
若所述第一车间节点不是所述联盟链中的记账节点,则接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证。
可选的,所述判断所述区块是否达到预设的存储条件的步骤,可以包括:
判断所述区块中的第一车间数据是否满足预设的存储阈值;其中,所述预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;
若所述第一车间数据大于或等于第一存储阈值,且所述车间数据小于或等于第二存储阈值,则确定所述第一车间数据达到预设的存储阈值。
可选的,所述访问请求可以包括所述访问设备的设备标识;
所述判断所述访问设备对所述区块中的第一车间数据是否具有访问权限的步骤,可以包括:
在预设策略库中查找所述访问设备的设备标识;其中,所述预设策略库中保存有对所述联盟链中各车间节点存储的区块中的车间数据具有访问权限的访问设备的设备标识;
若所述预设策略库中存在所述访问设备的访问标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据具有访问权限;
若所述预设策略库中不存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据没有访问权限。
第三方面,提供了一种基于联盟链的车间数据存储与访问装置,所述装置应用于联盟链中的第一车间节点,所述联盟链中包含多个车间节点,所述装置包括:
第一车间数据接收模块,用于接收第一车间节点的数据采集设备发送的第一车间数据;
第一传输数据组成模块,用于根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,并将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据;其中,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
第一传输数据发送模块,用于将所述第一传输数据发送至所述联盟链中的各车间节点;
区块获取模块,用于获取包含第一车间数据的区块,所述区块包括第一车间数据和未处理数据池中的部分数据;
区块判断模块,用于判断所述区块是否达到预设的存储条件;
区块存储模块,用于若所述区块达到预设的存储条件,则存储所述区块;
访问权限判断模块,用于当接收到访问设备发送的针对所述第一车间节点存储的区块中的第一车间数据的访问请求时,判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;
第一车间数据显示模块,用于若所述访问设备对所述区块中的第一车间数据具有访问权限,则显示所述第一车间数据,并生成访问记录。
可选的,所述区块获取模块,可以包括:
记账节点确定子模块,用于若所述第一车间节点是所述联盟链中的记账节点,则将所述第一车间数据和未处理数据池中的部分数据,组成包含第一车间数据的区块;若所述第一车间节点不是所述联盟链中的记账节点,则接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证。
可选的,所述区块判断模块,可以包括:
判断子模块,用于判断所述区块中的第一车间数据是否满足预设的存储阈值;其中,所述预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;
满足存储子模块,用于若所述第一车间数据大于或等于第一存储阈值,且所述第一车间数据小于或等于第二存储阈值,则确定所述第一车间数据达到预设的存储阈值。
可选的,所述访问请求可以包括所述访问设备的设备标识;
所述访问权限判断模块,可以包括:
设备标识查找子模块,用于在预设策略库中查找所述访问设备的设备标识;其中,所述预设策略库中保存有对所述联盟链中各车间节点存储的车间数据具有访问权限的访问设备的设备标识;
访问权限确定子模块,用于若所述预设策略库中存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据具有访问权限;若所述预设策略库中不存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据没有访问权限。
第四方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现以下方法步骤:
接收第一车间节点的数据采集设备发送的第一车间数据;
根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,并将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据;其中,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
将所述第一传输数据发送至所述联盟链中的各车间节点;
获取包含第一车间数据的区块,所述区块包括第一车间数据和未处理数据池中的部分数据;
判断所述区块是否达到预设的存储条件;
若所述区块达到预设的存储条件,则存储所述区块;
当接收到访问设备发送的针对所述第一车间节点存储的区块中的第一车间数据的访问请求时,判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;
若访问设备对所述区块中的第一车间数据具有访问权限,则显示所述第一车间数据,并生成访问记录。
第五方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一基于联盟链的车间数据存储与访问方法步骤。
第六方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的基于联盟链的车间数据存储与访问方法。
本发明实施例提供了一种基于联盟链的车间数据存储与访问系统、方法及装置,第一车间节点根据数据采集设备发送的第一车间数据,生成第一传输数据;并将第一传输数据广播至联盟链中的各车间节点,第一传输数据被加入各个车间节点数据池中;根据预设的共识机制,选出一个车间节点作为记账节点对数据池中包含第一车间数据的部分数据进行打包,生成包含第一车间数据的区块,并将该区块广播至联盟链中其它车间节点;其余车间节点接收并验证该区块中的所有数据是否合法之后,判断该包含第一车间数据的区块中的所有数据是否达到预设的存储条件;若达到,则存储区块;当第一车间节点接收到访问设备发送的访问请求时,判断访问设备是否对包含第一车间数据的区块中的第一车间数据具有访问权限;若有,则显示第一车间数据,并生成访问记录,在联盟链中存储。由于联盟链车间数据存储与访问系统中各节点之间的数据传输需进行数字签名,则接收节点在解密后,通过对数字签名中的摘要信息进行对比验证,确定该车间数据在传输的过程中是否被恶意设备私自篡改以及数据源是否为合法设备。通过基于联盟链的车间数据存储及访问系统、方法及装置对车间数据进行存储和访问控制,避免了工业车间数据被恶意设备查看以及篡改,提高了工业车间数据的机密性以及完整性。
当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于联盟链的车间数据存储与访问系统的结构示意图;
图2为本发明实施例提供的一种基于联盟链的车间数据存储与访问方法的流程示意图;
图3为本发明实施例提供的基于联盟链的车间数据存储与访问装置的一种结构示意图;
图4为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高工业车间数据的机密性与完整性,本发明实施例提供了一种基于联盟链的车间数据存储与访问系统、方法及装置,以下分别进行详细说明。
本发明实施例中的车间数据存储与访问系统和方法是基于联盟链工业企业数字信息网络架构,只针对特定群体的成员和有限的第三方通过该联盟链开放的访问系统和方法,对联盟链中的数据进行存储,以及限定查询基础理论实现的。具体的,在本发明实施例中将每个授权加入联盟链中的车间作为一个车间节点。每个车间可以包括多台设备,如,用于保证车间节点各功能实现的服务器、生成产品的产品生产设备和用于采集数据的数据采集设备等。车间节点的服务器中可以设置有用于存储数据的联盟链单元,车间节点生成的区块以串联的形式连接起来形成联盟链,存储在服务器中的联盟链单元中。其中,每个区块中存储有多条访问记录。
联盟链中的每个车间节点都需要通过身份验证,只有通过身份验证(即授权)的车间节点才可以加入联盟链中,且联盟链中的每个车间节点可以获取到联盟链中所有车间节点的身份信息。介于联盟链中的每个车间节点可以获取到联盟链中所有车间节点的身份信息,可以对联盟链采取一系列安全措施。例如,当联盟链中的某个车间节点中的数据采集设备,检测到某恶意设备对其采集的车间数据进行不良操作时,例如,篡改或非法访问车间数据,该数据采集设备可以按照就近原则,将预设的告警信息发送给联盟链中的某一车间节点。接收到该警告信息的车间节点,将接收到的告警信息在联盟链中进行广播,其余车间节点根据接收到的告警信息,将不再处理该车间节点发送的车间数据,从而防止恶意设备访问车间数据或恶意设备连入联盟链中。
当联盟链中的某个车间节点接收到不具有访问权限的访问设备发送的访问请求时,该访问设备可以向该车间节点的所有者进行访问权限变更申请,若权限变更通过,则可对相应权限数据进行访问。例如,不具有访问权限的设备向联盟链中的某个车间节点发出管理权限变更请求,请求可以包括访问设备标识以及请求内容。之后,由该车间节点的所有者即车间管理员识别该请求,若该权限变更请求通过车间管理员的验证,则该访问设备具有访问该车间节点中存储的车间数据的权限。
参见图1,本发明实施例提供的一种基于联盟链的车间数据存储与访问系统,该系统可以包括:数据采集设备101、联盟链中的多个车间节点102.n和访问设备103。其中,n的取值可以为1,2,3,…。
数据采集设备101,用于向联盟链中的第一车间节点102.1发送第一车间数据;
第一车间节点102.1,用于根据预设的数字签名算法,确定第一车间数据对应的数字签名;其中,第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
第一车间节点102.1,还用于将第一车间数据和第一车间数据对应的数字签名,组成第一传输数据,并将第一传输数据发送至联盟链中的各车间节点;
联盟链中的各车间节点102.n,用于根据预设的共识算法,确定生成区块的记账节点;其中,区块中包括第一车间数据和未处理数据池中的部分数据;
若第一车间节点102.1为联盟链中的记账节点,则第一车间节点还用于并将未处理数据池中的部分数据和所述第一车间数据,组成包含第一车间数据的区块,并将包含第一车间数据的区块发送给联盟链中的各车间节点;
若第一车间节点不是联盟链中的记账节点,则第一车间节点还用于接收联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证;联盟链中的记账节点将包含第一车间数据的区块发送给联盟链中的各车间节点;
联盟链中的各车间节点102.n,还用于判断包含第一车间数据的区块是否达到预设的存储条件,若包含第一车间数据的区块达到预设的存储条件,则联盟链中的各车间节点分别存储包含第一车间数据的区块;
访问设备103,用于向第一车间节点102.1发送针对第一车间节点存储的区块中的第一车间数据的访问请求;
第一车间节点102.1,还用于接收访问设备103发送的访问请求,并判断访问设备对区块中的第一车间数据是否具有访问权限;当访问设备对第一车间节点中存储的区块中的第一车间数据具有访问权限时,则第一车间节点显示第一车间数据,并生成访问记录。
由于本发明实施例中,车间数据访问系统中的数据采集设备101、联盟链中的各车间节点102.n和访问设备103之间传输的数据都是经过数字签名、以及非对称加密之后的数据,避免了工业数字信息网络中的车间数据在传输的过程中,被被恶意设备擅自截获和篡改,从而提高了工业车间存储的数据的正确性。
并且,在本发明实施例中,将联盟链中的共识机制与智能合约理论应用到工业数字信息网络中,为工业数字信息网络车间数据的存储与访问提供了强大的保护措施,从而避免了工业数字信息网络中的车间数据被恶意用户或设备查看或篡改,提高了工业车间数据的机密性、完整性。
参见图2,本发明实施例提供的一种基于联盟链的车间数据存储与访问方法,该方法应用于联盟链中的第一车间节点,联盟链中包含多个车间节点,该方法可以包括如下步骤:
S101:接收第一车间节点的数据采集设备发送的第一车间数据。
在实际应用中,车间节点的服务器中存储的数据种类很多,本发明实施例将车间节点的服务器中存储的所有数据称为车间数据。其中,车间数据可以包括产品数据,也可以包括设备状态数据等其他数据。例如,当某车间节点中的产品生成设备生产的产品为轮胎时,第一车间数据可以包括产品名称、材质、尺寸、转入地址、转入数量、转出地址、转出数量等。同时,第一设备状态数据,可以包括设备名称、生产厂家、型号、功能、以及相关状态参数包括工作电压、工作电流和震动系数等。
在实施时,部分数据采集设备可以按照一定的周期收集生产设备生成的第一产品数据,部分数据采集设备还可以按照一定的周期收集第一设备状态数据。部分数据采集设备通过车间现场总线网络或无线网络,先将第一车间数据进行数字签名,然后,将第一车间数据及其对应的数字签名发送给第一车间节点;以便该车间数据的后续存储。例如,数据采集设备为传感器,当传感器收集到产品数据或设备状态数据时,将该数据发送到本车间节点中具有存储功能的服务器中。服务器在接收到该车间数据之后,执行步骤S102。其中,对第一车间数据进行数字签名的过程可以参加步骤S102中,生成第一车间数据对应的数字签名的步骤。
当然,联盟链中的各车间节点中的数据采集设备不仅可以采集本车间节点中的特定产品数据,还可以采集其他车间节点中的各类车间数据。本发明实施例中只是提供了一种数据采集设备采集数据的方式,还可以存在其他采集方式,本发明不做具体限定。
S102:根据预设的数字签名算法,确定第一车间数据对应的数字签名,并将第一车间数据和第一车间数据对应的数字签名,组成第一传输数据。
其中,第一车间数据对应的数字签名可以为第一车间数据对应的加密传输哈希值。
在实施时,当联盟链中的第一车间节点中的数据采集设备将收集的第一车间数据,及该第一车间数据对应的数字签名发送给第一车间节点的具有存储功能的服务器之后,第一车间节点对该第一车间数据对应的数字签名进行解密。具体的,第一车间节点可以通过记录的数据采集设备的公钥,和预设的解密算法,对第一车间数据对应的数字签名进行解密,得到数据采集设备发送给该车间节点的哈希值。并利用预设的哈希公式,对该第一车间数据进行哈希运算,得到第一车间数据对应的哈希值,然后,第一车间节点在判断上述解密之后的哈希值和本车间节点计算确定的哈希值是否一致。若上述解密之后的哈希值和本车间节点计算确定的哈希值一样,则说明第一车间数据没有被数据采集设备修改,同时在传输的过程中没有被其他恶意设备修改过。
之后,第一车间节点根据预设的哈希公式,对第一车间数据进行哈希计算,得到第一车间数据对应的哈希值。第一车间节点再根据数字签名算法中的加密算法,利用第一车间节点的私钥,对第一车间数据对应的哈希值进行加密运算,得到该哈希值对应的加密哈希值。最后,第一车间节点将第一车间数据对应的加密哈希值和该第一车间数据,组成第一传输数据,并将该第一传输数据发送给联盟链中的各车间节点。
由于联盟链中各车间节点传输的是携带数字签名的车间数据,而不是车间数据本身,当联盟链中的其他车间节点,接收到携带数字签名的车间数据之后,通过对数字签名中的哈希值进行验证,确定该车间数据在传输的过程中是否被恶意设备私自篡改,从而保证了车间节点中各车间数据的传输完整性与不可抵赖性。
S103:将第一传输数据发送至联盟链中的各车间节点。
在实际应用中,联盟链中的各车间节点,通过P2P(Peer To Peer,对等网络)网络进行数据传输。由于P2P网络中的各终端设备无需经过中间服务器,直接可以进行数据交互,因此,提高了各终端设备之间进行数据交互的速度,增加了网络的可扩展性以及健壮稳定性,并显著降低了数据建设和维护成本。
在实施时,第一车间节点将上述步骤S102组成的第一传输数据,经由P2P网络广播至联盟链中的各车间节点,即将第一传输数据发送给联盟链中的各车间节点。联盟链中的各车间节点在接收到第一车间节点发送的第一传输数据之后,通过存储的该第一车间节点的公钥,和预设的解密算法,对第一传输数据中的加密哈希值进行解密,得到第一车间节点发送给该车间节点的哈希值。并利用预设的哈希公式,对第一传输数据中的第一车间数据进行哈希运算,得到第一车间数据对应的哈希值。联盟链中的各车间节点,通过对比上述解密之后的哈希值和本车间节点计算确定的哈希值是否一样,确定第一车间节点发送的第一传输数据在传输的过程中是否被其他恶意车间节点或访恶意设备修改过。若上述解密之后的哈希值和本车间节点计算确定的哈希值是一样的,则说明第一车间数据在传输的过程中没有被其他恶意设备修改过,然后第一车间节点将第一车间数据添加到未处理数据池中。其中,联盟链中的每个车间节点都对应一个未处理数据池,且该数据池中可以包含数据采集设备采集的未被记账节点打包(未处理)成区块的数据。当联盟链中的各车间节点,通过预设的共识机制,确定出记账节点之后,该记账节点对未处理数据池中包含有第一车间数据的部分未处理数据进行打包处理,生成包含第一车间数据的区块。同时,该记账节点将该区块发送给联盟链中其他车间节点。
S104:获取包含第一车间数据的区块。
其中,区块可以包括第一车间数据和未处理数据池中的部分数据,还可以包括区块大小、区块头、计数器和区块体。其中区块头中可以包括版本、父区块哈希值、时间戳;父区块哈希值、时间戳、随机数、区块体中打包了数据池中的各个车间。
在实施时,在第一车间节点将第一传输数据发送至联盟链中的各车间节点,且联盟链中各车间节点接收到上述第一传输数据之后,联盟链中的所有车间节点(包括第一车间节点)根据预设的共识算法,确定出生成区块的车间节点;本发明实施例中将生成区块的车间节点,称为记账节点,也可以称为出块节点。
在一种可能的实现方式中,联盟链中的所有节点,根据预设的共识算法,确定生成包含第一车间数据的区块的记账节点的过程,可以如下:
联盟链中的各车间节点,对各自的未处理数据池中的部分车间数据进行打包,生成一个区块。然后,对该区块进行随机散列运算,例如,共识算法POW(Proof of Work,工作量证明)引入了对某一个特定值的获取工作,比方说SHA-256,通过遍历寻找一个随机数,使得新区块加上随机数的哈希值满足一定的难度条件。其中,哈希值以一个或多个0开始。那么,随着哈希值中0的数目的上升, 找到这个解,所需要的工作量将呈指数增长,而对结果进行检验则仅需要一次随机散列运算。通过不断更换在区块中补增的随机数,使得该给定区块的随机散列值出现了所需的那么多个0。我们通过反复尝试来找到这个随机数,直到找到为止。第一个找到满足条件的随机数的车间节点为本轮生成区块的记账节点。记账节点将该区块广播给联盟链中的其他车间节点,其他车间节点(或称为非记账节点)执行步骤S105。
从上述描述可知,联盟链中每生成一个区块之前,联盟链中的所有车间节点都需要通过预设的共识算法,确定出生成区块的记账节点。也就是说,第一车间节点接收到数据采集设备发送的第一车间数据之后,也可能是第一车间节点为记账节点,生成区块,并将该区块广播至联盟链中的所有车间节点。也有可能是联盟链中的其他车间节点(除第一车间节点之为的其他车间节点)作为记账节点,生成区块,并将该区块广播至联盟链中的所有车间节点。
当然,本发明实施例中提供的共识算法,只是共识机制的一种可选实现算法,还可以存在其他共识算法,本发明不做具体限制。
S105:判断区块是否达到预设的存储条件。
其中,预设的存储条件可以包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值。
在实施时,第一车间节点和联盟链中的各车间节点在接收到上述记账节点发送的区块之后,第一车间节点和联盟链中的各车间节点对区块中的第一车间数据进行验证。具体的,第一车间节点和联盟链中的各车间节点,根据区块中的车间数据类型以及预设的验证机制,对该区块中的车间数据进行验证。如果区块中的数据为非智能合约相关数据,则根据预设阈值,将区块中的车间数据和预设阈值做比较,如果该数据在预设阈值范围内,则该区块中的数据通过验证,即为正确数据(合法数据)。如果该区块中的数据为智能合约相关数据,则根据车间节点中预设的智能合约,车间节点自动验证该区块中的车间数据是否为合法数据。若为合法的,则第一车间节点和联盟链中的各车间节点将该区块存储在联盟链中的末尾;如果区块中的包含第一车间数据的所有数据都未通过验证,则该区块中的数据为错误数据,即不合法数据,则第一车间节点和联盟链中的各车间节点舍弃该区块。
其中,若区块中的车间数据为智能合约相关数据,则联盟链中的各个车间节点运行智能合约账户,发布智能合约。如果转出地址为智能合约账户地址,则根据智能合约规定的规则严格执行相应的操作。例如,当第一车间数据中只包含第一产品数据时,联盟链中的各车间节点接收到的智能合约中,规定了第一车间节点每日最多处理10000个产品,则第一车间节点每日可接受转出地址为第一车间节点的产品数据最大数量为10000,则第一车间节点每日可接收数据采集设备发送的产品数据的最大数量为10000。
可选的,当区块中的车间数据为非智能合约相关数据时,本发明实施例中提供了一种第一车间节点和联盟链中的各车间节点,判断区块是否达到预设的存储条件的实现方式,具体包括如下步骤:
步骤一:判断区块中的第一车间数据是否满足预设的存储阈值。
在实际应用中,联盟链中所有车间节点传输的数据都是携带数字签名的数据。同理,第一车间节点和联盟链中的其他车间节点接收到的区块为携带数字签名的区块;因此,当第一车间节点和联盟链中其他车间节点在接收到区块之后,通过步骤S102中的数字签名的验证方法,对区块的数字签名进行验证,从而保证了记账节点在生成区块时,未私自篡改第一车间节点发送的第一车间数据。
步骤二:若第一车间数据大于或等于第一存储阈值,且车间数据小于或等于第二存储阈值,则确定第一车间数据达到预设的存储阈值。
在实施时,第一车间节点和联盟链中其他车间节点,将通过验证的区块中的第一车间数据和预设的存储阈值进行比较。若第一车间数据大于或等于第一存储阈值,且该车间数据小于或等于第二存储阈值,则确定第一车间数据达到预设的存储阈值。
相应的,当区块中的车间数据为智能合约相关数据时,本发明实施例中提供了一种第一车间节点和联盟链中的各车间节点,判断区块是否达到预设的存储条件的实现方式,具体包括如下步骤:
步骤一:各车间节点接收智能合约账户发布的智能合约。
智能合约账户通过编程和操作数据来定义关于本账户的智能合约。其中,智能合约中可以包含一些预先定义号的规则和条款。
步骤二:当第一车间节点和联盟链中的各车间节点接收到与发布智能合约的账户地址相关的数据信息时,严格按照智能合约中的规则和条款执行。
由于智能合约的不可更改性,保证了发行者和执行者在执行合约过程中无法违约,降低了信任成本。
由于在本发明实施例中,联盟链中的各车间节点在存储区块时,通过判断区块中的产品数据是否满足预设的存储阈值,保证了区块中的车间数据的有效性和工业产品的整个生产过程的合格,同时也有利于工业企业发现问题、追踪问题,优化系统。
S106:若区块达到预设的存储条件,则存储区块。
在实施时,第一车间节点和联盟链中其他车间节点,存储区块,即为将该区块存储在联盟链中末尾。
S107:当接收到访问设备发送的针对第一车间节点存储的区块的第一车间数据的访问请求时,判断访问设备对区块中的第一车间数据是否具有访问权限。
其中,访问请求可以包括访问设备的设备标识,例如,设备标识可以是设备的名称、设备ID。可以理解的是,访问设备的设备标识可以是任何用于标识联盟链中的不同访问设备的标识,本发明不做具体限定。
在实际应用中,访问设备及联盟链节点的用户设备可以包括普通访问设备和基于智能合约的访问设备。智能合约访问设备,基于智能合约的访问设备可以发布智能合约,联盟链中的所有车间节点,接收该智能合约,并根据该智能合约中预设的合约内容,执行相应的操作。例如,上述第一车间节点接收到的智能合约中,记录的内容为第一车间节点每日最多处理10000个产品,则第一车间节点每日可接收数据采集设备发送的产品数据的最大数量为10000;同理,第一车间节点每日可向联盟链中的其他车间节点发送传输数据的最大数量为10000。其中,车间节点可以是基于智能合约的访问设备。
在实施时,普通访问设备向第一车间节点发送针对第一车间节点存储的区块的第一车间数据的访问请求;当第一车间节点接收到普通用户设备发送的访问请求之后,判断该访问设备对区块中的第一车间数据是否具有访问权限;若该访问设备对第一车间节点中存储的区块中的第一车间数据具有访问权限时,则第一车间节点执行步骤S108。
可选的,本发明实施例提供了一种第一车间节点判断访问设备对区块中的第一车间数据是否具有访问权限的具体实现方式,可以包括如下步骤:
步骤一:在预设策略库中查找访问设备的设备标识。
其中,预设策略库中保存有对联盟链中各车间节点存储的区块中的车间数据具有访问权限的访问设备的设备标识。
在实际应用中,上述联盟链中的各车间节点都内置有相同的预设策略库。其中,预设策略库中保存有对联盟链中各车间节点存储的车间数据具有访问权限的访问设备的设备标识。上述联盟链中的访问设备对其他车间节点存储的部分车间数据具有访问权限,并非对车间节点中所有车间数据具有访问权限。
步骤二:若预设策略库中存在访问设备的访问标识,则确定访问设备对第一车间节点存储的区块中的第一车间数据具有访问权限。
步骤三:若预设策略库中不存在访问设备的设备标识,则确定访问设备对第一车间节点存储的区块中的第一车间数据没有访问权限。
在实际应用中,在上述第一车间节点判断出访问设备对区块中的第一车间数据不具备访问权限之后,该访问设备可以向第一车间节点发出访问资格更变申请。第一车间节点在收到该访问设备的访问资格变更申请之后,根据预设的智能合约中关于访问设备访问资格申请变革的验证信息,确定访问设备的访问资格变更申请是否符合预设的访问设备访问资格申请变革的验证信息。若符合,则在预设的策略库中,变革该访问设备的设备标识对第一车间节点的存储数据的访问权限。若不符合,则向该访问设备发送失败信息。
进一步的,本发明提供的另一种可选的实施方式中,上述联盟链中的各车间节点,可以预先约定访问设备对第一车间节点存储的车间数据的访问权限触发条件,并当访问设备对第一车间节点的访问操作达到预先约定的触发条件时,显示第一车间节点的车间数据。并约定在访问设备查看了第一车间节点存储的车间数据之后,自动执行基于访问设备查看到的第一车间节点存储的车间数据的后续执行过程,本发明实施例中,称上述预先约定的内容为智能合约。
举例而言,假设联盟链中第一车间节点存储的车间数据为车间生产产品对应的排污量数据,当用于检测产品数据排污量对应生成的排污费用的访问设备访问第一车间节点中存储的某个产品对应的排污量数据,在上述访问设备满足智能合约中访问设备访问第一车间节点的访问权限时,若该产品对应的排污量数据超过智能合约中预设的排污量阈值,则访问设备无需通知第一车间节点,可以直接扣除上述产品对应的排污量数据超过预设排污量阈值的部分数据对应的排污处理费用。
当然,上述判断访问设备对产品数据是否具有访问权限的实现方式还可以是任何其他可以判断车间节点对存储的产品数据是否具有访问权限的实现方式。
S108:若访问设备对区块中的第一车间数据具有访问权限,则显示第一车间数据,并生成访问记录。
在实施时,若上述访问设备对第一车间节点存储的产品数据具有访问权限,则第一车间节点的服务器将该访问设备请求查看的产品数据发送给该访问设备,以使该访问设备显示该产品数据,并且第一车间节点生成访问记录。
其中,访问记录可以包括访问设备点的设备标识及其对应访问的产品数据内容、用于标识本次访问操作的时间戳和访问设备对应的数字签名。
本发明实施例提供了一种基于联盟链的车间数据存储与访问方法,第一车间节点根据数据采集设备发送的第一车间数据,生成第一传输数据;并将第一传输数据广播至联盟链中的各车间节点,第一传输数据被加入各个车间节点数据池中;根据预设共识机制,选出一个车间节点作为记账节点对数据池中包含第一车间数据的部分数据进行打包,生成包含第一车间数据的区块,并将该区块广播至联盟链中其它车间节点;其余车间节点接收并验证该区块中的所有数据是否合法之后,判断该包含第一车间数据的区块中的所有数据是否达到预设的存储条件;若达到,则存储区块;当第一车间节点接收到访问设备发送的访问请求时,判断访问设备是否对包含第一车间数据的区块中的第一车间数据具有访问权限;若有,则显示第一车间数据,并生成访问记录,在联盟链中存储。由于联盟链车间数据存储与访问系统中各节点之间的数据传输需进行数字签名,则接收节点在解密后,通过对数字签名中的摘要信息进行对比验证,确定该车间数据在传输的过程中是否被恶意设备私自篡改以及数据源是否为合法设备。通过基于联盟链的车间数据存储及访问系统、方法及装置对车间数据进行存储和访问控制,避免了工业车间数据被恶意设备查看以及篡改,提高了工业车间数据的机密性以及完整性。
与上述方法实施例相对应的,本发明实施例还提供了一种基于联盟链的车间数据访问装置,该装置可应用于联盟链中的第一车间节点,其中,联盟链中包含多个车间节点。图3为本发明实施例提供的基于联盟链的车间数据访问装置的结构示意图,该装置可以包括:
第一车间数据接收模块,用于接收第一车间节点的数据采集设备发送的第一车间数据;
第一传输数据组成模块,用于根据预设的数字签名算法,确定第一车间数据对应的数字签名,并将第一车间数据和第一车间数据对应的数字签名,组成第一传输数据;其中,第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
第一传输数据发送模块,用于将第一传输数据发送至联盟链中的各车间节点;
区块获取模块,用于获取包含第一车间数据的区块,区块包括第一车间数据和未处理数据池中的部分数据;
区块判断模块,用于判断区块是否达到预设的存储条件;
区块存储模块,用于若区块达到预设的存储条件,则存储区块;
访问权限判断模块,用于当接收到访问设备发送的针对第一车间节点存储的区块中的第一车间数据的访问请求时,判断访问设备对区块中的第一车间数据是否具有访问权限;
第一车间数据显示模块,用于若访问设备对区块中的第一车间数据具有访问权限,则显示第一车间数据,并生成访问记录。
在本发明实施例中,上述区块获取模块,可以包括:
记账节点确定子模块,用于若第一车间节点是联盟链中的记账节点,则将第一车间数据和未处理数据池中的部分数据,组成包含第一车间数据的区块;若第一车间节点不是联盟链中的记账节点,则接收联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证。
在本发明实施例中,上述区块判断模块,可以包括:
判断子模块,用于判断区块中的第一车间数据是否满足预设的存储阈值;其中,预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;
满足存储子模块,用于若第一车间数据大于或等于第一存储阈值,且第一车间数据小于或等于第二存储阈值,则确定第一车间数据达到预设的存储阈值。
在本发明实施例中,上述访问请求包括访问设备的设备标识;
上述访问权限判断模块,可以包括:
设备标识查找子模块,用于在预设策略库中查找访问设备的设备标识;其中,预设策略库中保存有对联盟链中各车间节点存储的车间数据具有访问权限的访问设备的设备标识;
访问权限确定子模块,用于若预设策略库中存在访问设备的设备标识,则确定访问设备对第一车间节点存储的区块中的第一车间数据具有访问权限;若预设策略库中不存在访问设备的设备标识,则确定访问设备对第一车间节点存储的区块中的第一车间数据没有访问权限。
本发明实施例提供了一种基于联盟链的车间数据存储与访问装置,第一车间节点根据数据采集设备发送的第一车间数据,生成第一传输数据;并将第一传输数据广播至联盟链中的各车间节点,第一传输数据被加入各个车间节点数据池中;根据预设共识机制,选出一个车间节点作为记账节点对数据池中包含第一车间数据的部分数据进行打包,生成包含第一车间数据的区块,并将该区块广播至联盟链中其它车间节点;其余车间节点接收并验证该区块中的所有数据是否合法之后,判断该包含第一车间数据的区块中的所有数据是否达到预设的存储条件;若达到,则存储区块;当第一车间节点接收到访问设备发送的访问请求时,判断访问设备是否对包含第一车间数据的区块中的第一车间数据具有访问权限;若有,则显示第一车间数据,并生成访问记录,在联盟链中存储。由于联盟链车间数据存储与访问系统中各节点之间的数据传输需进行数字签名,则接收节点在解密后,通过对数字签名中的摘要信息进行对比验证,确定该车间数据在传输的过程中是否被恶意设备私自篡改以及数据源是否为合法设备。通过基于联盟链的车间数据存储及访问系统、方法及装置对车间数据进行存储和访问控制,避免了工业车间数据被恶意设备查看以及篡改,提高了工业车间数据的机密性以及完整性。
本发明实施例还提供了一种电子设备,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信,
存储器403,用于存放计算机程序;
处理器401,用于执行存储器403上所存放的程序时,实现本发明实施例提供的一种线上测试用例的生成方法。
具体的,上述一种基于联盟链的车间数据存储与访问方法,包括:
接收第一车间节点的数据采集设备发送的第一车间数据;
根据预设的数字签名算法,确定第一车间数据对应的数字签名,并将第一车间数据和第一车间数据对应的数字签名,组成第一传输数据;其中,第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
将第一传输数据发送至联盟链中的各车间节点;
获取包含第一车间数据的区块,区块包括第一车间数据和未处理数据池中的部分数据;
判断区块是否达到预设的存储条件;
若区块达到预设的存储条件,则存储区块;
当接收到访问设备发送的针对第一车间节点存储的区块中的第一车间数据的访问请求时,判断访问设备对区块中的第一车间数据是否具有访问权限;
若访问设备对区块中的第一车间数据具有访问权限,则显示第一车间数据,并生成访问记录。
关于该方法各个步骤的具体实现以及相关解释内容可以参见上述图2所示的方法实施例,在此不做赘述。
另外,处理器401执行存储器403上所存放的程序而实现的一种线上测试用例的生成方法的其他实现方式,与前述方法实施例部分所提及的实现方式相同,这里也不再赘述。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的基于联盟链的车间数据存储与访问方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一基于联盟链的车间数据存储与访问的方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备以及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (7)

1.一种基于联盟链的车间数据存储及访问系统,其特征在于,所述系统包括:数据采集设备、联盟链中的多个车间节点和访问设备;其中,
所述数据采集设备,用于向联盟链中的第一车间节点发送第一车间数据;
所述第一车间节点,用于根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
所述第一车间节点,还用于将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据,并将所述第一传输数据发送至所述联盟链中的各车间节点;所述各车间节点对所述第一传输数据中的数字签名进行解密,得到所述第一车间节点发送的哈希值;利用预设的哈希公式对所述第一传输数据中的第一车间数据进行哈希运算,得到所述第一车间数据对应的哈希值,判断解密后的哈希值与计算确定的哈希值是否一样;
所述联盟链中的各车间节点,用于根据预设的共识算法,确定生成区块的记账节点;其中,所述区块中包括第一车间数据和未处理数据池中的部分数据;
若所述第一车间节点为所述联盟链中的记账节点,则所述第一车间节点还用于将未处理数据池中的部分数据和所述第一车间数据,组成包含第一车间数据的区块,并将所述包含第一车间数据的区块发送给所述联盟链中的各车间节点;
若所述第一车间节点不是所述联盟链中的记账节点,则所述第一车间节点还用于接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证;所述联盟链中的记账节点将所述包含第一车间数据的区块发送给所述联盟链中的各车间节点;
所述联盟链中的各车间节点,还用于判断所述包含第一车间数据的区块是否达到预设的存储条件,若所述包含第一车间数据的区块达到预设的存储条件,则所述联盟链中的各车间节点分别存储所述包含第一车间数据的区块;其中,判断所述包含第一车间数据的区块是否达到预设的存储条件,包括:判断所述区块中的第一车间数据是否满足预设的存储阈值;其中,所述预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;若所述第一车间数据大于或等于第一存储阈值,且所述车间数据小于或等于第二存储阈值,则确定所述第一车间数据达到预设的存储阈值;
所述访问设备,用于向所述第一车间节点发送针对所述第一车间节点存储的区块中的第一车间数据的访问请求;所述访问设备包括普通访问设备和基于智能合约的访问设备;基于智能合约的访问设备发布智能合约,以使联盟链中的所有车间节点,接收该智能合约,并根据该智能合约中预设的合约内容,执行相应的操作;
所述第一车间节点,还用于接收所述访问设备发送的访问请求,并判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;当所述访问设备对所述第一车间节点中存储的区块中的第一车间数据具有访问权限时,则所述第一车间节点显示所述第一车间数据,并生成访问记录。
2.一种基于联盟链的车间数据存储与访问方法,其特征在于,所述方法应用于联盟链中的第一车间节点,所述联盟链中包含多个车间节点,所述方法包括:
接收第一车间节点的数据采集设备发送的第一车间数据;
根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,并将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据;其中,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
将所述第一传输数据发送至所述联盟链中的各车间节点;所述各车间节点对所述第一传输数据中的数字签名进行解密,得到所述第一车间节点发送的哈希值;利用预设的哈希公式对所述第一传输数据中的第一车间数据进行哈希运算,得到所述第一车间数据对应的哈希值,判断解密后的哈希值与计算确定的哈希值是否一样;
获取包含第一车间数据的区块,所述区块包括第一车间数据和未处理数据池中的部分数据;
判断所述区块是否达到预设的存储条件;所述判断所述区块是否达到预设的存储条件的步骤,包括:
判断所述区块中的第一车间数据是否满足预设的存储阈值;其中,所述预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;
若所述第一车间数据大于或等于第一存储阈值,且所述车间数据小于或等于第二存储阈值,则确定所述第一车间数据达到预设的存储阈值;
若所述区块达到预设的存储条件,则存储所述区块;
当接收到访问设备发送的针对所述第一车间节点存储的区块中的第一车间数据的访问请求时,判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;其中,所述访问设备包括普通访问设备和基于智能合约的访问设备;联盟链中的车间节点,接收基于智能合约的访问设备发布的智能合约,并根据该智能合约中预设的合约内容,执行相应的操作;
若访问设备对所述区块中的第一车间数据具有访问权限,则显示所述第一车间数据,并生成访问记录。
3.根据权利要求2所述的方法,其特征在于,所述获取包含第一车间数据的区块的步骤,包括:
若所述第一车间节点是所述联盟链中的记账节点,则将所述第一车间数据和未处理数据池中的部分数据,组成包含第一车间数据的区块;
若所述第一车间节点不是所述联盟链中的记账节点,则接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证。
4.根据权利要求2所述的方法,其特征在于,所述访问请求包括所述访问设备的设备标识;
所述判断所述访问设备对所述区块中的第一车间数据是否具有访问权限的步骤,包括:
在预设策略库中查找所述访问设备的设备标识;其中,所述预设策略库中保存有对所述联盟链中各车间节点存储的区块中的车间数据具有访问权限的访问设备的设备标识;
若所述预设策略库中存在所述访问设备的访问标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据具有访问权限;
若所述预设策略库中不存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据没有访问权限。
5.一种基于联盟链的车间数据存储与访问装置,其特征在于,所述装置应用于联盟链中的第一车间节点,所述联盟链中包含多个车间节点,所述装置包括:
第一车间数据接收模块,用于接收第一车间节点的数据采集设备发送的第一车间数据;
第一传输数据组成模块,用于根据预设的数字签名算法,确定所述第一车间数据对应的数字签名,并将所述第一车间数据和所述第一车间数据对应的数字签名,组成第一传输数据;其中,所述第一车间数据对应的数字签名为第一车间数据对应的加密传输哈希值;
第一传输数据发送模块,用于将所述第一传输数据发送至所述联盟链中的各车间节点;以使所述各车间节点对所述第一传输数据中的数字签名进行解密,得到所述第一车间节点发送的哈希值;利用预设的哈希公式对所述第一传输数据中的第一车间数据进行哈希运算,得到所述第一车间数据对应的哈希值,判断解密后的哈希值与计算确定的哈希值是否一样;
区块获取模块,用于获取包含第一车间数据的区块,所述区块包括第一车间数据和未处理数据池中的部分数据;
区块判断模块,用于判断所述区块是否达到预设的存储条件;其中,所述区块判断模块,包括:
判断子模块,用于判断所述区块中的第一车间数据是否满足预设的存储阈值;其中,所述预设的存储条件包含第一存储阈值和第二存储阈值,且第一存储阈值小于或等于第二存储阈值;
满足存储子模块,用于若所述第一车间数据大于或等于第一存储阈值,且所述第一车间数据小于或等于第二存储阈值,则确定所述第一车间数据达到预设的存储阈值;
区块存储模块,用于若所述区块达到预设的存储条件,则存储所述区块;
访问权限判断模块,用于当接收到访问设备发送的针对所述第一车间节点存储的区块中的第一车间数据的访问请求时,判断所述访问设备对所述区块中的第一车间数据是否具有访问权限;其中,所述访问设备包括普通访问设备和基于智能合约的访问设备;接收基于智能合约的访问设备发布的智能合约,并根据该智能合约中预设的合约内容,执行相应的操作;
第一车间数据显示模块,用于若所述访问设备对所述区块中的第一车间数据具有访问权限,则显示所述第一车间数据,并生成访问记录。
6.根据权利要求5所述的装置,其特征在于,所述区块获取模块,包括:
记账节点确定子模块,用于若所述第一车间节点是所述联盟链中的记账节点,则将所述第一车间数据和未处理数据池中的部分数据,组成包含第一车间数据的区块;若所述第一车间节点不是所述联盟链中的记账节点,则接收所述联盟链中的记账节点发送的包含第一车间数据的区块,并对该区块对应的数据签名进行验证。
7.根据权利要求5所述的装置,其特征在于,所述访问请求包括所述访问设备的设备标识;
所述访问权限判断模块,包括:
设备标识查找子模块,用于在预设策略库中查找所述访问设备的设备标识;其中,所述预设策略库中保存有对所述联盟链中各车间节点存储的车间数据具有访问权限的访问设备的设备标识;
访问权限确定子模块,用于若所述预设策略库中存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据具有访问权限;若所述预设策略库中不存在所述访问设备的设备标识,则确定所述访问设备对所述第一车间节点存储的区块中的第一车间数据没有访问权限。
CN201910020919.XA 2019-01-09 2019-01-09 一种基于联盟链的车间数据存储与访问系统、方法及装置 Expired - Fee Related CN109815732B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910020919.XA CN109815732B (zh) 2019-01-09 2019-01-09 一种基于联盟链的车间数据存储与访问系统、方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910020919.XA CN109815732B (zh) 2019-01-09 2019-01-09 一种基于联盟链的车间数据存储与访问系统、方法及装置

Publications (2)

Publication Number Publication Date
CN109815732A CN109815732A (zh) 2019-05-28
CN109815732B true CN109815732B (zh) 2021-12-28

Family

ID=66604151

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910020919.XA Expired - Fee Related CN109815732B (zh) 2019-01-09 2019-01-09 一种基于联盟链的车间数据存储与访问系统、方法及装置

Country Status (1)

Country Link
CN (1) CN109815732B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110233900A (zh) * 2019-06-19 2019-09-13 四川长虹电器股份有限公司 基于区块链的服务共享管理系统、客户端及方法
CN111242778B (zh) * 2019-12-31 2023-07-28 布比(北京)网络技术有限公司 数据处理方法、装置、计算机设备和存储介质
CN112015808B (zh) * 2020-07-10 2021-07-06 浙江大搜车软件技术有限公司 基于联盟链的车辆数据处理方法及装置
CN112839092A (zh) * 2021-01-11 2021-05-25 北京信息科技大学 一种基于区块链的数据共享系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122477A (zh) * 2017-05-02 2017-09-01 成都中远信电子科技有限公司 一种区块链存储系统
CN109003099A (zh) * 2018-06-19 2018-12-14 西安邮电大学 区块链节点数据处理方法、设备和存储介质
CN109040012A (zh) * 2018-06-19 2018-12-18 西安电子科技大学 一种基于区块链的数据安全保护和共享方法与系统和应用

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667811A (zh) * 2018-04-18 2018-10-16 成都零光量子科技有限公司 一种自主构建电子证据的方法和监控设备
CN108793289A (zh) * 2018-07-12 2018-11-13 刘守凯 一种智能化的工业废水处理系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122477A (zh) * 2017-05-02 2017-09-01 成都中远信电子科技有限公司 一种区块链存储系统
CN109003099A (zh) * 2018-06-19 2018-12-14 西安邮电大学 区块链节点数据处理方法、设备和存储介质
CN109040012A (zh) * 2018-06-19 2018-12-18 西安电子科技大学 一种基于区块链的数据安全保护和共享方法与系统和应用

Also Published As

Publication number Publication date
CN109815732A (zh) 2019-05-28

Similar Documents

Publication Publication Date Title
CN109815732B (zh) 一种基于联盟链的车间数据存储与访问系统、方法及装置
CN110110555B (zh) 一种区块链中的投票方法及装置
US11743054B2 (en) Method and system for creating and checking the validity of device certificates
EP3751815B1 (en) Multi-source deterministic oracle management
CN109889382B (zh) 一种基于区块链混合共识的域名信息维护系统
CN110008720B (zh) 基于联盟链的物联网动态数据溯源方法及装置
CN109889504B (zh) 去中心化数据访问权交易方法及系统
CN112311735B (zh) 可信认证方法,网络设备、系统及存储介质
CN111177253A (zh) 基于身份数字认证的电力大数据保护方法及系统
CN111798209A (zh) 基于区块链的工程项目管理方法、电子设备和存储介质
CN110602455B (zh) 视频存储系统、视频处理方法、装置、设备及存储介质
CN113129518B (zh) 电动车辆充电系统及其资源管理方法
CN112395353A (zh) 一种基于联盟链的智能电能表质量数据共享方法及系统
CN115115458B (zh) 一种基于区块链的近零碳排放园区的能源交易系统及方法
CN111460400A (zh) 一种数据处理方法、装置及计算机可读存储介质
Li et al. Logisticschain: a blockchain-based secure storage scheme for logistics data
CN111222989B (zh) 多通道区块链的交易方法、电子设备和存储介质
Blümke et al. Authentic batteries: a concept for a battery pass based on PUF-enabled certificates
Tang et al. PSSBP: A privacy-preserving scope-query searchable encryption scheme based on blockchain for parking lots sharing in vehicular networks
US20220311614A1 (en) Privacy protecting transparency tree for device attestation
Xiao et al. A novel blockchain-based digital forensics framework for preserving evidence and enabling investigation in industrial Internet of Things
CN114444876A (zh) 基于区块链通证技术的储能产品数据管理方法及系统
Li et al. Decentralized and privacy-preserving smart parking with secure repetition and full verifiability
Lau Blockchain applications beyond cryptocurrency
EP3934200A1 (en) Distributed quality management and control systems and methods for decentralized manufacturing using blockchain

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20211228

CF01 Termination of patent right due to non-payment of annual fee