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

数据上链与验证系统、方法、电子设备及存储介质与流程

2022-02-18 23:17:40 来源:中国专利 TAG:


1.本发明实施例涉及区块链领域,特别涉及一种数据上链与验证系统、方法、电子设备及存储介质。


背景技术:

2.随着物联网技术的发展,人们对物联网终端数据的可信程度越来越重视。采用终端数据上链的方式可以保证链上终端数据的可信度,为了保证链上的数据是由真实的物联网终端设备产生,可以将具备连接区块链能力的模组嵌入物联网终端设备中,将物联网终端设备中的数据封装上链报文经数字签名后上链至区块链节点,从而实现终端设备数据直接上链的功能。然而实际场景中一些低端终端设备由于自身资源、通信能力、功耗等各种原因无法支持终端设备完成上述数据上链步骤,也就无法实现数据上链。
3.如何让低端物联网设备实现数据上链的同时又能验证数据的真实性是亟待解决的问题。


技术实现要素:

4.本发明实施方式的目的在于提供一种数据上链与验证系统、方法、电子设备及存储介质,可以降低物联网终端设备的成本,同时又能验证数据的真实性。
5.为解决上述技术问题,本发明的实施方式提供了一种数据上链与验证系统,包括:第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号;其中,第一终端,用于采集原始数据,计算原始数据的第一摘要,根据对称密钥,计算第一摘要的第一消息鉴别码,将第一消息鉴别码、终端唯一序列号和原始数据发送给云端服务器;云端服务器,用于对原始数据计算第二摘要,将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备进行验证,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点;密钥管理设备,用于在接收到第二摘要、第一消息鉴别码和终端唯一序列号后,根据终端唯一序列号,对第二摘要和第一消息鉴别码进行验证,将验证结果返回云端服务器。
6.本发明的实施方式还提供了一种数据上链与验证方法,应用于数据上链与验证系统的第一终端,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,方法包括:采集原始数据;计算原始数据的第一摘要;根据对称密钥,计算第一摘要的第一消息鉴别码;将第一消息鉴别码、终端唯一序列号和原始数据发送给云端服务器,供云端服务器对原始数据计算第二摘要,将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备进行验证,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。
7.本发明的实施方式还提供了一种数据上链与验证方法,应用于数据上链与验证系
统的云端服务器,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,方法包括:接收第一终端发送的原始数据、第一消息鉴别码和第一终端的终端唯一序列号;其中,第一消息鉴别码由第一终端根据存储的对称密钥对第一摘要计算得到,第一摘要由第一终端对原始数据计算得到;对原始数据计算第二摘要;将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备进行验证;若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。
8.本发明的实施方式还提供了一种数据上链与验证方法,应用于数据上链与验证系统的密钥管理设备,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,方法包括:在接收到云端服务器发送的第二摘要、第一消息鉴别码和第一终端的终端唯一序列号后,根据终端唯一序列号,对第二摘要和第一消息鉴别码进行验证;其中,第二摘要由云端服务器根据第一终端上传的原始数据计算得到,第一消息鉴别码由第一终端根据原始数据的第一摘要和对称密钥计算得到;将验证结果返回云端服务器,供云端服务器将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。
9.本发明的实施方式还提供了一种电子设备,包括:至少一个处理器;与至少一个处理器通信连接的存储器;存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的应用于第一终端的数据上链与验证方法,或者,应用于云端服务器的数据上链与验证方法,或者,应用于密钥管理设备的数据上链与验证方法。
10.本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述应用于第一终端的数据上链与验证方法,或者,应用于云端服务器的数据上链与验证方法,或者,应用于密钥管理设备的数据上链与验证方法。
11.本发明实施方式,由云端服务器完成数字签名上链,物联网终端(即第一终端)不需要进行数字签名,也就无需具备进行数字签名的计算能力,从而降低物联网终端设备的成本,使得低端物联网终端设备也可以进行数据上链,同时,物联网终端采用对称算法实现终端数据上链,云端服务器可以将第二摘要、第一消息鉴别码发送给密钥管理设备进行验证,从而验证原始数据是否被篡改,以保证在物联网终端至云端服务器的传输过程中,上链数据完整不被篡改。
附图说明
12.一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
13.图1是根据本发明一实施方式提供的数据上链与验证系统示意图;
14.图2是根据本发明一实施方式提供的数据上链与验证方法应用于第一终端的流程示意图;
15.图3是根据本发明一实施方式提供的数据上链与验证方法应用于云端服务器的流
程示意图;
16.图4是根据本发明一实施方式提供的数据上链与验证方法应用于密钥管理设备的流程示意图;
17.图5是根据本发明一实施方式提供的电子设备结构示意图。
具体实施方式
18.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本技术而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本技术所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
19.本发明的实施例涉及一种数据上链与验证系统,如图1所示,系统具体包括:第一终端101、云端服务器102、密钥管理设备103,第一终端101和密钥管理设备103分别与云端服务器102通信接连,第一终端101存储有对称密钥和终端唯一序列号;
20.其中,第一终端101,用于采集原始数据,计算原始数据的第一摘要,根据对称密钥,计算第一摘要的第一消息鉴别码,将第一消息鉴别码、终端唯一序列号和原始数据发送给云端服务器102;
21.云端服务器102,用于对原始数据计算第二摘要,将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备103进行验证,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点;
22.密钥管理设备103,用于在接收到第二摘要、第一消息鉴别码和终端唯一序列号后,根据终端唯一序列号,对第二摘要和第一消息鉴别码进行验证,将验证结果返回云端服务器102。
23.本实施例的数据上链与验证系统,用于使物联网终端向区块链节点进行数据上链,并提出一种轻量级的物联网终端(即第一终端101)和云端服务器102,其中物联网终端的计算性能和存储空间要求较低,可以满足多数物联网设备的成本要求,在很大程度上可以加速物联网终端数据上链的推进速度。本实施例中,由云端服务器完成数字签名上链,物联网终端(即第一终端)不需要进行数字签名,也就无需具备进行数字签名的计算能力,从而降低物联网终端设备的成本,使得低端物联网终端设备也可以进行数据上链,同时,物联网终端采用对称算法实现终端数据上链,云端服务器可以将第二摘要、第一消息鉴别码发送给密钥管理设备进行验证,从而验证原始数据是否被篡改,以保证在物联网终端至云端服务器的传输过程中,上链数据完整不被篡改。
24.下面对本实施方式的数据上链与验证系统的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
25.本实施例中的第一终端101是物联网终端或者物联网设备,用于采集原始数据,与云端服务器102通信连接。其中,原始数据是需要用户存储备份的数据,例如水表数据、电表数据或者终端交易数据等等,原始数据可以由其他设备产生,传输给第一终端101,也可以由第一终端101本身生产后采集。第一终端101在采集到原始数据后,计算原始数据的第一
摘要,根据对称密钥,计算第一摘要的第一消息鉴别码(message authentication code,简称“mac”)。,其中,第一摘要可以是原始数据的哈希值,对称密钥是在第一终端101中预设好的。第一终端101将原始数据、第一消息鉴别码和终端唯一序列号(即相当于终端的id号)发送给云端服务器102。其中,终端唯一序列号也是第一终端101中预设好的。
26.本实施例中的云端服务器102,可以是计算能力较高的云服务器,与第一终端101和密钥管理设备103通信连接,并且与区块链节点通信连接。云端服务器102可以对原始数据计算第二摘要,其中,第二摘要可以是原始数据的哈希值。将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备103进行验证,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。若验证不通过,则报错。
27.本实施例中的密钥管理设备103,与云端服务器102通信连接,是一个专用于进行对称密钥验证计算的设备,可以在接收到第二摘要、第一消息鉴别码和终端唯一序列号后,根据终端唯一序列号,对第二摘要和第一消息鉴别码进行验证,将验证结果返回云端服务器102。
28.具体地,密钥管理设备103中可以存储有终端唯一序列号与第一终端101使用的对称密钥的一一对应关系,当收到终端唯一序列号后,获取其对应的对称密钥,以对第二摘要和第一消息鉴别码进行验证。在一个例子中,密钥管理设备103中可以存储有一个根密钥,通过预设的算法,以获取的终端唯一序列号,算出第一终端101使用的对称密钥。
29.在一个例子中,密钥管理设备103根据终端唯一序列号,获取第一终端101对应的对称密钥,还可以如下方式实现:根据预设的根密钥和终端唯一序列号,按照预设的离散规则,离散得到第一终端101对应的对称密钥。
30.本实施例中,由于对称密钥都是由根密钥离散得到,密钥管理设备102不再需要存储所有对称密钥,只需要存储根密钥及离散规则,在需要使用某个对称密钥时,按时离散规则对根密钥离散得到终端唯一序列号对应的对称密钥即可。
31.在一个例子中,数据上链与验证系统还包括第二终端;第二终端与云端服务器102及密钥管理设备103通信连接;第二终端,用于从区块链节点获取原始数据、第一消息鉴别码和终端唯一序列号,计算原始数据的第三摘要,将第三摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备103进行验证,若验证通过,则判定原始数据可信;若验证不通过,则判定原始数据不可信。
32.密钥管理设备103,还用于在接收到第三摘要、第一消息鉴别码和终端唯一序列号后,根据终端唯一序列号,对第三摘要和第一消息鉴别码进行验证,将验证结果返回云端服务器102。
33.具体地,密钥管理设备103对摘要和第一消息鉴别码的验证包括以下步骤:根据终端唯一序列号,获取第一终端101对应的对称密钥;根据与第一终端101对应的对称密钥,计算第二消息鉴别码;判断第二消息鉴别码与第一消息鉴别码是否相同;若相同,则判定验证通过;若不相同,则判定验证不通过。其中,摘要包括第二摘要或第三摘要。
34.本发明的实施例涉及一种数据上链与验证方法,应用于数据上链与验证系统的第一终端,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,如图2
所示,方法包括:
35.步骤201,采集原始数据;
36.步骤202,计算原始数据的第一摘要;
37.步骤203,根据对称密钥,计算第一摘要的第一消息鉴别码;
38.步骤204,将第一消息鉴别码、终端唯一序列号和原始数据发送给云端服务器,供云端服务器对原始数据计算第二摘要,将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备进行验证,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。
39.本发明的实施例涉及一种数据上链与验证方法,应用于数据上链与验证系统的云端服务器,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,如图3所示,方法包括:
40.步骤301,接收第一终端发送的原始数据、第一消息鉴别码和第一终端的终端唯一序列号;其中,第一消息鉴别码由第一终端根据存储的对称密钥对第一摘要计算得到,第一摘要由第一终端对原始数据计算得到;
41.步骤302,对原始数据计算第二摘要;
42.步骤303,将第二摘要、第一消息鉴别码和终端唯一序列号发送给密钥管理设备进行验证,判断验证是否通过;
43.步骤304

