APP下载

一种基于椭圆曲线的物联网双向身份认证协议

2020-12-01张心艺宋建涛杜杨

软件导刊 2020年10期
关键词:身份认证物联网

张心艺 宋建涛 杜杨

摘 要:身份认证是物联网安全可信的第一道防线,是保障感知网络稳定运行的基石。基于感知节点的安全性需求及有限的计算能力,提出一种基于椭圆曲线的双向身份认证协议。该方案能够认证通信感知节点双方身份的真实性,加解密所需密钥信息量少,且不存在密钥协商问题。为解决认证延迟和能量消耗问题,实现簇头节点对同一群组内感知节点的批身份认证,对可疑节点基于二分搜索技术实现身份追踪,快速定位可疑节点位置,及时甄别不可信节点。安全性分析表明,该机制具有正确性、匿名性、不可抵抗性,可有效阻止恶意节点窃取及篡改感知数据。

关键词:物联网;身份认证;双向身份认证;批认证

DOI:10. 11907/rjdk. 201149

中图分类号:TP309文献标识码:A 文章编号:1672-7800(2020)010-0233-05

Abstract: Identity authentication is the first line of defense for the security of the Internet of Things, and the cornerstone to ensure the stable operation of perceptual network. Based on the security requirements of the sensing node and its limited computing power, this paper proposes a two-way identity authentication protocol based on elliptic curve. This scheme can authenticate the identity of both sides of the sensing nodes. The amount of key information needed for encryption and decryption is small, and there is no key negotiation problem. Subsequently, in order to solve the problem of authentication delay and energy consumption, based on two-way identity authentication protocol, the cluster head nodes batch identity authentication mechanism for sensing nodes in the same group is proposed. This mechanism can locate the suspicious nodes quickly and identify the untrusted nodes in time. The security analysis shows that the mechanism is correct, anonymous, and irresistible, and can effectively prevent malicious nodes from stealing and tampering with sensing data.

Key Words: Internet of Things; identity authentication; bi-directional identity authentication; batch authentication

0 引言

物聯网在融合射频识别手段、无线通信网络、传感器等感知识别技术基础上,依托互联网向物理世界延伸与拓展[1]。信息化时代,无线射频识别和传感器网络技术应运而生,无形地嵌入到我们的生活环境。物联网并不是抽象的概念,其应用场景涉及衣食住行诸多方面,从驾驶方式、购物方式,甚至居家的能源获取方式及电器使用过程,物联网都能创造越来越便捷与高效的生活[2]。

物联网中有数量众多的异构感知网,存在严重和复杂的潜在威胁与攻击[3-4]。首先,感知节点可能会部署在无人监控区域,攻击者可轻易接触到这些设备进行破坏;其次,感知节点供电电池一般容量不大,相应安全协议设计需考虑能耗问题。感知节点攻击种类繁多,包括重放攻击、身份伪造或假冒攻击、信号泄露与干扰等[5-6]。身份认证是物联网安全第一道防线,是保障物联网感知网络安全的基石[7]。在感知节点接入网络后,通过鉴别节点的真实身份,为节点可信接入网络提供依据。通过有效的双向身份认证协议,对入网节点身份进行可信认证,可确保每个接入到传感器网络的节点身份都是可信赖的。

