一种改进的无线传感器网络的匿名认证与密钥协商方案

2018-10-08 11:57张巧丽
关键词:智能卡离线攻击者

张 志, 张巧丽

(中南财经政法大学 信息与安全工程学院,武汉430073)

作为物联网的重要组成部分, 无线传感器网络(WSNs)广泛应用于军事监控、环境监测、自然灾害预警与救援、国土安全、工业制造、医疗卫生和城市交通等各种领域[1].

相对于传统通信网络技术, 无线传感器网络技术已经得到了飞速的增长. 但无线传感器网络中的敏感数据只能通过无线媒介进行协作, 而无线媒介的典型特征就是共享与不可靠. 如何保证无线传感器网络中敏感数据的安全通信是一个亟待解决的难题. 在用户、传感器节点以及网关之间通过认证及密钥协商方案产生后续加密通信的会话密钥,可以解决WSNs中的安全问题.

近年来,许多学者对安全认证及密钥协商方案进行了分析[2-6].2016年, Wong等[2]提出一种轻量级用户认证协议. 后来, Das等[3]指出Wong等的方案不能抵抗相同登录名和用户信息被盗攻击, 首次提出基于智能卡和口令的双因素认证方案. 2010年, Khan和Alghathbar[4]发现Das等的方案不能抵抗内部特权和网关节点旁路攻击, 并对其做出改进. 同年, Chen和Shih[5]也发现Das等的方案不满足安全的相互认证, 并提出一种改进方案. 后来, Vaidya[7]指出Das等的方案, Khan和Alghathbar等的方案以及Chen和Shih的方案存在相同的缺陷, 即丢失智能卡攻击, 传感器节点假冒攻击等, 并提出改进方案, 但改进方案存在用户假冒攻击和网关节点旁路攻击. 最近, Chang等[6]提出一种双因素用户认证及密钥协商方案, 并声称他们的方案可以抵制离线密码猜测攻击, 以及提供会话密钥安全(下称Chang方案). 然而, 分析了Chang方案之后发现存在一些安全缺陷, 如离线密码猜测攻击, 用户仿冒攻击, 前向安全问题, 不安全的验证信息及未满足用户匿名等.

本文提出了一种改进的基于无线传感器网络的匿名认证与密钥协商方案, 该方案解决了Chang方案的安全缺陷,并且提供安全的会话密钥.

本文主要分析Chang方案存在的安全缺陷, 提出一种改进方案, 并对改进方案进行BAN逻辑[7]证明, 安全性分析和性能分析. 结果表明改进方案可以有效抵御重放攻击, 离线密码猜测攻击, 用户假冒攻击, 传感器节点假冒攻击以及满足前向会话密钥的安全性. 同时还保证了用户匿名性和会话密钥的安全.

表1 相关参数Tab.1 Related parameters

1 Chang方案

Chang方案存在安全缺陷. 在给出安全性分析之前, 先介绍攻击者模型:假设攻击者A能够控制整个通信网络, 且拥有以下能力: 攻击者可以读取、修改、插入、删除、重放和延迟公共网络中传递的消息; 攻击者可以获取用户的口令, 窃取用户智能卡并提取其存储的秘密值, 但两者不能同时兼具; 攻击者可以获取传感器节点sj并提取利用其中的秘密值[8]. 相关参数见表1.

1.1 离线密码猜测攻击

(1) 攻击者A窃取合法用户的智能卡, 通过侧信道攻击[9]获取智能卡信息{IDs,Ai,Bi,Ci,TIDi,h(·),XPWi}.

(2) 攻击者A从双向认证阶段窃取登录请求{DIDi,MUi,G,TS1,TIDi}.

由以上步骤分析, Chang方案易遭受离线密码猜测攻击.

1.2 用户仿冒攻击

(1) 攻击者A窃取合法用户的智能卡, 提取信息{IDs,Ai,Bi,Ci,TIDi,h(·),XPWi}.

