本发明属于通信技术领域,尤其涉及一种雾计算环境中的安全认证通信系统、方法、物联网设备。
背景技术:
目前,为了实现各种物联网应用,越来越多的物联网设备连接到互联网中。这些设备产生的大量数据需要进行分析和处理。直接将所有数据传输到云中集中式处理显然是不可取的,这是由于云与物联网设备物理距离较远,远程传输大量数据这会导致严重的网络延迟,从而影响物联网应用的服务质量。为了解决这个问题,雾计算应运而生。雾计算将云计算的功能扩展到网络的边缘,在云和物联网设备之间提供计算、存储和网络服务。雾计算的引入解决了物联网应用中的延迟问题。在雾计算中,物联网设备采集或者产生的数据直接传给附近的雾节点进行实时处理,如果有需要,再将一些数据由雾节点传输到云端进行永久保存。在雾计算的许多应用中,物联网设备常常采集一些敏感数据,这些数据直接传输给雾节点会泄漏这些敏感数据。因此,物联网产生的数据需要以安全的方式进行通信。但是,有几个原因导致雾计算环境中的安全通信更难:一是,一些物联网设备和雾节点是安放在公共区域,它们很容易被破坏和攻击;二是物联网设备与雾节点通常以无线方式进行通信,这种无线通信方式使得它们之间的通信会存在各种已知的攻击,如假冒、重放、中间人、信息泄漏、物联网设备被盗等等攻击。因此保证雾节点和物联网设备之间的安全认证通信就显得非常重要。
从有效性和安全性来看,目前的技术主要存在下面一些问题:(1)一些方案借助云服务器来实现雾节点和物联网设备之间的安全通信,这显然增加了认证延迟;(2)大多数安全方案在雾节点被破坏时不能保证认证安全;(3)当某个物联网设备在某个雾节点中注册后,该雾节点移出雾区,物联网设备不能与雾区中其他节点进行认证,这导致物联网设备必须重新注册。(4)大多数安全认证通信方案不是轻量级的,不适合资源受限的物联网设备实施。
通过上述分析,现有技术存在的问题及缺陷为:现有的通信系统或通信方法,认证延迟高,无法保证认证安全,认证通信方案不是轻量级的,不适合资源受限的物联网设备实施;且物联网设备在注册节点移出雾区后,需要重新注册。
解决以上问题及缺陷的难度为:由于一些雾节点和物联网设备安装在公共区域,容易被假冒和攻击,当其中一方受到攻击或者假冒时,通信也应该是安全的。并且,当某个雾节点移出雾区,不影响物联网设备与其他雾节点之间的安全通信。
解决以上问题及缺陷的意义为:雾计算是物联网应用的最有效的计算范式,但是雾计算环境中最大的问题的雾节点不是完全可信,它可能是假冒的,可能被攻击者捕获,本发明在在雾节点不安全情况下也不影响物联网设备与雾节点之间的安全通信。
技术实现要素:
针对现有技术存在的问题,本发明提供了一种雾计算环境中的安全认证通信系统、方法、物联网设备。
本发明是这样实现的,一种雾计算环境中的安全认证通信系统,所述雾计算环境中的安全认证通信系统包括:
云层、雾层和设备层;
所述雾层由许多雾区组成,所述每个雾区包含多个雾节点;
所述设备层包括多个物联网设备;所述物联网设备归属于所述雾区;
所述物联网设备与归属的雾区中的其中一个雾节点以无线通信方式传输数据。
进一步,所述雾计算环境中的安全认证通信系统还包括:
一个可信的注册中心,用于为新加入的雾节点和物联网设备进行安全注册。
本发明的另一目的在于提供一种应用于所述雾计算环境中的安全认证通信系统的雾计算环境中的安全认证通信方法,所述雾计算环境中的安全认证通信方法包括:
步骤一,可信的注册中心选择公共参数,为每个雾区选择一个标识;
基于雾区选择的标识,注册中心为每一个物联网设备选择唯一的身份和一个动态身份;并在物联网设备中存储信息;
同时,注册中心为每个雾节点选择一个唯一的身份和一个动态身份;并在雾节点中存储信息;
步骤二,物联网设备和雾节点之间利用协商的会话钥sk加密数据进行安全通信。
进一步,步骤一中,所述可信的注册中心选择公共参数包括:
注册中心产生一个长期的密钥k,在有限域gf(p)上选择一个度为t的对称三元多项式f(x,y,z),并选择一个安全的密码学上的哈希函数h(·),为每个雾区选择一个标识idq。
进一步,步骤一中,所述注册物联网设备包括:
(1)注册中心为每一个物联网设备选择一个唯一的身份ids和一个动态身份dids;
(2)计算物联网设备的假身份pids=h(ids||k)和一个多项式份额f(pids,idq,z),其中h(·)表示密码学中的哈希函数;
(3)用户在物联网设备中存储信息{pids,dids,f(pids,idq,z),h(·)}。
进一步,步骤一中,所述注册雾节点包括:
首先,注册中心为每个雾节点选择一个唯一的身份idf和一个动态身份didf;
其次,计算物联网设备的假身份pidf=h(idf||k)和一个多项式份额f(pidf,idq,z),其中h(·)表示密码学中的哈希函数;
最后,在雾节点中存储信息{pidf,didf,f(pidf,idq,z),h(·)}。
进一步,步骤二中,所述进行雾节点和物联网设备的安全认证通信包括:
1)物联网设备产生一个随机数r1和当前时间戳t1,计算m1=pids⊕h(dids||t1),m2=h(m1||r1||t1),并将m1、m2、dids和t1一起传送给雾节点;
2)雾节点根据接收到消息的当前时间戳t2,判断|t2-t1|是否小于最大允许的传送时间δt;
若|t2-t1|大于等于最大允许的传送时间δt,则认证过程终止;
若|t2-t1|小于最大允许的传送时间δt,则雾节点计算pids=m1⊕h(dids||t1),并计算多项式的值f(pidf,idq,pids);
3)雾节点产生一个随机数r2和当前时间戳t3,计算m3=pidf⊕h(didf||t3),m4=h(m3||r3||t3)⊕h(f(pidf,idq,pids)||m2||t1||t3),会话钥sk=h(f(pidf,idq,pids)||m2||h(m3||r3||t3)||t1||t3),m5=h(pidf||sk||t1||t3),将m3、m4、m5、didf和t3一起传送给物联网设备;
4)物联网设备根据接收到消息的当前时间戳t4,判断|t4-t3|是否小于最大允许的传送时间δt:
若|t4-t3|大于等于最大允许的传送时间δt,则认证过程终止;
若|t4-t3|小于最大允许的传送时间δt,则物联网设备计算pidf=m3⊕h(didf||t3),f(pids,idq,pidf),所述f(pidf,idq,pids)=f(pids,idq,pidf);
物联网设备计算h(m3||r3||t3)=m4⊕h(f(pidf,idq,pids)||m2||t1||t3)和会话钥sk=h(f(pids,idq,pidf)||m2||h(m3||r3||t3)||t1||t3),计算m5*=h(pidf||sk||t1||t3),将m5*与接收到的m5对比,如果相等,则物联网设备认证雾节点;
5)物联网设备和雾节点之间利用协商的会话钥sk加密数据进行安全通信。
进一步,所述进行雾节点和物联网设备的安全认证通信还包括:
在完成一次认证会话后,物联网设备和雾节点更新自己的动态身份。
本发明的另一目的在于提供一种物联网设备,所述物联网设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述雾计算环境中的安全认证通信方法。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述雾计算环境中的安全认证通信方法。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明提出了一种雾计算中的安全认证通信系统和方法,在雾层和设备层实现了安全通信,适合雾计算环境中用于保护物联网设备和物联网设备之间的数据传输。
对比的技术效果或者实验效果。与现有的雾计算安全通信方法相比,本发明采用的技术中没有云服务器参与安全认证,减少了通信延迟;其次,不假设雾节点是可信的,这与雾计算环境一致,最后,本发明的在通信代价和安全性方面优于现有的技术方案。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的雾计算体系结构示意图。
图2是本发明实施例提供的雾计算安全认证系统结构图。
图3是本发明实施例提供的雾计算安全认证原理图。
图4是本发明实施例提供的雾计算安全认证方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种雾计算环境中的安全认证通信系统、方法、物联网设备,下面结合附图对本发明作详细的描述。
如图1-图2所示,本发明实施例提供的雾计算环境中的安全认证通信系统包括:
云层、雾层和设备层;
雾层由许多雾区组成,每个雾区包含多个雾节点;
设备层包括多个物联网设备;物联网设备归属于所述雾区;
物联网设备与归属的雾区中的其中一个雾节点以无线通信方式传输数据。
本发明实施例提供的雾计算环境中的安全认证通信系统还包括:
一个可信的注册中心,用于为新加入的雾节点和物联网设备进行安全注册。
如图3-图4所示,本发明实施例提供的雾计算环境中的安全认证通信方法包括以下步骤:
s101,可信的注册中心选择公共参数;注册物联网设备和雾节点;
s102,进行雾节点和物联网设备的安全认证通信。
步骤s101中,本发明实施例提供的可信的注册中心选择公共参数包括:
注册中心产生一个长期的密钥k,在有限域gf(p)上选择一个度为t的对称三元多项式f(x,y,z),并选择一个安全的密码学上的哈希函数h(·),为每个雾区选择一个标识idq。
步骤s101中,本发明实施例提供的注册物联网设备包括:
(1)注册中心为每一个物联网设备选择一个唯一的身份ids和一个动态身份dids;
(2)计算物联网设备的假身份pids=h(ids||k)和一个多项式份额f(pids,idq,z),其中h(·)表示密码学中的哈希函数;
(3)用户在物联网设备中存储信息{pids,dids,f(pids,idq,z),h(·)}。
步骤s101中,本发明实施例提供的注册雾节点包括:
首先,注册中心为每个雾节点选择一个唯一的身份idf和一个动态身份didf;
其次,计算物联网设备的假身份pidf=h(idf||k)和一个多项式份额f(pidf,idq,z),其中h(·)表示密码学中的哈希函数;
最后,在雾节点中存储信息{pidf,didf,f(pidf,idq,z),h(·)}。
步骤s102中,本发明实施例提供的进行雾节点和物联网设备的安全认证通信包括:
1)物联网设备产生一个随机数r1和当前时间戳t1,计算m1=pids⊕h(dids||t1),m2=h(m1||r1||t1),并将m1、m2、dids和t1一起传送给雾节点;
2)雾节点根据接收到消息的当前时间戳t2,判断|t2-t1|是否小于最大允许的传送时间δt;
若|t2-t1|大于等于最大允许的传送时间δt,则认证过程终止;
若|t2-t1|小于最大允许的传送时间δt,则雾节点计算pids=m1⊕h(dids||t1),并计算多项式的值f(pidf,idq,pids);
3)雾节点产生一个随机数r2和当前时间戳t3,计算m3=pidf⊕h(didf||t3),m4=h(m3||r3||t3)⊕h(f(pidf,idq,pids)||m2||t1||t3),会话钥sk=h(f(pidf,idq,pids)||m2||h(m3||r3||t3)||t1||t3),m5=h(pidf||sk||t1||t3),将m3、m4、m5、didf和t3一起传送给物联网设备;
4)物联网设备根据接收到消息的当前时间戳t4,判断|t4-t3|是否小于最大允许的传送时间δt:
若|t4-t3|大于等于最大允许的传送时间δt,则认证过程终止;
若|t4-t3|小于最大允许的传送时间δt,则物联网设备计算pidf=m3⊕h(didf||t3),f(pids,idq,pidf),所述f(pidf,idq,pids)=f(pids,idq,pidf);
物联网设备计算h(m3||r3||t3)=m4⊕h(f(pidf,idq,pids)||m2||t1||t3)和会话钥sk=h(f(pids,idq,pidf)||m2||h(m3||r3||t3)||t1||t3),计算m5*=h(pidf||sk||t1||t3),将m5*与接收到的m5对比,如果相等,则物联网设备认证雾节点;
5)物联网设备和雾节点之间利用协商的会话钥sk加密数据进行安全通信。
本发明实施例提供的进行雾节点和物联网设备的安全认证通信还包括:
在完成一次认证会话后,物联网设备和雾节点更新自己的动态身份。
下面结合具体实施例对本发明的技术效果作进一步描述。
实施例
1、一种雾计算环境中安全认证通信系统结构:
雾计算由云层、雾层和设备层组成,雾层由许多雾区组成,每个雾区包含多个雾节点。物联网设备归属于某个雾区,物联网设备与该雾区中的某个雾节点以无线通信方式传输数据。另外,在该系统中有一个可信的注册中心为新加入的雾节点和物联网设备进行安全注册。本发明目的是为了实现在雾层和设备层实现安全通信。
2、本发明为了达到这个目的是通过下面的技术方案来实现的:
为了达到这个目的,本发明的技术方案包括三个部分:一是可信的注册中心选择公共参数;二是物联网设备和雾节点的注册方法;三是雾节点和物联网设备之间安全认证通信方法。
注册中心选择公共参数:
注册中心产生一个长期的密钥k,在有限域gf(p)上选择一个度为t的对称三元多项式f(x,y,z),并选择一个安全的密码学上的哈希函数h(·),为每个雾区选择一个标识idq。
物联网设备的注册方法包括下面的步骤:
(1)注册中心为每一个物联网设备选择一个唯一的身份ids和一个动态身份dids。
(2)计算物联网设备的假身份pids=h(ids||k)和一个多项式份额f(pids,idq,z),其中h(·)表示密码学中的哈希函数。
(3)用户在物联网设备中存储信息{pids,dids,f(pids,idq,z),h(·)}。
雾节点的注册方法包括下面的步骤
(1)注册中心为每个雾节点选择一个唯一的身份idf和一个动态身份didf。
(2)计算物联网设备的假身份pidf=h(idf||k)和一个多项式份额f(pidf,idq,z),其中h(·)表示密码学中的哈希函数。
(3)在雾节点中存储信息{pidf,didf,f(pidf,idq,z),h(·)}。
物联网设备与雾节点之间的安全认证的技术方案是实现步骤如下:
(1)物联网设备产生一个随机数r1和当前时间戳t1,计算m1=pids⊕h(dids||t1),m2=h(m1||r1||t1),并将m1、m2、dids和t1一起传送给雾节点。
(2)雾节点根据接收到消息的当前时间戳t2,判断|t2-t1|是否小于最大允许的传送时间δt,如果不满足,认证过程终止,如果满足,雾节点计算pids=m1⊕h(dids||t1),进一步计算多项式的值f(pidf,idq,pids)。
雾节点产生一个随机数r2和当前时间戳t3,计算m3=pidf⊕h(didf||t3),m4=h(m3||r3||t3)⊕h(f(pidf,idq,pids)||m2||t1||t3),会话钥sk=h(f(pidf,idq,pids)||m2||h(m3||r3||t3)||t1||t3),m5=h(pidf||sk||t1||t3),将m3、m4、m5、didf和t3一起传送给物联网设备。
(3)物联网设备根据接收到消息的当前时间戳t4,判断|t4-t3|是否小于最大允许的传送时间δt,如果不满足,认证过程终止,如果满足,物联网设备计算pidf=m3⊕h(didf||t3),f(pids,idq,pidf),由于多项式的对称性,有f(pidf,idq,pids)=f(pids,idq,pidf)。物联网设备进一步计算h(m3||r3||t3)=m4⊕h(f(pidf,idq,pids)||m2||t1||t3)和会话钥sk=h(f(pids,idq,pidf)||m2||h(m3||r3||t3)||t1||t3),计算m5*=h(pidf||sk||t1||t3),将m5*与接收到的m5对比,如果相等,物联网设备认证了雾节点。
(4)随后物联网设备和雾节点之间利用协商的会话钥sk加密数据进行安全通信。在完成一次认证会话后,物联网设备和雾节点更新自己的动态身份。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。