首页 > 范文大全 > 正文

工控物联网认证协议与密钥协商算法研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇工控物联网认证协议与密钥协商算法研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:随着物联网在工控领域发展的深入,终端设备的安全性显得尤为重要。文章以工控物联网为背景,研究了现有物联网认证协议密钥协商算法所存在的问题,提出了基于工控物联网的轻量级双向认证协议和改进的McCullagh-Barreto密钥协商算法。该认证协议可为终端设备提供身份认证,密钥协商算法可为该认证协议的通信保驾护航,两者的完美结合保证了工控物联网环境的安全。

关键词:工控物联网;安全性;认证协议;密钥协商

中图分类号:TP309 文献标识码:A 文章编号:2095-1302(2013)03-0042-02

0 引 言

工控物联网广泛应用于包括水文监测、数字化油田、智能电网、环境监控、矿井监测、智能建筑、智能交通等在内的众多领域,使得工业自动化控制进入了一个崭新的时代。但是,随着物联网在工业控制中的深入应用,对工控终端设备的身份假冒、数据泄露、越权操作等信息安全问题也接踵而至。为了保证工控物联网环境的安全运行,对终端设备的认证及信息保护必不可少,这也成为工控物联网发展中最重要的一环。

物联网认证是物联网安全中的重要环节,它是安全系统中的第一道屏障,在物联网中有着十分重要的作用[1]。物联网认证协议提供设备与设备、设备与服务器之间完善可靠的认证方式,只有在认证双方认证通过之后才可进行数据传输等操作。所有的认证机制或多或少都要使用密钥,为了保证认证过程中的信道安全,要对报文进行加密,密钥协商算法就可以很好地解决这个问题。

低成本工控物联网的终端具有资源有限、低能耗等特点,因此本文采用轻量级的物联网认证协议[2]。现有的轻量级认证协议包括Hash-Lock、随机Hash-Lock和Hash链[3]等协议。这些协议一方面存在着各种安全性的缺陷,易受多种方式的攻击;另一方面,大多应用于简单的RFID认证,对工控物联网复杂数据传输,能否满足认证需要也是个巨大挑战。在现有的密钥管理算法中,McCullagh-Barreto密钥协商算法[4]在算法安全性和运行效率两方面都符合要求,但该算法不能抵抗密钥泄露伪装攻击,因此,本文在该算法的基础上进行了改进,使其具有抵抗密钥泄露伪装攻击的能力,称为改进的McCullagh-Barreto密钥协商算法。

1 基于工控物联网的轻量级双向认证协议

为了解决现有认证协议存在的安全隐私保护弱点和性能不高等问题,本文提出基于工控物联网的轻量级双向认证协议(Light-weight Mutual Authentication Protocol Based on IoT of Industrial Control)。

该协议所采用的前提如下:

(1)每个终端具有一个独特的启动器,产生和维护标签的安全参数;

(2)每个终端和服务器都具有一个伪随机数位发生器;

(3)节点能够运行Hash函数h和带密钥Hash函数fk,且内存记录安全可靠;

(4)服务器和服务器之间的信道是安全的;

(5)服务器和终端之间的信道是不安全的,容易被窃听或篡改。

下面对协议中所用到的符号进行定义:

N:系统中终端的数目;

Ti:第i个终端(1≤i≤N);

IDi:第i个终端的标识符;

h:Hash函数,h:{0,1}l{0,1}l;

Di:终端的秘密信息;

Hi:第i个终端标识符的哈希值;

fk:带密钥Hash函数,fk:{0,1}l×{0,1}l{0,1}l;

l:终端标识符的比特长度;

xnew:x更新后的值;

xold:x更新前的值;

r: l比特的随机串;

:异或操作符;

:替换操作符;

>>:循环右移操作符;

∈R:随机选择操作符。

基于工控物联网的轻量级双向认证协议分为初始化和认证两个阶段。

1.1 初始化阶段

在认证过程运行之前,初始化过程执行系统初始化的步骤有两步:第一步是在协议中为每个终端Ti分配一个长度为l比特的标识符IDi,然后将IDi存储并锁定在终端内存中;第二步是计算Hi=h(IDi),在数据库中为每个终端Ti存储一条记录[(IDi,Hi)new,(IDi,Hi)old,Di],第1对值是为终端最新分配的IDi和Hi,第2对是之前分配的值,Di是终端的详细秘密信息。最初的(IDi,Hi)new是初始化分配的IDi和Hi,(IDi,Hi)old设置为空。

1.2 认证阶段

图1所示是协议认证阶段的流程图。图中,网关用于生成一个随机比特串r1∈R{0,1}l,并发送给终端Ti。终端Ti收到r1后,会生成一个随机比特串r2∈R{0,1}l作为会话的临时私钥,并计算,然后发送响应消息Hi,M1,M2给网关服务器,网关服务器传递消息Hi,M1,M2,r1给服务器。服务器收到终端的响应后,将进行以下步骤:

(1)服务器使用Hi检索数据库,如果在数据库中没有找到Hi,就发送出错信息给网关,并终止会话;若找到Hi=Hinew或Hi=Hiold, 则计算或,然后计算并判断。

(2)若,则验证通过,同时计算,然后发送Di和M3给网关。