(2) 攻击者A从相互认证阶段窃取用户登录请求{DIDi,MUi,G,TS1,TIDi}.

(3) 通过离线密码猜测攻击, 攻击者A可以获取用户的口令PWi.

TS1).

由以上步骤分析, Chang方案易遭受用户仿冒攻击.

1.3 不安全的验证信息

1.4 用户匿名攻击

在Chang方案中, 登录信息{IDi,PWi}中用户IDi的以明文形式在公共的信道中传输. 考虑到多数用户为了方便口令的记忆, 常采用相同的口令. 一旦用户身份IDi泄露, 很容易遭受到攻击者的攻击. 所以, 安全的无线传感器方案需要支持用户匿名[10,11].

1.5 未满足前向安全

假设合法用户是攻击者, 则用户利用侧信道攻击[9]获取智能卡上信息{IDs,Ai,Bi,Ci,TIDi,h(·),XPWi}. 若攻击者A设法窃取了在公共信道上传输的消息{DIDi,MUi,G,TS1,TIDi}, 并窃取传感器节点的认证消息{yi,MG,Ui,TS4}, 那么攻击者A可以恢复出Ui的所有秘密值:

Kj=yi⊕h(Ki);

Ks=f(DIDi,Kj).

1.6 重放攻击

由于Chang方案未在注册阶段, 即网关节点GWN和用户Ui、传感器节点Sj分别产生各自的时间戳, 检查时间戳的新鲜度, 故容易遭受重放攻击[8].

2 新方案的描述

新方案是一种改进方案以解决Chang方案中的安全缺陷. 该方案满足Ui、GWN与Sj之间的安全认证, 并建立安全会话密钥. 新方案由注册阶段、登录阶段、认证及密钥协商阶段和口令更改阶段四部分组成.

2.1 注册阶段

假设用户Ui已分享PWi给网关节点GWN, 并且用户信息{IDi,h(PWi)}存储在GWN, 以下步骤完成用户注册:

h(PWi‖IDi‖RNr))和HPWi=h(PWi‖IDi‖RNr)⊕h(T1‖h(PWi)‖A‖A′).Ui将注册消息{IDi,VIi,HPWi,A,TS1}通过一个安全信道发送给GWN.

‖A‖A″).GWN将信息{Bi,Ci,h(·)}存储到智能卡上, 并通过安全信道发送给用户.

传感器网络中的每个传感器节点Sj也必须在网关节点GWN处进行注册,即传感器节点Sj与GWN共同商定一个安全的密钥XSj=h(k‖SIDj).GWN将SIDj对应的XSj存储在服务器数据库中,其中SIDj表示传感器节点的身份.

2.2 登录阶段

如果Ui想要获取传感器网络收集的信息, 需要把智能卡插入终端, 并输入身份IDi和口令PWi, 智能卡验证用户身份. 具体步骤如下:

(2) 智能卡计算Ki=h(XSi‖TS4‖RNr),DIDi=IDi⊕h(XSi‖TS4),Mui,G=h(h(IDi‖TS4)⊕XSi),PKSi=Ki⊕h(XSi‖TS4).

(3) 用户Ui将登录请求{DIDi,MUi,G,PKSi,TS4}通过公共信道传给GWN.

(4) 网关节点GWN将登录请求转发给距离最近的可用的传感器节点Sj.

2.3 认证及密钥协商阶段

在这个阶段,Ui,Sj和GWN通过以下步骤完成相互认证, 并在Ui和Sj之间生成会话密钥Ks. 具体步骤如下:

(2) 网关节点GWN计算Ki=PKSi⊕h(XSi‖TS4),XSj=h(SIDj‖K),MG,Sj=h(IDi‖XSj‖

TS5),DIDGWN=IDi⊕h(DIDi‖XSj‖TS5)和PKSGWN=Ki⊕h(XSj‖TS5), 并将信息{DIDi,DIDGWN,PKSGWN,MG,Sj,TS5}通过安全信道发送给传感器节点Sj.

