基于区块链的物联网终端验证云端数据的方法及系统与流程

文档序号:30061445发布日期:2022-05-17 23:42阅读:196来源:国知局
基于区块链的物联网终端验证云端数据的方法及系统与流程

1.本发明属于区块链技术领域,具体涉及一种基于区块链的物联网终端验证云端数据的方法及系统。


背景技术:

2.物联网(internet of things,iot)是指通过各种设备终端实时采集各类信息,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。随着云服务技术的发展,目前,大多数iot系统采用云服务提供存储,即将物联网终端终端采集的数据,通过特定的网络将数据传输到云端,并将数据在云端进行存储。
3.区块链是一种分布式账本技术,利用分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链具有去中心化、开放性、自治性、信息不可篡改、匿名性等特征。目前,随着社会的不断发展,基于区块链的特征,利用区块链技术解决物联网系统数据的安全问题也越来越受到关注。
4.然而,目前的物联网系统缺乏云端存储与终端设备、终端设备与终端设备之间相互信任的机制,所有的物联网终端无条件信任云端中心的数据,而云端数据库一旦被篡改或者崩塌,终端设备无从感知,将对整个物联网系统造成巨大的破坏。


技术实现要素:

5.鉴于以上存在的技术问题,本发明用于提供一种基于区块链的物联网终端验证云端数据的方法及系统。
6.为解决上述技术问题,本发明采用如下的技术方案:
7.本发明实施例的第一方面提供一种基于区块链的物联网终端验证云端数据的方法,包括以下步骤:
8.在物联网终端上设定数据验证高度n以及主动验证时间间隔t;物联网终端利用物联网终端的特征值信息向区块链网络发起注册请求;
9.区块链网络接收到请求后,根据物联网终端的特征值信息生成数字证书,并将数字证书信息发送给物联网终端;
10.物联网终端采集到数据后,通过数字证书将数据信息签名后上传到区块链网络,区块链网络验证其数字证书信息是否真实可信,如果真实,则通过智能合约将数据传输到云端数据服务器,完成一笔交易,将数据存储在云端数据服务器中,并生成新的区块信息,将新生成的区块特征值信息和最新的区块高度lh发送到物联网终端;如果数字证书不可信,则放弃该笔交易,上链失败;
11.物联网终端保留最新的n个区块的特征值信息;
12.新增区块高度大于n后,在数据采集上链的过程中,物联网终端根据设定的验证时间间隔t,每隔时间间隔t发起一次数据验证;若验证不通过,物联网终端终止数据的采集和上链,发出警报信息。
13.第一方面的一种可能设计中,物联网终端的特征值信息包括mac地址信息,厂商信息或ip信息中的至少一种。
14.第一方面的一种可能设置中,所述数字证书利用加密算法生成。
15.第一方面的一种可能设计中,物联网终端保留最新的n个区块的特征值信息包括:物联网终端获取到最新的区块高度和特征值信息后,比较lh和n的大小;当lh《n时,物联网终端更新最新区块高度并存储其对应的区块特征值信息;当lh》n时,物联网终端更新最新的区块高度并存储其对应的特征值信息,同时删除高度为lh-n的区块的特征值信息。
16.第一方面的一种可能设计中,数据验证过程如下:
17.物联网终端获取云端第lh-1,lh-2,
……
,lh-n+1个区块的特征值信息;
18.与物联网终端上已经存储的各区块高度相对应的特征值信息进行对比,如果有某个特征值信息不一致,则说明链上数据发生了篡改,此时,物联网终端将终止数据的采集和上链,发出警报信息;如果获取的云端的区块特征值信息和终端的信息全部一致,则验证通过。
19.本发明实施例的第二方面提供一种基于区块链的物联网终端验证云端数据的系统,包括物联网终端、区块链网络和云端数据服务器,
20.物联网终端,用于设定数据验证高度n以及主动验证时间间隔t;利用物联网终端的特征值信息向区块链网络发起注册请求;
21.区块链网络,用于接收到物联网终端的注册请求后,根据物联网终端的特征值信息生成数字证书,并将数字证书信息发送给物联网终端;
22.物联网终端采集到数据后,通过数字证书将数据信息签名后上传到区块链网络,区块链网络验证其数字证书信息是否真实可信,如果真实,则通过智能合约将数据传输到云端数据服务器,完成一笔交易,将数据存储在云端数据服务器中,并生成新的区块信息,将新生成的区块特征值信息和最新的区块高度lh发送到物联网终端;如果数字证书不可信,则放弃该笔交易,上链失败;
23.物联网终端保留最新的n个区块的特征值信息;
24.新增区块高度大于n后,在数据采集上链的过程中,物联网终端根据设定的验证时间间隔t,每隔时间间隔t发起一次数据验证;若验证不通过,物联网终端终止数据的采集和上链,发出警报信息。
25.第二方面的一种可能设计中,物联网终端的特征值信息包括mac地址信息,厂商信息或ip信息中的至少一种。
26.第二方面的一种可能设计中,所述数字证书利用加密算法生成。
27.第二方面的一种可能设计中,物联网终端保留最新的n个区块的特征值信息包括:物联网终端获取到最新的区块高度和特征值信息后,比较lh和n的大小;当lh《n时,物联网终端更新最新区块高度并存储其对应的区块特征值信息;当lh》n时,物联网终端更新最新的区块高度并存储其对应的特征值信息,同时删除高度为lh-n的区块的特征值信息。
28.第二方面的一种可能设计中,数据验证过程如下:
29.物联网终端获取云端第lh-1,lh-2,
……
,lh-n+1个区块的特征值信息;
30.与物联网终端上已经存储的各区块高度相对应的特征值信息进行对比,如果有某个特征值信息不一致,则说明链上数据发生了篡改,此时,物联网终端将终止数据的采集和
上链,发出警报信息;如果获取的云端的区块特征值信息和终端的信息全部一致,则验证通过。
31.采用本发明具有如下的有益效果:本发明技术方案将物联网终端作为验真节点,使得物联网终端不仅可以采集传输数据,还可以验真云端存储的数据是否被篡改。
附图说明
32.图1为基于区块链的物联网终端验证云端数据的系统结构示意图。
具体实施方式
33.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
34.本发明一实施例公开了一种基于区块链的物联网终端验证云端数据的方法,包括以下步骤:
35.在物联网终端上设定数据验证高度n以及主动验证时间间隔t;物联网终端利用物联网终端的特征值信息向区块链网络发起注册请求;
36.物联网终端的特征值信息包括mac地址信息,厂商信息,ip信息中的至少一种,用于唯一表示物联网终端身份。
37.区块链网络接收到请求后,根据物联网终端的特征值信息生成数字证书,数字证书利用加密算法生成,并将数字证书信息发送给物联网终端;典型的加密算法如rsa、dsa和sm2等。
38.物联网终端采集到数据后,通过数字证书将数据信息签名后上传到区块链网络,区块链网络验证其数字证书信息是否真实可信,如果真实,则通过智能合约将数据传输到云端数据服务器,完成一笔交易,将数据存储在云端数据服务器中,并生成新的区块信息,将新生成的区块特征值信息和最新的区块高度lh发送到物联网终端;如果数字证书不可信,则放弃该笔交易,上链失败;
39.物联网终端保留最新的n个区块的特征值信息;
40.新增区块高度大于n后,在数据采集上链的过程中,物联网终端根据设定的验证时间间隔t,每隔时间间隔t发起一次数据验证;若验证不通过,物联网终端终止数据的采集和上链,发出警报信息。
41.通过以上设置的基于区块链的物联网终端验证云端数据的方法,物联网终端不仅负责采集数据,同时还存储最新的n个区块的特征值信息。通过这些区块的特征值信息,根据设定的验真触发条件,便可以发起对云端数据的验证,检验云端数据是否被篡改,使得物联网终端具有了验真节点的功能,极大地增加了数据存储的可信度。
42.本发明一实施例中,物联网终端保留最新的n个区块的特征值信息包括:物联网终端获取到最新的区块高度和特征值信息后,比较lh和n的大小;当lh《n时,物联网终端更新最新区块高度并存储其对应的区块特征值信息;当lh》n时,物联网终端更新最新的区块高度并存储其对应的特征值信息,同时删除高度为lh-n的区块的特征值信息。
43.本发明一实施例中,数据验证过程如下:
44.物联网终端获取云端第lh-1,lh-2,
……
,lh-n+1个区块的特征值信息;
45.与物联网终端上已经存储的各区块高度相对应的特征值信息进行对比,如果有某个特征值信息不一致,则说明链上数据发生了篡改,此时,物联网终端将终止数据的采集和上链,发出警报信息;如果获取的云端的区块特征值信息和终端的信息全部一致,则验证通过。
46.以上验证的逻辑在于:如果历史数据的某个交易ti发生变化,假设其所在的区块高度为i,则根据merkle tree算法可知,其所在区块的特征值信息mi将会发生变化。由于区块特征值信息中包括前一个区块的特征值信息,则区块i+1的特征值信息也将发生改变,以此类推,从i个区块开始,第i+1,i+2,i+3一直到最新高度lh所在区块的特征值信息均会发生改变。因此,将云端第hl-1,hl-2,
……
,hl-n+1个区块的特征值信息和终端设备上的特征值信息进行对比,即可检测出云端数据的安全性,鉴别出是否被篡改。
47.与本发明方法实施例对应的,参考图1,本发明实施例同时提供了一种基于区块链的物联网终端验证云端数据的系统,包括物联网终端、区块链网络和云端数据服务器,其中物联网终端用于设定数据验证高度n以及主动验证时间间隔t;利用物联网终端的特征值信息向区块链网络发起注册请求;区块链网络用于接收到物联网终端的注册请求后,根据物联网终端的特征值信息生成数字证书,数字证书利用加密算法生成,并将数字证书信息发送给物联网终端;物联网终端采集到数据后,通过数字证书将数据信息签名后上传到区块链网络,区块链网络验证其数字证书信息是否真实可信,如果真实,则通过智能合约将数据传输到云端数据服务器,完成一笔交易,将数据存储在云端数据服务器中,并生成新的区块信息,将新生成的区块特征值信息和最新的区块高度lh发送到物联网终端;如果数字证书不可信,则放弃该笔交易,上链失败;物联网终端保留最新的n个区块的特征值信息;新增区块高度大于n后,在数据采集上链的过程中,物联网终端根据设定的验证时间间隔t,每隔时间间隔t发起一次数据验证;若验证不通过,物联网终端终止数据的采集和上链,发出警报信息。
48.其中,物联网终端的特征值信息包括mac地址信息,厂商信息或ip信息中的至少一种,用于唯一表示物联网终端身份。
49.本发明一实施例中,物联网终端保留最新的n个区块的特征值信息包括:物联网终端获取到最新的区块高度和特征值信息后,比较lh和n的大小;当lh《n时,物联网终端更新最新区块高度并存储其对应的区块特征值信息;当lh》n时,物联网终端更新最新的区块高度并存储其对应的特征值信息,同时删除高度为lh-n的区块的特征值信息。
50.本发明一实施例中,数据验证过程如下:
51.物联网终端获取云端第lh-1,lh-2,
……
,lh-n+1个区块的特征值信息;
52.与物联网终端上已经存储的各区块高度相对应的特征值信息进行对比,如果有某个特征值信息不一致,则说明链上数据发生了篡改,此时,物联网终端将终止数据的采集和上链,发出警报信息;如果获取的云端的区块特征值信息和终端的信息全部一致,则验证通过。以网络摄像头为例。
53.具体应用实例中,物联网终端包括但不限于各种传感器设备,网络监控摄像机等。以网络监控摄像机为例,网络监控摄像机出厂时,利用其特征值信息(mac地址信息,厂商信
息,ip信息等)向区块链网络发起注册请求;区块链网络接收到请求后,根据网络监控摄像机的特征值信息生成符合区块链网络规范的数字证书,并将数字证书信息发送给网络监控摄像机;网络监控摄像机拥有数字证书后,便可利用该数字证书将采集的数据上传到区块链网络,区块链网络验证其数字证书信息是否真实可信,如果真实,则通过智能合约将数据传输到云端数据服务器,完成一笔交易,将数据存储在云端数据服务器中,并生成新的区块信息,将新生成的区块特征值信息和最新的区块高度lh发送到物联网终端;如果数字证书不可信,则放弃该笔交易,上链失败;物联网终端保留最新的n个区块的特征值信息;新增区块高度大于n后,在数据采集上链的过程中,物联网终端根据设定的验证时间间隔t,每隔时间间隔t发起一次数据验证;若验证不通过,物联网终端终止数据的采集和上链,发出警报信息。
54.应当理解,本文所述的示例性实施例是说明性的而非限制性的。尽管结合附图描述了本发明的一个或多个实施例,本领域普通技术人员应当理解,在不脱离通过所附权利要求所限定的本发明的精神和范围的情况下,可以做出各种形式和细节的改变。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1