面向智能电网移动终端的轻量级认证方案

2023-12-29 12:36邓建锋黄宝鑫张丽娟胡厚鹏
关键词:身份验证密钥消息

邓建锋,肖 焯,黄宝鑫,张丽娟,胡厚鹏

(1.南方电网数字电网研究院有限公司,广州 510700;2.南方电网贵州电力科学研究院,贵阳 550002)

0 引 言

智能电网是新一代电网的智能化,实现了“发—输—配—储—用”的电力系统全生命周期以及各环节的信息化、自动化和互动化[1]。随着智能电网系统的逐步完善,移动终端在智能电网中的应用也越来越普及,其便携性决定了它在智能电网中可以应用于多种场景,在获取信息和传递信息等方面有显著优势。与此同时,传统移动终端在通信时因缺少足够的安全保障措施招致多种安全威胁。例如,攻击者可以通过简单的窃听轻松拦截消息,然后发起攻击获取用户的隐私信息。因此,在移动终端信息交换之前,必须进行身份认证,以确保与合法实体的安全通信。

近年来,诸多学者在智能电网移动终端认证方向进行了深入研究。为解决通信实体间的身份认证问题,2018年,Cheon等[2]提出了一种高效的线性同态认证加密方案,保证了针对窃听和伪造攻击的安全性。2019年,Zhang等[3]提出了一种用于智能电网的轻量级匿名认证和密钥协商方案,实现了智能电表与服务提供商之间的快速相互认证,同时保证了智能电表的匿名性和不可追溯性。赖启超等[4]提出了一个基于身份信息验证的可靠数据聚合方案,该方案支持批量验证,能够将所有用户验证所需的双线性对运算次数降低到一个常数。Srinivas等[5]设计了一种基于时间凭证的匿名轻量级用户身份验证机制,该机制有能力抵抗各种已知的针对被动/主动对手的攻击。2020年,Ali等[6]表明Srinivas等的方案无法抵抗可追溯性和被盗验证者攻击,因此,他们使用轻量级对称密钥原语和临时凭证,提出了一种改进方案,在保持轻量级的同时提供了针对许多已知攻击的安全性,包括可追溯性和被盗验证器。Iqbal等[7]首先为基于软件定义网络 SDN 的智能家居提出了一种新的隐私保护安全架构。随后,基于所提出的安全体系结构核心基础设计了匿名轻量级身份验证机制。Gaba等[8]提出了一种健壮且轻量级的相互认证方案,方案中使用了隐式证书并在智能环境中实现智能设备之间的相互认证和密钥协商,保护分布式智能环境免受未经授权的滥用。Ding等[9]设计了一种智能电网环境下高效的基于身份的计量数据聚合方案,支持收集器对电力数据的批量验证,提高了计算效率,并且不损害采集数据的机密性。但是协议中用户身份的匿名化也让可信第三方追踪电力数据的真实来源变得困难。2021年, Yang等[10]提出了一种新的基于区块链的身份验证方案,方案提出的框架结合了区块链技术和模块化平方根算法来实现有效的身份验证过程。2022年,Chaudhry等[11]提出了一种使用椭圆曲线和对称密钥加密以及单向消息身份验证操作的智能电网基础设施的轻量级身份验证方案,通过在智能电表和邻居区域网络网关之间仅交换两条消息来完成身份验证过程。Sureshkumar等[12]在电动汽车入网(vehicle-to-grid,V2G)网络环境中引入了雾服务器来实现并行管理,但是整个协议由于在登录和认证阶段频繁地使用哈希函数运算,导致计算开销非常大。

本文设计了一种基于桶移位物理不可克隆功能(barrel shifter physical unclonable function,BS-PUF)的智能电网移动终端的轻量级认证方案,并在协议中加入“数字指纹”。物理不可克隆功能是资源受限设备实现轻量级安全身份验证的重要因素。此外,考虑到智能电网节点的资源受限特性和对延迟的低容忍特性,认证方案应尽可能降低计算和通信成本。本文方案具有如下特点。

1)匿名性。将移动终端身份标识符与可信机构共享的临时密钥生成随机假名,实现身份的匿名性。移动终端在各次认证中使用的假名之间没有关联关系,具有不可连接性,避免了敏感信息泄露。

2)高效性。基于椭圆曲线构造认证协议,实现协议的轻量化;利用BS-PUF[13-14]的物理特性实现设备秘密信息的零存储,减少密钥管理的成本。

3)动态性。用户口令可离线进行动态更新,提高口令的安全性,可有效抵抗离线字典攻击。

4)可靠性。结合密码学与BS-PUF,实现双因素安全,若移动终端没有内置的BS-PUF与用户输入的密码,则无法完成认证流程。

1 相关基础