传统的身份认证技术分为基于生物特征的身份识别[8]、基于口令的身份识别[9-10]和基于密码的身份识别3种技术。从安全与效率角度考虑,基于生物特征和基于口令的身份认证技术一般使用在规模大、种类繁杂、动态适应性差的感知网络。从密码学角度针对物联网感知节点的身份认证方案较多。文献[11]提出一种适用于无线传感网络接入节点的双向身份认证方案。该模型采用对称加密方式,在客户端与服务端两侧预先放置具有节点标识的密钥池,通过认证密钥生成算法认证双方身份的可靠性。实验表明该模型算法较简单,适合计算资源有限的传感节点,但在安全性方面有待进一步提高。基于物联网设备应用环境恶劣、更新困难、存储资源和计算资源受限等问题,文献[12]从物联网设备和物联网用户两方面考虑可信身份认证与管理机制,以保证认证信息的安全性。从使用证书、密钥更新、离线认证、管理中心依赖度、可用性的角度比较CA PKI、IBC 和CLA 三种认证技术。文献[13]从安全性、隐私性、保密性方面分析各种认证方案,通过多标准分类比较现有认证协议的优缺点。针对物联网异构网络和不同终端系统,文献[14]提出交互式密钥管理协议与非交互式密钥管理协议,使通信开销最小,描述了基于票根的认证过程与会员密钥重建两个步骤,进行相应的安全分析。该方案具有良好的健壮性,可抵抗多种类型攻击。但该方案计算过于复杂,不适合计算资源有限的感知节点。针对物联网实体异质性、潜在资源受限、自主性等特点,文献[15]提出一种零知识和基于身份认证的集成密钥交换新方法,实验表明该方法适用于资源受限设备,可抵抗中间人攻击,效率较高、代价较小,但是身份认证执行过程过于复杂,还需进一步优化。

由于感知节点高度集成、计算能力有限且易受攻击,以上方案在能耗、复杂度、安全性方面都不能满足物联网感知节点安全需要。针对目前感知网络模型动态适应性差、应对安全威胁能力单一等特点,本文从感知节点安全性需求出发,提出一种基于椭圆曲线的物联网双向身份认证协议,对物联网感知节点身份认证机制进行深入研究,解决认证协议过于复杂、通信开销大、安全性不高等问题。

1 网络模型

假设有一动态变化的大规模感知网络模型,该感知网络由不同感知群体构成,每个群体称为一个簇,每个簇有一个管理者簇头节点,结构如图1所示。其感知网络在初始阶段安全可信且感知节点可信,所有传感节点在计算能力、资源、存储能力方面受限。感知网络中感知节点计算能力不同、存储能力不同,节点承担的任务也不同。根据感知网络节点承担任务类型不同,将节点分为普通节点、簇头节点和数据汇聚节点。在感知网络中,通常可信度較高、计算能力较强的节点被选作簇头节点。簇头节点不是一成不变的,随着节点可信度的变化也会相应变化。簇头节点在存储与计算能力方面远高于普通节点,在感知网络中承担的责任也远大于普通节点。普通节点主要负责物联网内感知数据的采集、传输、转发,簇头节点主要对同一簇内节点进行身份认证,以及对来自普通节点感知的数据进行接收及转发,数据汇聚节点主要对来自簇头节点的感知数据接收及转发。

2 认证方案

为抵制恶意节点攻击,每个感知节点在感知网络中认证相应的权限信息。感知节点必须在感知网络下进行身份认证,没有进行身份认证的感知节点无法进行节点间的感知数据传输。感知网络中节点是随机部署的,普通节点需要对簇头节点进行身份认证,同样,簇头节点也需要对普通节点进行身份认证。

假设在传感网络投入使用之前,所有基本运算函数和椭圆曲线计算都需要提前写入物联网感知网络的传感节点中。初始状态下存在安全通道,簇头节点和普通节点可以进行初始参数交换。本文提出一种基于椭圆曲线的双向身份认证协议,将数字签名方案与动态身份认证方案相结合,实现簇头节点与普通节点间双向身份认证。该认证协议由系统初始化、签名产生、单向签名认证、双向身份认证、批身份认证、可疑节点追踪6个部分组成。

假设某一区域内感知网络有无数个簇,选定其中一个簇,簇中有n个普通节点[{α1,α2,...,αn}]和簇头节点[απ],[αi]是以[απ]为中心组成的簇中一个普通节点。初始状态下,簇头节点[απ]和普通节点[αi]间存在安全通道,可以进行数据交互。其中,下标[m]是与普通节点相关的参数,下标n是与簇头节点相关的参数。表1为此方案中用到的相关符号。

