夏艳东 戚荣鑫 季 赛,
1(南京信息工程大学网络信息中心 江苏 南京 210044)2(南京信息工程大学计算机与软件学院 江苏 南京 210044)
1999年,美国麻省理工学院(MIT)提出了物联网的雏形。2005年,国际电信联盟(ITU)发布了《ITU Internet reports 2005——the Internet of Things》,该报告正式在全世界范围内提出了“物联网”的概念[1]。工业物联网就是将射频识别技术、传感网和智能分析等技术应用到工业领域中来,以更高效便捷的方式监控工业生产流程,实时收集生产数据,从而优化生产管理,降低生产成本,提高生产效率[2]。然而,工业物联网与传统物联网相比对数据传输的可靠性和实时性要求高[3]。因此,工业物联网需要满足时间同步精确、通信准确和适应性高等要求[4]。随着工业物联网技术的广泛应用,工业物联网中的安全问题成为其发展过程中所面临的重大挑战。工业生产中传感器节点采集的数据通常在公共信道进行传输,数据易遭受外部威胁和攻击[5]。此外,工业物联网中的设备资源有限无法支持复杂的计算操作,现有的认证方案大多数基于非对称密码体制。而基于非对称密码体制的方案需要大量计算、存储等资源,因此无法应用于工业物联网中。为了保障采集工业物联网中的数据安全和隐私,建立适用于工业物联网的安全且轻量的认证与密钥交换协议是当前研究的热点方向。Chang等[6]设计了一种基于智能卡的移动无线传感网认证协议,该协议能够提供完美前向安全性,但Li等[19]分析认为Chang等人的协议存在缺乏正确的双向认证且无法抵抗智能卡丢失攻击等问题。为了提高用户身份验证的安全性,生物特征凭借唯一性、不易复制性等特性[7-8]而得到广泛应用[9,11]。Li等[19]基于椭圆曲线密码体制,提出了一种基于生物特征的无线传感网认证协议,该协议解决了Chang等的协议安全威胁,且能够抵抗大多数常见攻击并提供一些理想的安全属性。何炎祥等[10]梳理了无线传感器网络中公钥密码机制研究现状,指出无线传感器网络对外部用户的认证应该集中于基于口令、智能卡、生物特征等多因素访问控制方法的研究。Srinivas等[9]提出了一种基于智能卡,生物特征和密码的三因素用户认证密钥协商方案,该方案支持智能卡撤销以及密码和生物密钥更新。Li等[11]提出了一种基于密码,切比雪夫混沌映射和二次剩余定理的三方认证密钥协商方案,该方案提供了用户匿名属性。Esfahani等[13]提出一种适用于工业物联网中机器对机器(M2M)通信的轻量级认证机制,该机制仅使用哈希函数和异或操作,尽管该协议适用于资源有限的M2M设备,但是未考虑网关节点(GWN)与M2M设备之间的认证。
针对上述研究中仍存在的问题,本文利用基于物理不可克隆函数(PUFs)与模糊提取器,提出了一种轻质的用户认证与密钥交换协议,所提出的协议利用模糊提取器提取生物特征信息进行用户认证,并结合物理不可克隆函数提取传感器设备物理特征。本协议仅使用单向函数,异或操作和对称加/解密技术实现工业物联网中用户,GWN和传感器设备的三重双向认证并建立用户与传感器设备间的安全会话密钥,能够有效减少通信与计算开销。实验结果与分析表明,所提出的协议适用于资源有限的传感器设备,能够抵抗重放攻击、伪装攻击、特权内部攻击、中间人攻击和物理设备窃取等多种攻击。
物理不可克隆函数[12,14]是基于难以处理的复杂的物理系统将一组挑战映射到一组响应中的函数。PUF表示物理不可克隆函数,PUF的输入一般称为挑战,用c∈C表示,输出一般被称为响应,用r∈R表示。挑战及其对应的响应被称为挑战-响应对(Challenge Response Pair,CRP),用CRP(c,r)表示。存在一个映射关系PUF:C→R使得PUF(C)=R,对于每一个物理不可克隆函数PUF,挑战响应对是唯一的。物理不可克隆函数PUF具有以下属性:
(1)PUF函数的输出必须取决于硬件的物理微结构,对于任意PUF函数,使用相同的挑战c作为PUF函数输入时,在误差允许的范围内,该函数总是输出相同的响应值r=PUF(c)。
(2)PUF函数的输出是不可预测的:给定挑战响应对集合Q={(ci,ri=PUF(ci))|i=1,2,…,n},在一定误差范围内,敌手预测响应值PUF(ct)是困难的。其中ct是一个挑战且满足条件(ct,rt=PUF(ct)∉Q。
(3) 函数PUF易于实现:给定函数PUF和输入c,在多项式时间内计算出PUF(c)是可行的。
(4) 函数PUF具有不可克隆性:从物理层面,给定一个实体的物理不可克隆函数PUF,构造一个物理实体使得该实体包含的物理不可克隆函数PUF′对于任意一个输入c∈C在很小的误差范围内满足PUF′(c)=PUF(c)是困难的。从数学层面,给定一个物理不可克隆函数,构造一个函数F使得对于任意一个输入c∈C在很小误差范围内满足F(c)=PUF(c)是困难的。因此,函数PUF是物理不可克隆的。
近年来,模糊提取器(Fuzzy Extractor, FE)[15,17]广泛应用于用户生物特征信息验证,模糊提取器通常定义为一个三元组(M,l,t),主要由以下密钥生成算法和密钥重构算法组成。
Gen(·):密钥生成算法是一个概率性算法。用户以个人生物信息BIOi作为算法输入,其中BIOi取自给定的度量空间M,输出一个对应的长度为l比特的生物密钥σi∈{0,1}l和一个公共重构参数τi,算法满足Gen(BIOi)=(σi,τi)。其中,用户对于生物密钥σi保密,公共重构参数τi用于帮助重构出初始生物密钥σi。
本文基于用户生物特征和传感器设备物理特征,提出了一种适用于工业物联网环境的轻量的用户认证与密钥交换协议。该协议包含6个步骤:传感器设备注册,用户注册,网关节点注册,登录,身份认证与密钥交换,生物密钥和密码更新。用户、网关节点和传感器设备分别在注册中心注册,注册中心作为一个可信第三方为用户,网关节点和传感器设备生成认证所需的身份标识和密钥,具体的注册流程如图1所示。
图1 工业物联网初始化注册阶段
传感器设备SDj以离线的方式执行以下步骤完成注册,具体的注册步骤如下:
(1) 传感器设备SDj输入挑战cj,经过函数PUF得到响应值rj,然后利用模糊提取器提取传感器设备的物理特征Gen(rj)=(σrj,τrj)得到σrj,并在安全的信道上发送注册请求和σrj给注册中心(Register Center,RC)。
(2) 在接收到传感器设备SDj的注册请求后,RC生成一个长度为1 024比特的密钥keyISDj-GWN并为每个传感器设备生成长度为128比特的身份标识ISDj。同时,为了保护密钥keyISDj-GWN的安全,RC计算Ej=h(keyISDj-GWN‖ISDj)⊕σrj,然后将ISDj和Ej发送给传感器设备。
(3)传感器设备SDj计算Ej⊕σrj并将ISDj和Ej⊕σrj保存在存储器中。
用户Ui在一个安全的信道上执行以下步骤完成注册,具体注册步骤如下:
(1) 用户Ui选择一个128比特长的身份标识IDi和一个64比特长的高熵密码PWi,通过指纹提取传感器取得用户生物特征信息BIOi,并依据密钥生成算法计算生物密钥σi。然后,选择一个随机数a并计算RPWi=h(PWi‖σi‖a),将消息〈IDi,RPWi〉发送给RC。
(2) RC接收到用户注册请求后,生成一个1 024比特长的密钥keyUi-GWN和对应于IDi的临时身份标识TIDi,计算Bi=h(IDi‖keyUi-GWN)⊕RPWi;然后,RC通过安全信道将消息〈TIDi,Bi〉返回给用户。
网关节点(IGWN)以离线的方式执行以下步骤完成注册:
(1) 网关节点IGWN发送注册请求给RC。
(2) RC接收到网关节点IGWN的注册请求后,为网关节点生成一个128比特长的身份标识IGWN;然后将用户信息{TIDi,IDi,keyUi-GWN|i=1,2,…,n}和传感器信息{ISDj,keyISDj-GWN|j=1,2,…,n}安全地保存到网关节点中。
在登录过程中,用户Ui发送请求访问传感器设备,为了减少资源开销,在发送请求前需要先进行本地化身份验证,具体的步骤如下:
(3)用户Ui通过公共信道发送消息请求TIDi、M1、M2、M3和TS1给网关节点IGWN。
当用户Ui完成本地化身份验证并发送认证请求给目标传感器设备,认证与密钥交换的过程如图2所示。该步骤是为了通过网关节点IGWN与目标访问传感器设备进行双向认证并建立安全会话密钥。该步骤包含用户与网关节点、网关节点与目标传感器设备、传感器设备与用户之间的双向认证。因为本方案采用时钟同步机制,采用随机数与时间戳相结合的方式防止重放攻击,具体的认证与密钥交换过程如下。
图2 用户认证与密钥交换过程
该步骤进行本地化的生物密钥与密码更新,不需要RC的参与,具体的更新过程如下:
本协议采用模糊提取器提取用户生物特征并结合物理不可克隆函数提取传感器设备物理特征。在保证协议安全性的前提下提出了一个适用于工业物联网环境更轻量的认证与密钥交换协议。协议中,我们仅采用对称加/解密操作、哈希操作、异或操作来实现三重双向身份并建立用户与传感器设备的会话密钥。由于异或操作所需要的计算开销远小于其他操作,我们只考虑模糊提取操作、哈希操作、对称加/解密操作和群G1上的标量乘法操作。我们以符号Tfe、Th、Te和Tm分别表示进行模糊提取操作、哈希操作、对称加/解密操作和群G1上的标量乘法操作所需要计算开销。各操作所需的计算开销如表 1所示。
表1 各操作计算开销
在认证与密钥交换阶段,Li等[19]的协议需要的计算总开销为1Tfe+19Th+6Tm,Li等[20]的协议需要的计算总开销为1Tfe+19Th+3Tm+8Te,Wang等[21]的协议需要的计算总开销为26Th+4Tm+4Te,本文协议需要的计算总开销为2Tfe+19Th+4Te。同时,Li等[19]、Li等[20]、Wang等[21]以及本文协议中实体间通信所需的通信开销分别为2 720比特、2 688比特、3 200比特和3 040比特。本文协议在保证安全的前提下提高了协议运行的效率。本文协议和其他协议在认证与密钥交换阶段的计算开销和通信开销如表2所示。表3为各文献安全属性对比。可以看出,本文协议的计算总开销与通信总开销远小于文献[19]、文献[20]和文献[21],同时能够抵抗多种安全威胁。本文协议与其他协议相比,支持更多如用户匿名、不可追踪等安全属性,并提升安全性,降低了计算开销,更适合于资源受限的工业物联网中的传感器设备。
表2 各方案性能对比
表3 安全属性对比
本文利用物理不可克隆函数与模糊提取器,提出了一种用于工业物联网的身份认证与密钥交换协议,该协议使用模糊提取器实现了用户生物特征与传感器设备物理特征模式匹配,有效保证了用户设备与传感器设备的安全。实验结果表明本文协议能够抵抗多种攻击且满足众多安全需求,有效提高了协议执行的效率。与其他现有的方案相比,本文协议更适用于资源有限的工业物联网环境。