1.1 困难问题假设

设G1是由素数q和生成元P构成的椭圆曲线群,下面将对下列棘手问题进行介绍。

1.2 认证与密钥协商安全模型

认证协议中共有3类参与者:移动终端M、可信机构TA和电力网关GW。

2 方案设计

本方案包括3个实体:移动终端(M)、电力网关(GW)和可信机构(TA)。M作为认证主体,发起认证请求,进入电力网关系统。GW是一种固定设备,用于采集信息和信息转发。TA则是可信机构,负责核验认证双方身份,并辅助认证。在M与GW均部署独一无二的BS-PUF,通过模糊处理器(fuzzy extractor,FE)进行噪声处理,并通过椭圆曲线密码技术为移动终端生成随机假名,借此实现移动终端的匿名性。M进入GW的辖区时,M与GW会进行双向认证的流程,在过程中需要TA的辅助,并在认证通过后生成会话密钥。M通过GW与TA进行交互,不同的移动终端由不同的电力网关单元负责,实现了双向安全认证与密钥协商,如图1所示,与本方案相关的符号如表1所示。

表1 认证协议符号定义Tab.1 Definition of certification protocol symbols

图1 认证场景图Fig.1 Authentication scenario map

认证过程主要包括以下4个阶段:系统初始化、注册、认证和密码更新。

2.1 系统初始化

2.2 注册

2.2.1 移动终端注册

移动终端注册详细步骤如下。

3)移动终端Mi收到来自TA挑战xi之后,将会计算挑战xi的响应值fmi=PUFmi(xi),并通过模糊提取器(fuzzy extractor,FE)处理响应值fmi,即(kmi,pmi)=Gen(fmi),其中,kmi是秘密值与pmi是辅助值。然后,结合用户输入的密码PWi,计算GWi=(xi‖MIDi)⊕h(PWi),M0=h0(MIDi‖kmi‖PWi‖GWi),并存储(GWi,M0)。最后,将辅助值pmi发送给TA。

4)TA存储{MIDi,pmi}。

2.2.2 电力网关单元注册

GW注册详细步骤如下。

2)TA检查GIDj是否已注册,若已注册,则拒绝请求。否则,存储{GIDj,UQj,pGj}。

2.3 认证阶段

移动终端Mi通过TA与GWi达成双向认证,如图2所示,并协商出会话密钥。具体详细步骤如下。

Mi GWj TA用户输入PWi(xi‖MIDi)=GWih(PWi)fax=PUFmi(xi)(kmi,pmi=Gen(fmi)Ni={Gi,GMIDi,GIDi,f′mi,RSi,Vi,Ti}→计算并验证M1=M1选择随机数r1计算R1=r1PB=(Bx,By)=r1Sfmi-Gj=PUFmi(GIDj)GMIDi=MIDiBxRS1=fmi-Gjh1(By)f∗mi=fmih1(pmi)V1=h0(MIDi‖GIDj‖IDt‖kmi‖RS1‖R1‖T1‖Bx)验证T1与GIDjfGi-m=fGi=PUFGi(GIDj)(kG,PGi)=Gen(fGi-mi)C=(Cx,Cy)=kGi·SRS2=fGi-mh1(Cy)N2={N1,RS1,V2,T2}→V2=h0(RS2‖T2‖Cx‖f∗Gi-mi‖kQ‖V1)N1={Keym,Keya,Keyt-a,V1,V1,T1}←验证T3fmi-Gj=Keygjh1(Cx)keyt=Keyt-Gjh0(Cx)计算并验证V+i=+V1KGj-mi=PUFGj(fmi-Gj)KeyR-mi=Keyrh0(KGj-mi)SK=h2(keyr‖KGj-mi‖GMIDi‖GIDj)Vs=h0(keyr‖V4‖T4‖SK) 验证T2B=(Bx,By)=s·R1MIDi=GMIDiBxfmi-Gj=RS1h1(By)根据VIDi可搜索得到Pmik∗mi=Rep(fmi,pmi)计算并验证V+i=+Vi同理V+2=+V1选择随机数r3Keyr=h0(Cx‖Bx‖r3)Keymi=fCj-mih1(Cy)KeyT-Gi=keyrh0(Cx)V3=h0(keyr‖KeyCr‖Cx‖T3)V4=h0(keyr‖Keymi‖k∗mi‖T3) N4={Keymi,KeyN-mi,V4,V5,T3,T4}←验证T4fGj-mi=Keymih1(kmi)Kki-Gj=PUFmi(fGj-mi)keyr=KeyR-mih0(mGj-mi)计算并验证V+4=V4SK=h2(keyr‖Kmi-Gj‖GMIDi‖GIDj)计算并验证V+4=+V4

2.4 密码离线更新

用户PWi可实现离线更新,只需要根据新的PWi值更新(GWi,Mi)。用户PWi离线更新详细步骤如下。

1)用户Ui发送当前密码与更改密码请求〈PWi,reqchangepw〉到移动终端Mi。