(4) 传感器节点Sj计算Kj=h(XSj‖TS5),Ki=PSKGWN⊕h(XSj‖TS5),Ks=f(Ki,Kj),Zi=h(Kj‖IDi‖SIDj‖TS6)和PKSj=Kj⊕h(Ki‖TS6), 并将会话信息{SIDj,Zi,PKSj,TS6}发送给用户Ui.

(6) 用户Ui计算会话密钥Ks=f(Ki,Kj).

2.4 口令更改阶段

3 安全性分析

3.1 BAN逻辑证明

利用BAN逻辑[7]对改进方案进行证明. 结果表明新提出方案满足在用户和传感器节点之间提供会话密钥.

(1) 新提出方案目标的形式化描述

(2) 对新提出方案的初始化假设

A1:Ui|≡#(TS4);

A2:Ui|≡(h(XSi‖TS4‖RNr));

A3:Ui|≡#(TS6);

A7:GWN|≡#(TS4);

A10:Sj|≡#(TS5);

(3) 对新提出方案的形式化描述

(4) 对新提出方案的逻辑推理及证明

通过Msg1, 可以得到:

通过A8, S1和消息含义规则, 得到:

通过A7, S2和消息新鲜性规则, 得到:

通过S3和信念规则, 得到:

通过Msg2., 得到:

通过A12,S6和消息含义规则, 得到:

通过A10,S6和消息新鲜性规则, 得到:

通过S8和信念规则, 得到:

通过A13,S9和管辖规则, 得到:

(Goal8)

通过A15,S11和管辖规则, 得到:

(Goal7)

通过A12,S9和管辖规则, 得到:

根据Ks=f(Ki,Kj),得到:

(Goal4)

通过A14,S14和管辖规则, 得到:

(Goal3)

通过Msg3.,得到:

通过A8,S16和消息信念规则, 得到:

通过A3,S17和消息新鲜性规则, 得到:

(Goal6)

通过A6,S18和管辖规则, 得到:

(Goal5)

通过A3,S17和消息新鲜性规则, 得到:

根据Ks=f(ki,kj),得到:

通过A5,S21和管辖规则, 得到:

(Goal1)

由以上可得,新提出方案满足(Goal1),(Goal2),(Goal3),(Goal4),(Goal5),(Goal6),(Goal7)和(Goal8)目标, 即在用户Ui和传感器节点Sj之间共享密钥Ks和用户身份IDi.

3.2 安全性分析

本节表明, 新提出方案不仅可以克服Chang方案的缺陷, 还可以抵抗其他攻击.

3.2.1 相互认证

