基于智能卡的匿名认证与密钥协商协议

2023-05-08 03:17贾亦巧王杰昌付主木
计算机应用与软件 2023年4期
关键词:智能卡密钥椭圆

张 平 贾亦巧 王杰昌 付主木

1(河南科技大学数学与统计学院 河南 洛阳 471023) 2(郑州大学体育学院计算机教研室 河南 郑州 450044) 3(河南科技大学信息工程学院 河南 洛阳 471023)

0 引 言

伴随移动通信与网络技术的飞跃,现如今,诸多的业务活动都依靠网络进行,如社交通信、移动支付与线上购物等。网络的确使人们的工作生活变得高效便捷,但同时也引发了一些安全隐患,使得信息安全与隐私保护成为了社会普遍关注的问题。因此,提升客户在使用网络时的安全性与隐私性具有极其重要的研究价值,如何保证客户与服务提供方之间进行安全的匿名认证与密钥协商成为亟须解决的问题。

作为密码学中广泛使用的协议,认证与密钥协商协议可使通信方之间建立共享会话密钥,并以此实现开放网络中的安全通信[1]。Diffie等[2]提出两方的密钥协商协议;Shamir[3]提出基于身份的密码体制;Boneh等[4]依据双线性对理论提出基于身份的加密协议。之后,研究者们不断提出基于身份与双线性对的认证密钥协商协议[5-7],但双线性映射存在运算速度较慢[8-9]等问题。为提升计算效率,部分基于身份和椭圆曲线加密理论的认证协议[10-15]被提出,但其中大都没有考虑客户的匿名性。

近年来,将不易遗忘、关联度大且便于提取的生物特征作为认证要素的生物认证技术正蓬勃发展[16-20]。因此,本文尝试将智能卡、口令与生物认证相结合,提出一个新的基于智能卡的匿名认证与密钥协商协议,并基于椭圆曲线上的计算性Diffie-Hellman假设(CDH假设),结合eCK安全模型[18]与随机预言机模型证明了协议具有前向安全、会话临时秘密泄露安全、抗重放攻击、抗主动攻击、抗伪造攻击、抗中间人攻击、抗内部特权人员攻击、抗密钥泄露伪装、抗智能卡丢失攻击等安全属性。相较于现有协议,本文协议不但具有良好的安全性,也具有较高的通信效率与实用性。

1 预备知识

1.1 抗碰撞的单向Hash函数

Hash函数是一种可将任意长的消息M映射为较短且定长值的公开函数。抗碰撞的单向Hash函数H(·)满足以下性质[21]:

性质1已知M,易计算h=H(M)。

性质2已知H′,求使得H(M)=h的M在计算上不可行。

性质3已知M,找到M′(M′≠M),使得H(M′)=H(M)在计算上不可行。

性质4找到M与M′(M′≠M),使得H(M′)=H(M)在计算上不可行。

1.2 椭圆曲线上的CDH假设

1.3 安全模型的定义

(1)Corrupt(IDC)查询:S返回客户C(身份为IDC)的私钥给A(模拟前向安全性)。

(5)SmartcardReveal(IDC,smartcard):S返回客户C拥有的智能卡中的信息给A(模拟智能卡丢失攻击)。

(6)BiometricReveal(IDC,t)查询:S返回客户C对应的生物特征信息给A。

最后,A输出对Test查询中b的猜测值b′,若有b′=b,则A赢得游戏,定义其获胜的优势概率为:

式中:k为安全参数。

定义3匿名认证与密钥协商协议在满足以下两个条件时为安全协议:

(2) 任意概率多项式时间内,敌手A获胜的优势概率AdvA(k)可忽略。

1.4 生物特征的优点

生物特征具有稳定性,便于提取且占据较少空间[23]。此外,生物特征与客户之间具有极大关联度,难以被伪造或者截获,这种唯一性便于证明客户的真实身份。与仅基于口令相比,借助生物特征识别的身份认证是一种更加可靠的认证方式。

1.5 符号说明

本文主要用到的符号的含义如表1所示。

表1 主要符号含义

2 匿名认证与密钥协商协议

协议包括初始化、注册、认证协商、口令变更和智能卡权限回收5个阶段,其中所提及的部分符号含义见表1。

2.1 初始化阶段

SP选择安全且抗碰撞的单向Hash函数:

H2:{0,1}*×{0,1}*→{0,1}l

2.2 注册阶段

(2)SP检查IDC是否已存在于数据库,若为首次注册,设定其注册参数NC=0,若为再次注册,则设定为NC=1。SP储存注册信息I=(IDC‖T‖NC)于数据库,其中T为当前时间戳。

YC=yCP,FC=H1(IDC,YC),dC=yC+xFC

YSP=ySPP,FSP=H1(IDSP,YSP),dSP=ySP+xFSP

AIDC=H(IDC‖IDSP‖x)

IDAC=H(AIDC‖CPWC‖t)

MC=H(IDC‖CPWC‖t)

其中:YC与dC作为C的公钥与私钥;YSP与dSP作为SP的公钥与私钥;AIDC为加密身份信息;IDAC为账户索引;MC为智能卡验证信息。

(4)SP为C创建账户(IDAC,IDC,account)并将之秘密保存(account中含有客户的交易信息及要求的服务类型等信息),同时为C分配一个智能卡:

smartcard={AIDC,IDSP,MC,FC,YC,dC}

2.3 认证协商阶段

(1)C插入智能卡至移动设备,提取生物特征t,输入IDC、CPWC与t。之后,智能卡对合法客户进行认证,即计算CPWC=H(μ‖PWC),并验证:

假若等式不成立,则立即结束认证;否则,可继续进行下列操作。