3)移动终端Mi向用户发送输入新密码请求reqnewpw。

3 方案分析

将对文中所提出的方案进行安全性分析,以及对比其他方案进行性能分析。

3.1 正确性证明

利用BAN逻辑[15](一种形式化逻辑分析方法)对本文协议进行正确性证明。

3.1.1 建立证明目标

目标1

(1)

目标2

(2)

目标3

(3)

目标4

(4)

3.1.2 协议的简化模型

将本文提出的方案通过以下方式转换为理想形式。

消息1(Mi→Gj):

G1,GMIDi,GIDj,T1

消息2(Mi→TA):

消息3(Gj→TA):

RS2,V2,T2

消息4(TA→Gj):

keyGj,keyr-Gj,V3,T3

消息5(TA→Mi):

keymi,keyr-mi,V4,R3,T3

消息6(Gj→Mi):

V5,T4

3.1.3 协议的初始化假设

A1:Mi|≡#(r1)

(5)

A2:Gj|≡#(r2)

(6)

A3:Mi|≡#(fmi-Gj)

(7)

A4:Gj|≡#(fGj-mi)

(8)

(9)

(10)

(11)

(12)

(13)

(14)

(15)

(16)

A13:Vi|≡Gj|⟹fGj-mi

(17)

A14:Gj|≡Mi|⟹fmi-Gj

(18)

(19)

(20)

A17:Mi|≡TA⟹keyr

(21)

A18:Gj|≡TA⟹keyr

(22)

详细步骤如下。

根据消息6,有

Mi◁{V5,T4}

(23)

根据消息接收规则有

(24)

根据A15和消息含义规则有

(25)

根据消息新鲜性规则有

(26)

根据临时值校验规则有

(27)

根据信念规则有

(28)

至此,目标2证明完毕。

根据A13和管辖规则有

Mi|≡{KGj-mi,keyr,GMIDi,GIDj}

(29)

根据式会话密钥规则有

(30)

至此,目标1证明完毕。

根据消息1与消息6有

Gj◁{GMIDi,GIDj,keyGj,keyr-Gj,V3,T3}

(31)

根据A12与消息含义规则有

Gj|≡TA|~{GMIDi,GIDj,fmi-Gj,keyr}

(32)

根据消息新鲜性规则有

Gj|≡TA|~#{GMIDi,GIDj,fmi-Gj,keyr}

(33)

根据临时值校验规则有

Gj|≡TA|≡{GMIDi,GIDj,fmi-Gj,keyr}

(34)

根据A18和管辖规则有

Gj|≡{GMIDi,GIDj,fmi-Gj,keyr}

(35)

根据A16和消息含义原则有

Gj|≡Mi|~{GMIDi,GIDj,KGj-mi,keyr}

(36)

根据A2和临时值验证规则有

Gj|≡Mi|≡{GMIDi,GIDj,KGj-mi,keyr}

(37)

根据A4、式(3.14)与会话密钥规则有

(38)

至此,目标3证明完毕。

根据消息接收规则有

(39)

根据临时值验证规则有

(40)

至此,目标4证明完毕。

最后得出结论,在本文提出的协议中,Mi与Gj分别与第三方TA进行身份验证,并通过TA传输有效信息,产生会话密钥SK。

3.2 安全性证明

本节利用eCK模型[16](扩展CK模型,赋予敌手最强攻击能力的安全模型)对本文方案进行分析,具体分析由定理1及其证明给出。

定理1在随机预言模型中,假设PPT敌手在时间t内对协议P进行查询挑战,其中,包括qhSM3()查询,qsSend()查询,qeExecute()查询。p为协议中选择的大素数。因此,有

(41)

(42)

(43)

GameG1:在本轮游戏中,将会模拟SM3 oracleHi(i=0,1,2)、PUF oraclesPUFD(PUFviorPUFrj)。

(44)

GameG2:在本轮游戏中,排除了G1模拟中发生碰撞的情况。碰撞发生情况分为2种:①直接进行SM3查询时,输出结果发生碰撞;②消息记录{N1,N2,N3,N4}可能发生的碰撞。根据生日悖论,可知发生碰撞的概率是可忽略的。因此,有

Δ1=|Adv2(A)-Adv1(A)|≤

(45)

(46)

(47)

因此,有

(48)

(49)

(50)

(51)

综合得出

6ECCDH+8puf

(52)