2.1 系统初始化

假设[q]是椭圆曲线的生成元,[q]是[P]的素数阶。首先,普通节点[αi]通过密钥生成器选择随机数[Sm∈Z?]作为私钥,公开密钥为[Qm=SmP]。簇头节点[απ]通过密钥生成器选择随机数[Sn∈Z?]作为私钥,簇内公开密钥为[Qn=SnP];然后,簇头节点[απ]随机选择[H1{0,1}?→G],[H2{0,1}?→G]两个散列函数。普通节点[αi]和簇头节点[απ]通过安全通道进行初始参数[{H1,H2,q,p}]交换,加载公共参数。普通节点[αi]将其基础身份信息[{IDm,Qm}]通过安全通道发送给簇头节点。簇头节点采用预认证方式对感知节点进行时间和身份信息认证。感知节点权限受时间因子T控制,若感知节点认证超过其时效期则预认证失败;若身份序列不符合预期序列则预认证失败。预认证成功后,簇头节点[απ]计算如下:

其中[Kn∈Z?]是簇头节点[απ]选取的随机数。在簇头节点和普通节点部署之前,完成公共参数初始化及初始参数计算。

2.2 签名

簇头节点[απ]将[{N,Rn,MIDn,Qn}]发送给普通节点[αi],其中[N]为簇号,[Qn]为簇头节点公钥。基于身份信息[IDm]和当前时间戳[Ta]、普通节点[αi]计算如下:

2.3 单向签名认证

在簇头节点收到普通节点签名[{βm,γm}]后,根据[H2(Rn,Qm)]和[βm]计算得到上一时间的时间戳[Ta=βm⊕H2(Rn,Qm)],簇头节点将当前时刻的时间戳[Tb]与上一时刻比较,判断[Tb-Ta≤Δt]是否成立, [Δt]为允许的时间迟延。若[Tb-Ta≤Δt]不成立,则认为是恶意节点将很久以前传过的信息重新攻击,该节点身份认证失败。随后,判断:

是否成立,以验证签名是否有效。若等式成立,认证通过;若等式不成立,认证失败。因为:

2.4 双向身份认证

由于感知网络的特殊性,当簇头节点完成对普通节点身份认证后,普通节点需要对簇头节点[απ]进行身份认证。同理,在初始阶段,簇头节点[απ]将其基础身份信息[{IDn,Qn}]通过安全密道发送给普通节点[αi],普通节点[αi]计算如下:

其中,[Km∈Z?]是普通节点[αi]选取的随机数。随后,普通节点[αi]将[{Rm,MIDm,Qm}]发送给簇头节点[απ],其中,[Qm]为普通节点公钥。然后,基于身份信息[IDn]和当前时间戳[Ta],簇头节点[αi]计算如下:

基于身份信息[IDn]的簇头节点签名为[{βn,γn}],将其发送给普通节点。在簇头节点收到来自普通节点的签名[{βn,γn}]后,根据[H2(Rm,Qn)]和[βn]计算可得上一时间时间戳[Ta=βn⊕H2(Rm,Qn)],簇头节点将当前的时间戳[Tb]与上一时刻相比较,判断[Tb-Ta≤Δt]是否成立, [Δt]为允许的时间迟延。若[Tb-Ta≤Δt]不成立,则认为是很久以前传过的信息,节点身份认证失败。随后,判断以下等式是否成立:

若等式成立,则物联网环境下的感知节点和簇头节点双方身份认证成功;若等式不成立,则双方身份认证失败。

2.5 批身份认证

物联网区域内感知节点数量众多,且感知网络规模大、种类繁杂。若同一个簇中多个普通节点同时向簇头节点发起身份认证请求,且所有请求时间都相同,则会造成请求攻击崩塌,从而对物联网环境下的感知节点甚至感知网络造成严重威胁。为解决认证延迟与能量消耗问题,需研究簇头节点对同一群组内感知节点的批身份认证。状态初始化、签名产生与单向身份认证过程相同,当簇头节点来自同一群组内k个普通节点[{α1,α2,...,αk}]的签名消息[{γ1,γ2,...,γk}]时,需同时对这k个消息进行签名认证。因为:

簇头节点判断以下等式是否成立:

若成立,则簇头节点对多个节点批身份认证成功;若不成立,则簇头节点对多个节点批身份认证失败。其中的不可疑节点采用二分搜索将签名进行切割,需要找到可疑节点位置,及时从系统中剔除身份可疑的节点。

2.6 可疑節点追踪

假设节点身份认证不通过,则采用二分搜索对[{γ1,γ2,...,γk}]进行切割,找到可疑节点位置及身份认证失败的节点。根据初始化系统参数,找到对应的ID身份信息,实现可疑节点位置追踪。对此节点再进行一次身份认证,若不通过,则从系统中去除这个节点,同时禁止加入感知网络。对认证成功的节点,感知节点可使用相应的权限,包括一定区域内传输、转发、储存数据。

3 安全性分析

针对物联网身份验证面临的安全问题,将本文协议与Gandino[16]和He[17]提出的物联网安全协议比较并进行安全性分析。表2为安全性比较情况,其中Yes表示符合安全,No表示不符合安全。

本协议假设哈希函数和离散对数数学问题是难解的。针对感知网络的通信环境,本文提出的身份认证协议需要满足正确性、不可伪造性、抗重放攻击和匿名性。下面对这4个特性进行分析,并给出证明。

3.1 正确性分析

在簇头节点对普通节点的单向认证过程中,如果感知节点能正确地执行签名协议,那么[γnP=H2(Rm,Qn,IDn)Qn+] [Rm+H1(Qn,Rm)Qm]就可作为判断认证成功的标准。

3.2 不可伪造性分析

感知网络中感知节点选取一个随机数作为私钥,本文采用哈希函数与随机数选取方法,使簇头节点和感知节点之间传递的信息不断变化,使攻击者难以通过窃取的方式伪造身份认证。同时,由于哈希函数的单向性与强碰撞性,无法通过哈希函数逆向得到签名内容。对给定的[Qn=SnP],[Sn∈Z?],[P]是椭圆曲线的生成元,不能通过[Qn=SnP]得到[Sn]。因此,外部攻击节点无法得到其它节点私钥,经过签名的哈希函数得到进一步保护,本协议不可伪造性得证。

3.3 抗重放攻击分析

在感知节点与簇头节点双向认证中,采用时间戳方式抵抗攻击。当感知节点对身份信息进行签名时,获取当前时刻的时间戳[Ta]。当簇头节点对身份信息进行认证时,根据[H2(Rn,Qm)]与[βm]可计算得到在上一时间的时间戳。簇头节点将当前时刻的时间戳[Tb]与上一时刻比较,[Ta=βm⊕H2(Rn,Qm)],判断[Tb-Ta≤Δt]是否成立,[Δt]是允许的时间迟延。若成立则进行后续操作,若[Tb-Ta≤Δt]不成立则认为是很久以前传过的信息,为恶意节点重放攻击,节点身份认证失败,因此可知本协议能抵御重放攻击。

3.4 匿名性分析

在感知节点与簇头节点认证过程中,许多验证消息是通过窃听获取的,因此认证过程的匿名性分析尤为重要。

假设在传输过程中,恶意用户欲通过窃取[{Rm,MIDm,] [Qm}]进行解析获得感知节点身份信息,但[Rm=KmP],[Qm=SmP],[MIDm=Km+H1(Qn,Rm)Smmodq]中使用哈希函数的单向性与随机数,攻击者无法从以上几个参数解析出用户ID,因此协议的匿名性得到验证。

4 结语