RC=rP,R=rPKSP,U=H(IDSP‖R‖TC)

D=H(AIDC‖CPWC‖t)⊕H(R‖U)

其中:RC为共享秘密;U为验证信息;(R,D)为新的客户签名。C→SP:m1=(D,YC,RC,TC),其中m1为服务请求。

(3)SP接收m1后,对TC的有效性进行检验,假若无效,则立即结束认证;否则,可继续执行下列操作。

(4)SP计算:

R=xRC,U=H(IDSP‖R‖TC)

IDAC=D⊕H(R‖U)

并在数据库中进行检索,若与IDC对应的客户不存在,则立即结束认证;否则,便可找到客户信息,即说明客户通过了服务提供方的验证。

(7)C接收m2,计算共享秘密KC1=rPS+dCRSP、KC2=dCPS、KC3=rRSP(其中PS=YSP+FSPPKSP),以及会话密钥SKCS=H2(IDC‖IDSP‖RC‖RSP,KC1‖KC2‖KC3)。

上述认证协商的过程如图1所示。

图1 协议的认证协商过程

2.4 口令变更阶段

合法客户C插入智能卡至移动设备,提取特征信息t,输入IDC、PWC与t,申请进行口令更改。智能卡进行下列操作:

2.5 智能卡权限回收阶段

C申请对智能卡权限进行回收,SP进行下列操作:

(1) 通过索引IDAC查找对应客户的IDC。

3 协议分析

3.1 协议的正确性分析

协议的正确性可由如下等式证明:

(1)

KC2=dCPS=dCdSPP=dSPPC=KS2

(2)

(3)

由式(1)-式(3)可得SKSC=SKCS,即得到相同会话密钥。

3.2 协议的安全性分析

定理1在椭圆曲线上的CDH假设成立的条件下,本文所提的匿名认证与密钥协商协议是安全的。

(4)Corrupt(IDi)查询:S收到该查询后,若存在元组(IDi,di,Yi)∈Lc(其中di=yi+xFi),则返回di;否则,进行H1(IDi,*)查询获得元组(IDi,*,Fi),随后:

① 若有i=J,则计算Yi=aP-FiPKSP,并将(IDi,⊥,Yi)插入Lc,报错终止(E1)。

S收到该查询后:

④ 设置f=1。

③ 否则,若有di≠⊥,计算:

若有di=⊥,计算:

(8)SmartcardReveal(IDi,smartcard):S收到该查询后,若存在IDi的智能卡信息,则返回smartcard;否则,S返回⊥。

(9)BiometricReveal(IDi,t)查询:S收到该查询后,若存在IDi的生物特征信息,则返回t;否则,S返回⊥。

结果分析:

此外,当A获得了客户的生物特征信息与智能卡信息时,依据μ的随机性以及抗碰撞的单向Hash函数的性质可知,A只能通过随机猜测IDC与CPWC并通过查询伪装成客户进行认证,在此条件下最终取得真实会话密钥的概率可忽略,即敌手无法假冒合法客户,进而保证了客户的匿名性。协议中时戳的设定保证了协议抵抗重放攻击。智能卡回收阶段的设定也保证了协议具有抵抗智能卡丢失攻击的能力。

3.3 性能对比分析

下面针对计算效率与安全性能两个方面,将本文协议同最近提出的相关认证协议[24-25]进行了对比分析。

(1) 计算开销方面,主要针对认证密钥协商阶段进行了椭圆曲线上的点乘运算(EM)、Hash函数运算(EH)、双线性映射运算(Epm)的考察,忽略不计轻量级⊕、‖计算;通信开销方面,则主要考察信息交互次数。具体对比结果如表2所示。

表2 计算性能对比(次数)

因双线性对的计算涉及复杂的数据结构和数学运算[26],其相关计算开销几乎是椭圆曲线点乘的20倍[27],故实现效率较低、耗时较多。由表2可知,本文协议与文献[24]相比具有更低的计算开销,而与文献[25]相比,计算差别不大。由信息交互次数可知,本文协议的通信效率与文献[25]一致,高于文献[24]。

(2) 通过相应的安全性分析与证明,本文协议与文献[24-25]的安全性对比结果如表3所示,其中:“√”表示满足此类属性;“×”表示不满足此类属性。

表3 安全性能对比

可以看出,文献[24]存在无法抵抗重放攻击等安全问题,文献[25]则无法提供客户匿名性,而本文协议可以克服这些缺陷,并且能够抵挡其他常见的攻击,具有良好的安全性。

综上分析,本文协议相较于现有的认证协议[24-25]而言,在计算和通信效率及安全性能方面具有一定的优势,本文的匿名认证与密钥协商协议更具实用性和可操作性。

4 结 语

本文结合智能卡与生物认证技术等方法,设计一种安全的匿名认证与密钥协商协议,并在强安全模型与随机预言机模型下基于椭圆曲线上的CDH假设给出协议安全性的形式化证明。综合分析,本文协议有效地增强了认证协商过程的安全性与便捷性,同时保证了客户的匿名性,易于在管理信息系统领域推广应用。

猜你喜欢
智能卡密钥椭圆
Heisenberg群上由加权次椭圆p-Laplace不等方程导出的Hardy型不等式及应用
例谈椭圆的定义及其应用
密码系统中密钥的状态与保护*
东方磁卡李晓东:进击的智能卡研发巨子
一道椭圆试题的别样求法
一种对称密钥的密钥管理方法及系统
基于STC89 单片机的非接触智能卡读写机设计
基于ECC的智能家居密钥管理机制的实现
椭圆的三类切点弦的包络
临沂机顶盒智能卡升级方案介绍