此处将本文方案与协议C-G方案[17]、M-H方案[18]、S-S方案[19]在安全属性方面进行比较,如表2所示。C-G方案未实现用户匿名性,并只依赖于检查随机数来抵御重放攻击。M-H方案中通过随机数实现方案的匿名性,但由于参与消息验证的私密参数DIDi或DIDj直接存储在硬件设备与CS的数据库中,当列表失窃时,敌手可以顺利伪装为合法用户。同理,该方案也不能抵挡侧信道攻击。S-S方案同样未实现匿名性以及移动终端不可追踪性,并在该方案中,将认证秘密信息存储于防篡改设备中,具有一定安全隐患。

表2 安全特性对比Tab.2 Comparison of safety characteristics

3.3 性能分析

将本文方案与现有相似方案在计算开销与通信开销方面进行对比,进一步对所提方案进行分析。

首先,将本文方案与C-G方案[17]、M-H方案[18]、S-S方案[19]和J-Z方案[20]进行计算复杂度的对比,结果如表3所示,其中,Ta表示执行椭圆曲线点加的计算时间,TPUF表示执行PUF运算的时间,TH表示执行Hash函数的时间,Tbp表示双线性配对的执行时间,TSE表示执行对称加密的计算时间,TP表示执行椭圆曲线的点乘运算时间。本文方案以及J-Z方案、S-S方案主要采用的是Hash计算、点乘和PUF运算,相对而言本方案所需的计算量更少,且目标RSU所需要的计算量更少,可轻松应对多移动终端认证的情况。C-G方案与M-H方案除上述运算之外,还需要另外执行非对称加密以及双线性配对操作,计算复杂度更高。

其次,基于模拟实验将提出方案与C-G方案[17]、M-H方案[18]、S-S方案[19]和J-Z方案[20]进行计算耗时对比,结果如图3所示。模拟实验采用了如下几台设备:笔记本电脑(华硕,英特尔i5-4200H 2.8 GHz 处理器、8 Gyte内存、Windows 10 X64)模拟Mi;台式电脑(AMD R7-1700X 3.8Gh处理器、16 Gyte内存、Windows 10 64操作系统)模拟算力强于Mi的目标方。PUF模拟:在MSP430单片机上用798 mHz的CPU对128位仲裁器PUF电路进行仿真。由于可信机构TA/CCS算力强大,因此,第三方的计算时间不做对比,仅对比执行时间较长的认证双方。

表3 计算复杂度对比Tab.3 Comparison of calculation complexity

图3 计算开销对比图Fig.3 Comparison chat of computing overhead

最后比较了本文方案和C-G方案[17]、M-H方案[18]、S-S方案[19]和J-Z方案[20]的通信成本,结果如表4所示。

表4 通信开销对比Tab.4 Comparison of communication expenses

假设身份、随机数、PUF质询和响应长度均为128 bits,哈希输出结果为256 bits,时间戳长度为32 bits,椭圆曲线点的长度和双线性映射结果均为512 bits,并使用|ID|、|PUF|、|H|、|P|、|T|、|bp|分别表示身份标识符、PUF、Hash函数、椭圆曲线点乘结果、时间戳所需通信开销和双线性配对结果的长度。本文方案传输消息包括4|ID|+9|PUF|+8|H|+2|P|+6|T|=4 928 bits。与本文方案结构模型类似的M-H的方案,传输消息包括3|ID|+6|H|+10|P|+5|T|=7 200 bits。而在C-G方案、S-S方案与J-Z方案中的3个方案,需要TA作为中转,进而减少了部分通信开销。在C-G方案中,传输消息包括5|ID|+4|H|+4|PUF|+6|bp|+5|P|=6 272 bits。在S-S方案中,传输消息的总计为3|ID|+4|P|+|T|=2 464 bits。在J-Z方案中,传输的消息包括3|ID|+10|H|+2|PUF|+|P|+6|T|=3 904 bits。但综上所述,本方案在移动终端稍微增加通信开销的前提下实现了系统安全。

4 结束语

针对智能电网的高效认证和隐私保护需求,提出了一种基于BS-PUF的智能电网移动终端轻量级认证方案。该方案采用椭圆曲线进行构造,有效降低了计算复杂度;通过BS-PUF实现认证过程免存储敏感认证信息,提高了系统安全性;基于双因素的认证模式,保证了协议的可靠性;加入了口令离线更新机制,有效降低字典攻击风险。最后,通过形式化安全证明及仿真实验分析表明,本文方案具有良好的安全性和实用性。

猜你喜欢
身份验证密钥消息
探索企业创新密钥
密码系统中密钥的状态与保护*
一张图看5G消息
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现
Endogenous neurotrophin-3 promotes neuronal sprouting from dorsal root ganglia
消息
消息
消息
身份验证中基于主动外观模型的手形匹配