针对现有身份认证方案缺乏普通节点对簇头节点的双向可信认证机制,簇头节点易成为整个物联网系统安全隐患问题,本文从感知节点安全性需求出发,提出一种基于椭圆曲线的物联网双向身份鉴别协议,实现了节点间的双向认证,改善了以往认证协议过于复杂、通信开销大、安全性差等问题。针对物联网身份认证面临的安全问题,本文对协议进行了安全性分析并与相关协议进行比较。分析表明,本方案具有正确性、匿名性、不可抵抗性,可有效识别可疑节点,阻止恶意节点窃取、篡改感知数据。但本文只考虑了集中式网络场景,后续将对分布式网络下高效安全的双向身份认证机制进行研究。

参考文献:

[1] PAWAR A B,GHUMBRE S. A survey on IoT applications, security challenges and counter measures[C].  International Conference on Computing, 2017.

[2] XU T, WENDTJ B,POTKONJAKM.Security of IoT systems: design challenges and opportunities[C].  International Conference on Computer-Aided Design (ICCAD), 2014:417-423.

[3] 杨光, 耿贵宁, 都婧,等.  物联网安全威胁与措施[J].  清华大学学报(自然科学版), 2011,51(10):107-112.

[4] 杨庚, 许建, 陈伟, 等.  物联网安全特征与关键技术[J].  南京邮电大学学报(自然科学版), 2010,30(4):20-29.

[5] ANH N D, RONALD J,PANGKAJ P. Security challenges in IoT development: a software engineering perspective[C].  The XP2017 Scientific Workshops, 2017.

[6] SHA K W,WEI W, YANG A T, et al. On security challenges and open issues in internet of things[J].  Future Generation Computer Systems, 2018,83(6):326-377.

[7] 武传坤, 张磊, 李江力.  物联网设备信任体系架构与轻量级身份认证方案设计[J].  信息网络安全, 2017,16(9):24-28.

[8] 龙威, 孙冬梅.  生物特征身份认证系统的安全性和用户隐私性研究[J].  保密科学技术, 2014,13(9):29-35.

[9] 王崇霞, 朱艳琴.  一种动态口令身份认证协议的设计与研究[J].  计算机工程与应用, 2010,21(18):75-77.

[10] 陈恳, 彭代渊, 鲁荣波.  一种基于ECC的一次性口令身份认证方案[J].  计算机技术与发展, 2005,14(5):41-43.

[11] HAJJMEL, CHAMOUNM, FADLALLAHA,etal. Analysis of authentication techniques in internet of things (IoT)[C].  2017 1st Cyber Security in Networking Conference (CSNet),2017:1-3.

[12] LI Y, DU L P, ZHAO G F.  A lightweight identity-based authentication protocol[C].  Signal Processing:Communication and Computing (ICSPCC),2013 IEEE International Conference on IEEE, 2013.

[13] 郭茂文. 物联网身份认证解决方案探讨[J]. 广东通信技术, 2019, 39(2):28-32.

[14] CELIA, YICG. Authenticated key management protocols for internet of things[C]. San Francisco: 2018 IEEE International Congress on Internet of Things (ICIOT), 2018:126-129.

[15] SIMSEK E PRATHGEB. Zero-knowledge and identity-based authentication and key exchange for internet of things[C]. Limerick, Ireland: 2019 IEEE 5th World Forum on Internet of Things (WF-IoT),2019:283-288.

[16] FILIPPO G,RENATO F,MAURIZIO R. A key distribution scheme for mobile wireless sensor networks: q-s-composite[J]. IEEE Transactions on Information Forensics & Security, 2017,12(1):34-47.

[17] HE D, ZHANG Y, CHEN J. Cryptanalysis and improvement of an anonymous authentication protocol for wireless access networks[J].  Wireless Personal Communications, 2014,74(2):229-243.

(責任编辑:杜能钢)

猜你喜欢

身份认证物联网
云电子身份管理与认证系统中的关键技术优化改进
基于LABVIEW的温室管理系统的研究与设计
论智能油田的发展趋势及必要性
中国或成“物联网”领军者