攻击者A不能获得用户私钥XSi,就不能产生合法的Bi=h(XSi‖h(h(PWi)‖A‖A″). 网关节点GWN通过检验Bi的正确性来验证用户Ui的合法性. 在网关节点GWN的作用下, 传感器节点Sj通过检验MG,Sj的正确性来验证用户Ui的合法性. 此时,Ui通过检验Zi正确性来验证Sj的合法性. 因此, 新提出方案满足相互认证.

3.2.2 用户匿名性

用户IDi隐藏在IDi=DIDi⊕h(XSi‖TS4),DIDGWN=IDi⊕h(DIDi‖XSi‖TS5). 如果没有Ui的私钥XSi或者GWN的私钥k, 攻击者A就无法从以上信息中提取出用户的真实身份. 因此, 新提出方案满足用户匿名.

3.2.3 会话密钥

在新提出方案中, 用户Ui和传感器节点Sj都计算为未来通信的会话密钥Ks=f(Ki,Kj). 因此, 新提出方案提供会话密钥.

3.2.4 离线密码猜测攻击

假设攻击者A可以窃取用户注册阶段发送的认证请求{IDi,VIi,HPWi,A,TS1}, 其中A=gamodp,A′=

yamodp=gakmodp,VIi=h(T1‖h(PWi)‖A‖A′‖

3.2.5 用户假冒攻击

3.2.6 抵抗传感器节点假冒攻击

假设攻击者A窃取传感器节点注册阶段的信息{SIDj,VIj,B,TS2}和{REGj,MG,Sj,TS3}. 其中,B=gbmodp,B′=ybmodp=gbkmodp,VIj=h(TS2‖h(PWj)‖B‖B′),XSj=h(k‖SIDj),MG,Sj=h(XSj‖h(TS3‖h(PWj)‖B‖B″),REGj=XSj⊕h(TS3‖h(PWj)‖B‖B″). 攻击者根据离线字典攻击来猜测密码PWj, A必须根据B=gbmodp来计算B′=ybmodp=gbkmodp,那么他将面对离散对数问题. 因此, 他无法获得Sj的密码. 通过类似的分析方法, 发现攻击者无法获得Sj的私钥XSj. 因此, 新提出方案可以抵抗传感器节点假冒攻击.

3.2.7 修改攻击

3.2.8 中间人攻击

从上述讨论中得知, 新提出方案满足Ui,Sj和GWN之间的相互认证. 因此, 新提出方案可以抵御中间人攻击.

3.2.9 重放攻击

在新提出方案的每个阶段的信息中都加入时间戳, 那么用户Ui,Sj和GWN通过检查时间戳的新鲜度来判断消息的重放. 因此, 新提出方案可以抵抗重放攻击.

3.3 安全性分析

本节将新提出方案与Chang方案进行安全性分析.具体情况如表2所示.

表2 安全性分析

容易得出Chang方案不满足安全的相互认证、用户匿名及提供安全的会话密钥,同时不能抵抗离线密码猜测攻击、用户仿冒攻击、修改攻击、中间人攻击、重放攻击. 而新提出方案满足表2描述的所有安全需求,具有更高的安全性.

4 性能分析

从计算开销和执行时间的角度, 本节将新提出方案与Chang方案进行比较.其中,THash表示执行单向散列函数操作,执行时间为0.0005s.TXor表示执行XOR操作,由于执行时间非常短,故在测量中不考虑XOR操作的执行时间.新提出方案与Chang方案具体情况如表3所示.

表3 性能对比

从表3可以看出,Chang方案、新提出方案总计算开销分别为42THash+21TXor,42THash+24TXor,并观察到Chang方案及新提出方案的执行时间均为0.021s.从计算开销和执行时间来看,新提出方案与Chang方案的计算开销和执行时间几乎相同.综上所述,新提出方案在满足Chang方案安全缺陷的同时,计算开销和执行时间方面也有不错的表现.

5 结语

Chang等提出的一种基于无线传感器网络认证和密钥协商方案, 并声称它可以抵御各种攻击, 但分析发现, 它不能提供匿名保护, 易遭受离线密码猜测攻击、用户假冒攻击、传感器节点假冒攻击和未满足前向安全等. 因此, 本文提出一种改进的基于无线传感器网络匿名认证与密钥协商方案. 通过BAN逻辑[7]证明和性能分析, 新提出的方案不仅可以克服Chang方案的缺陷, 还能防范各种攻击, 更适合为无线传感器网络环境下的各种应用提供安全防护.

猜你喜欢
智能卡离线攻击者
异步电机离线参数辨识方法
浅谈ATC离线基础数据的准备
互联互通车载控制器离线数据自动生成方法研究
正面迎接批判
正面迎接批判
基于STC89 单片机的非接触智能卡读写机设计
基于离线状态监测的复杂装备预知维修决策及优化
有限次重复博弈下的网络攻击行为研究
巴黎智能卡暨身份识别技术工业展落户亚洲
智能卡抗DPA攻击的设计与实现