(3)更新数据库中响应终端的记录,同时令IDioldIDi,HioldHi, Hinewh(IDinew);否则发送出错信息给网关服务器,终止会话。

网关服务器获取终端的秘密信息Di后,将传递认证消息M3给终端,然后由终端Ti计算并判断。如果不相等,终端就保持当前存储的IDi不变;若相等,则验证通过,同时更新当前存储的IDi,令:

本文协议的安全性取决于 IDi、r1 和 r2这3个参数的长度规格。一般来说,通过增加IDi、r1 和r2这3个参数的长度,可明显提高本文协议的安全性能,满足终端更高的安全要求。

2 改进的McCullagh-Barreto密钥协商算法

McCullagh-Barreto算法是一个高效的认证密钥协商算法,可以应用于工控物联网环境,然而Xie[5]等人指出该算法不能抵抗密钥泄露伪装攻击KCIA(Key Compromise Impersonation Attack),因此本文在该算法基础上进行了改进,使其具有抗密钥泄露伪装攻击的能力,称为改进的McCullagh-Barreto密钥协商算法。

改进的McCullagh-Barreto密钥协商算法分为初始化、密钥提取和密钥协商三个阶段。

2.1 初始化

给定安全参数k,算法随机选取s∈Zq*, P,Q∈G1,计算P0=sP。设置系统公开参数为。其中,三个hash函数为H1:{0,1}*Zq*, H2:{0,1}*Zq*, H3:{0,1}*{0,1}*。s为系统主密钥,由密钥生成中心KGC保管。

2.2 密钥提取

采用Sakai R和Kasahara M的密钥构造方法。KGC验证参与实体Pi在线公开的身份标识IDi,计算Pi的私钥Si=(H1(IDi)+s)-1P。Pi的公钥为Qi=(H1(IDi)+s)P=H1(IDi)P+P0。

2.3 密钥协商

两个实体Alice和Bob通过以下步骤协商一个共同的会话密钥。实体Alice的身份信息为IDA,其公私钥对为(PA,SA);实体Bob的身份信息为IDB,其公私钥对为(PB,SB)。Alice和Bob执行如下的算法:

Step1:用户Alice选择一个临时的密钥x∈RZq*,计算TA=xQB并将TA发送给Bob。

Step2:用户Bob选择一个临时的密钥y∈RZq*,计算TB=xQA并将TB发送给Alice。

Step3:用户Alice计算tA=H2(TA,IDA,IDB),tB=H2(TB,IDA,IDB),

KAB=e(TB+tBPA,SA)(x+tA),然后计算出共享会话密钥 SKAB=H3(IDA,IDB,TA,TB,KAB)。

Step4:用户Bob计算tA=H2(TA,IDA,IDB),tB=H2(TB,IDA,IDB),

KBA=e(TA+tBPB,SB)(y+tB),然后计算出共享会话密钥SKBA=H3(IDA,IDB,TA,TB,KBA)。

如果Alice和Bob诚实地执行算法,他们将协商得到一个共同的会话密钥:

SKAB=SKBA=H3(IDA,IDB,TA,TB,e(P,Q)(x+tA)(y+tB))

原算法认证过程中仅使用1个hash函数完成认证双方的会话密钥交换,攻击者很容易截获一方的私钥,进行伪装攻击。改进的算法则使用了3个hash函数完成会话密钥交换,且加入了节点的身份信息,使得算法更加安全。

3 结 语

本文提出的认证协议是轻量级协议,适用于低成本工控物联网环境,但对于更加复杂且对安全要求很高的环境还有待完善。因此,研究的下一步将考虑在认证协议中加入PKI证书[7],使其适用于认证更加严格的工控物联网环境,同时密钥协商算法也需要进行相应的改进来适应复杂环境下的工控物联网。

参 考 文 献

[1] SARMA S E,WEIS S A,ENGELS D W. Radio-frequency identification: secure risks and challenges[J]. RSA Laboratories CryPtobytes,2003,6(l): 2-9.

[2]DIMITRIOU T. A lightweight RFID protocol to protect against traceability and cloning attacks[C]. Secure Comm: Conference on Security and Privacy for Emerging Areas in Communication Networks. Athens, Greece: IEEE Press, 2005:59-66.

[3] OHKUBO M, SUZUKI K, KINOSHITA S. Hash-chain based forward-secure privacy protection scheme for low-cost RFID[C]// Proceedings of the 2004 Symposium on Cryptography and Information Security, Sendai: SCIS, 2004: 719-724.

[4] MCCULLAGH N, BARRETO P S. A new two-party identity-based authenticated key agreement [C]// proceedings of CT-RSA 2005, LNCS 3376. [S.l.]: Springer-Verlag, 2005: 262-274.

[5] XIE G. Cryptanalysis of Noel McCullagh and Paulo S.L.M. Barreto's two-party identity-based key agreement [R]. [S.l.]: Cryptology Print Archive, 2004.

[6] CHEN L, KUDLA C. Identity based authenticated key agreement protocols from pairings [C]// Proc of the 16th IEEE Computer Security Foundations Workshop. [S.l.]: IEEE, 2002: 213-219.

[7] CHOKHANI S, FORD W. Internet X.509 public key infrastructure certificate policy and certication practices framework [S]. [S.l.]: IETF RFC, 1999.