,,
(常州大学 信息科学与工程学院,江苏 常州 213164)
智能卡和口令结合的动态认证方案
彭昌余,孙霓刚,汪伟昕
(常州大学信息科学与工程学院,江苏常州213164)
远程认证协议能有效的保证远程用户和服务器在公共网络上的通信安全;提出一种匿名的安全身份认证方案,通过登录ID的动态变化,提供用户登录的匿名性,通过用户和服务器相互验证建立共享的会话密钥,抵抗重放攻击和中间人攻击,实现用户安全和隐私,通过BAN逻辑分析证明改进方案的有效性,通过安全性证明和性能分析说明了新协议比同类型的方案具有更高的安全性、高效性。
认证协议;匿名性;动态身份;会话密钥
随着信息技术的不断发展,信息安全问题也日显突出,如何确保信息系统的安全已成为全社会关注的问题。1981年Lamport[1]提出了基于口令的远程用户身份认证方案,通过存储的密码对远程服务器进行访问,由于实用性强得到广泛的应用。1993年Chang[2]等提出结合口令和智能卡的方案,改进了Lamport等方案存在着容易遭受离线口令猜测攻击的问题。
2009年Tsai[3]等在方案中引入随机数来提高方案的安全性。2013年Arshad[4]等发现Tsai存在的离线口令猜测攻击和丢失智能卡攻击等问题,并提出了改进。随后Zhang[5]等指出Arshad等方案依然无法抵抗离线口令猜测攻击等问题,提出了新的方案改进了。之后Tu[6]等指出了Zhang等不能抵抗冒充攻击等问题,提出了新的解决方案,但是Zhang等的方案不能抵抗冒充攻击。2014年Yeh[7]提出了一种新的解决方案能有效的抵抗冒充攻击,并且大大降低了计算成本。
本文指出Yeh等的方案不能提供用户登录的匿名性,不能抵抗离线口令猜测攻击,不能抵抗内部攻击等安全问题。对Yeh等方案进行改进,新方案能提供用户登录的匿名性、抵抗离线口令猜测攻击和抵抗内部攻击而且在修改密码阶段不需要服务器的参与,节约通信资源。
文中的符号定义如下:U为用户;S为服务器;SC为智能卡;PW为用户的口令;k为服器的高熵秘钥;h(·)为单项哈希函数;
∥为字符串连接操作;⊕为异或运算;⟹为安全信道;→为普通信道。
Yeh等方案由4个阶段组成,主要回顾Yeh等方案的系统设置、注册以及登陆认证阶段。
1.1.1 系统设置阶段
服务器端在系统初始化阶段,主要产生如下参数:
(1)服务器端在有限域▯p(▯p={0,,1...,p-1})上选取椭圆曲线Ep(a,b),P是阶为n的生成元且P是一个大素数。
(2)选取3个哈希函数H1:{0,1}*→Gp,H2:{0,1}*→Gp和H3:{0,1}*→Gp。
1.1.2 注册阶段
(1)用户首先设置IDU和PWU以及选取随机数u,然后通过安全的方式把{IDU,W=h(PWU⊕u)}发给S。
U⟹S:(IDU,W)
(2)S收到IDU,W后,计算KU=s×H1
(IDU)∈GP、V=h(IDu⊕W),Y=h(W∥IDU)
⊕KU,并把V,Y,h(·),H1(·),H2(·)H3(·)以及公共参数放到智能卡内存储。
S⟹U:smartcards
(3)U通过安全通道收到智能卡后,把u输入到智能卡中保存,在智能卡中有V,Y,h(·),H1(·),H2(·)H3(·),u以及公共参数。
1.1.3 登录阶段
(4)S收到{realm,IDU,auth} 后计算auth*=h(IDU∥realm∥sk)比较auth*和auth的值是否相等,如果相等则S认证U的身份成功。
假设Ha(本文中攻击者直接用Ha表示)可以拦截并修改在非安全信道上传输的信息,而且在得到智能卡的情况下,能获取智能卡里面的数据。
用户的匿名性可以防止Ha获取用户的敏感信息,可以使一个远程用户认证机制更强大的Ha无法跟踪哪些用户与服务器进行交互。但是Yeh等的方案使用用户的身份直接沟通,Ha可以有机会获取一个用户的身份登录信息。因此,Yeh等的方案不能提供用户的匿名性。
新方案主要分为系统设置、注册、登陆认证和口令修改等4个阶段。
拆译法又称分句法(splitting),指为了符合汉语表达习惯,也为了更清楚的表达原文意思,在翻译时可以改变原文的结构,把原文的某个成分从原来的结构中分离出来,译成一个独立成分或从句或并列分句。商务英语和汉语的表达风格不同,句子主语的“有灵”或“无灵”各具特点,翻译的时须从原文的整体风格出发,灵活处理问题,必要时应予以适当的断句,采用拆译法进行翻译。
首先用户选择ID和PW以及随机数u,然后通过安全方式把{ID,y=h(PW∥u)}发给S。
U⟹S:(IDU,y)
服务器收到IDU,y后,计算s=h(ID∥k),和V=s⊕y=h(ID∥k)⊕h(PW||(u),然后在智能卡中存储V,h(·)以及公共参数。
用户从安全通道收到智能卡后,在传感器上输入自己的生物特征值A,计算M=h(PW∥h((A))⊕u然后计算W=h(ID∥PW∥M∥h(A)∥u),最终智能卡里保存有V,M,W,h(·)以及公共参数。
首先输入身份ID和口令PW,然后输入生物特征值A。
用户首先输入旧的ID和PW,然后通过传感器输入旧的生物特征值A。智能卡计算u*=h(PW∥h(A))⊕M,计算W*=h(ID∥PW∥M∥h(A))∥u*),比较W*和W是否相等,如果不相等,停止协议,否则说明U输入的ID和PW以及生物特征值A是正确的。
然后计算s=V⊕h(PW∥u)=h(ID∥k)。
用户选取新的随机数unew、新的密码PWnew、在传感器上输入新的Anew,计算Vnew=s⊕ynew=h(ID∥k)⊕h(PWnew||unew),Mnew=h(PWnew∥h(Anew))⊕unew然后计算Wnew=h(ID∥PWnew∥Mnew∥h(Anew)∥unew),最终把更新后的Vnew,Mnew,Wnew替换原来的V,M,W。
新方案的密码修改方案,在修改密码阶段不要服务器的参与,大大节约了通信资源。
4.1.1 匿名性和不可追踪性
4.1.2 抵抗离线口令猜测攻击
(1)内部攻击。
假设Ha来自服务器端,即Ha是系统管理员,当用户在注册阶段给服务器发送{ID,y=h(PW∥u)}的时候,系统管理员可以监听该消息,获取(ID,y)的值。但是由于y=h(PW∥u)中含有随机数u,Ha无法获取随机数u的值,无法进行口令猜测攻击。
(2)智能卡被盗攻击。
4.1.3 抵抗中间人攻击和重放攻击
在登录过程中使用了时间戳T,两条消息的时间差控制在ΔT之内,由于ΔT是足够的小,故无法重放会话。
4.1.4 抵抗冒充攻击
(1)冒充用户。
发送之前会话使用的CID,R1,C1,相当于重放攻击,新方案抵抗重放攻击。
(2)冒充服务器。
发送以前会话使用的C1,R3,C2相当于重放攻击,新方案抵抗重放攻击。
4.1.5 保障前向安全
在本文中前向安全是指Ha获取了服务器的私钥s,也无法获取之前的会话密钥,对以前的会话造成影响。
由表1可知,其中Zhang、Tu等无法抵抗冒充攻击,Yeh等的改进方案虽然能抵抗冒充攻击,却带来了新的安全问题,不能抵抗离线口令猜测攻击,不能抵抗内部攻击等安全问题。无论是Zhang、Tu等还是Yeh等方案都不能提供用户的匿名性,本方案能抵抗提到的所有攻击,提供用户的匿名性,安全性更高。
在表2中,我们比较了各方案的计算代价,对性影响较大的是椭圆曲线上的点乘和点加计算。其中H表示哈希运算,PM表示点乘计算,PA表示点加计算。通过表3比较可得本方案的计算代价明显小于Zhang、Tu和Yeh等方案。
在本方案中信息经过单向哈希后占用160 bit,时间戳占用32 bit,本文中选用的椭圆曲线密钥长度为160 bit,这与1 024位的RSA安全性相当,椭圆曲线上的任意点P=(xP,yP)占用为160+160=320 bit,在我们的方案中,智能卡发送的消息{CID,R1,C1,TU}占用(160+320+160+32)=672 bit,服务器发送的消息{R3,C2,TS}占用(320+160+32)=512 bit,所以本方案占用的总通信开销是1 184 bit。通过表3比较可知本方案的通信开销最小而且其他方案均需要三条消息完成通信,本方案只需要二条消息。
BAN逻辑[10]是一种著名的分析认证协议的形式化逻辑方法。通过BAN逻辑证明用户U和服务器S之间认证的有效性,我们表明,U和S确定交换的信息安全和可靠的防止窃听,其中包括消息来源的验证,消息的新鲜度和数据来源的可信性。本文利用BAN逻辑证明来说明改进后方案的正确性和有效性。
我们提出以下规则:
建立初始假设集合
(1)U|≡(A))
(2)U|≡(TU)
(3)S|≡(TS)
协议模型的理想
消息1[ID]asP,(ID,asP,TU)y,aP,TU
建立协议预期目标集合
利用假设和推理规则推理:
由消息1可以得到:
S◁(ID,usP,TU)y,ap,TU
(10)
由式(10)和假设(5)通过含义法则可推导出:
S|≡U|~TU
(11)
由假设(2)通过新鲜性法则可推导出:
S|≡(ID,asP,Ti)y
(12)
由式(12)和假设(9)通过临时性法则可推导出:
S|≡U|≡(ID,asP,TU)y
(13)
由式(13)和假设(5)通过管辖法则可推导出:
S|≡TU
(14)
由式(14)可得使用时间戳的消息是新鲜的。由式(13)、(14)这证明了消息来源的正确性。
由消息2可以得到:
(15)
由式(15)和假设(4)通过含义法则可推导出:
U|≡S|~TS
(16)
由式(16)和假1设(2)通过新鲜性法则可推导出:
(17)
需要其中的秘密y和asP,所以可推导出:
U|≡(ID,TU,TS,asP,abP)y
(18)
由式(17)、(18)和假设(8)通过临时性法则可推导出:
U|≡S|≡(ID,TU,TS,asP,abP)y
(19)
由式(19)和假设(8)、(4)通过管辖法则可推导出:
U|≡TS
(20)
通过以上逻辑推导过程达到了预期目标。
本文首先分析说明了Yeh方案存在的问题,提出了一种改进的认证方案,本方案支持双向认证和会话密钥的协商,其中用户和服务器可以正确识别对方的合法性,并建立授权和安全连接。通过安全性证明和BAN逻辑证明说明了改进后协议的安全性。本方案简化了认证流程,在口令修改阶段不需要服务器的参与,大大节约了通信资源,是一个安全高效的远程身份认证方案。
表2 各方案计算代价比较
表3 各方案通信开销比较
[1]Lamport L. Password authentication with insecure communication[J].Communication of the ACM, 1981, 24(11): 770-772.
[2]Chang C C, Wu T C. Remote password authentication with smart cards[J]. IEE Proceedings E Computers & Digital Techniques, 1991, 138(3):165-168.
[3]Tsai J L. Efficient Nonce-based Authentication Scheme for Session Initiation Protocol[J]. International Journal of Network Security, 2009, 8(1):12-16.
[4]Arshad R, Ikram N. Elliptic curve cryptography based mutual authentication scheme for session initiation protocol[J]. Multimedia Tools and Applications, 2013, 66(2):165-178.
[5]Zhang L, Tang S, Cai Z. Efficient and flexible password authenticated key agreement for Voice over Internet Protocol Session Initiation Protocol using smart card[J]. International Journal of Communication Systems, 2013, 27(11):2691-2702.
[6]Tu H, Kumar N, Chilamkurti N, et al. An improved authentication protocol for session initiation protocol using smart card[J]. Peer-to-Peer Networking and Applications, 2015, 8(5):903-910.
[7]Yeh H L, Chen T H, Shih W K. Robust smart card secured authentication scheme on SIP using Elliptic Curve Cryptography[J]. Computer Standards & Interfaces, 2014, 36(2):397-402.
[8]Miller V S. Use of Elliptic Curves in Cryptography[A]. Advances in Cryptology - CRYPTO '85, Santa Barbara, California, USA, August 18-22, 1985, Proceedings. DBLP[C]. 1985:417-426.
[9]Messerges T S, Dabbish E A, Sloan R H. Examining Smart-Card Security under the Threat of Power Analysis Attacks[J]. IEEE Transactions on Computers, 2002, 51(5):541-552.
[10]Burrows M. A logic of authentication[J]. ACM Sigops Operating Systems Review, 1990, 8(5):18-36.
DynamicAuthenticationSchemeBasedonSmartCardandPassword
Peng Changyu , Sun Nigang,Wang Weixin
(School of information science & Engineering, Changzhou University, Changzhou 213164, China)
Remote authentication protocol can effectively guarantee the communication security of remote users and servers in the public network. We provide a kind of anonymous and secure authentication scheme of identity authentication, by the dynamic change of the login ID we can ensure the anonymity of the user login, utilizing the user and server mutual authentication to establish a shared session key that can resistance to man in the middle attack and replay attack. According to the above measures, we realize the security and privacy of users,and the BAN logic analysis is performed to demonstrate the effectiveness of the improved scheme. The security and performance analysis of the proposed scheme shows that the new protocol is more secure and efficient than the same type of scheme.
authentication protocol; anonymity; dynamic identity; session key
2017-04-19;
2017-05-15。
国家自然基金(61103172)。
彭昌余(1989-),男,硕士研究生,主要从事网络安全方向的研究。
孙霓刚(1976-),男,副教授,主要从事网络安全,通信安全,密码学方向的研究。
1671-4598(2017)11-0174-05
10.16526/j.cnki.11-4762/tp.2017.11.044
TP273
A