1,若验证通过,则将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点;
44.步骤304

2,若验证不通过,则报错。
45.本发明的实施例涉及一种数据上链与验证方法,应用于数据上链与验证系统的密钥管理设备,数据上链与验证系统包括第一终端、云端服务器、密钥管理设备,第一终端和密钥管理设备分别与云端服务器通信接连,第一终端存储有对称密钥和终端唯一序列号,如图4所示,方法包括:
46.步骤401,在接收到云端服务器发送的第二摘要、第一消息鉴别码和第一终端的终端唯一序列号后,根据终端唯一序列号,对第二摘要和第一消息鉴别码进行验证;其中,第二摘要由云端服务器根据第一终端上传的原始数据计算得到,第一消息鉴别码由第一终端根据原始数据的第一摘要和对称密钥计算得到;
47.步骤402,将验证结果返回云端服务器,供云端服务器将原始数据、第一消息鉴别码和终端唯一序列号,封装上链报文并经数字签名后上传至区块链节点。
48.在一个例子中,密钥管理设备对摘要和第一消息鉴别码的验证包括以下步骤:根据终端唯一序列号,获取第一终端对应的对称密钥;根据与第一终端对应的对称密钥,计算第二消息鉴别码;判断第二消息鉴别码与第一消息鉴别码是否相同;若相同,则判定验证通过;若不相同,则判定验证不通过;其中,摘要包括第二摘要或第三摘要。
49.在一个例子中,根据终端唯一序列号,获取第一终端对应的对称密钥,包括:根据预设的根密钥和终端唯一序列号,按照预设的离散规则,离散得到第一终端对应的对称密钥。
50.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者
对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
51.本发明的实施例还涉及一种电子设备,如图5所示,包括:至少一个处理器501;与至少一个处理器通信连接的存储器502;其中,存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行上述的数据上链与验证方法。
52.其中,存储器502和处理器501采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器501和存储器502的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器501处理的信息通过天线在无线介质上进行传输,进一步,天线还接收信息并将信息传送给处理器501。
53.处理器501负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器502可以被用于存储处理器在执行操作时所使用的信息。
54.本发明的实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
55.即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
56.本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献