一种安全性增强的三因子远程用户身份认证方案研究
2018-01-09余红芳艾琼
余红芳+艾琼
摘要:
如今,远程用户通过互联网可以随时随地访问世界各地的各种服务,但同时各种数据泄露和隐私安全问题也不断凸显。为了保证用户访问服务时的身份合法性,各种远程用户身份认证方案不断被提出。由于现有方案仍存在各种攻击威胁,因而提出一种改进的基于动态ID、智能卡和生物特征的三因子远程用户身份认证方案。安全性分析表明,该方案可以抵抗各种攻击,提高了用户身份认证的安全性。
关键词:
动态ID;生物特征;智能卡;远程用户身份认证;三因子
DOIDOI:10.11907/rjdk.171967
中圖分类号:TP309
文献标识码:A 文章编号:1672-7800(2017)012-0188-06
Abstract:The internet enables users to access various of services anywhere and anytime in the world, and data security and privacy issues are facing the unprecedented challenges as well. In order to ensure the legitimacy of the user, serious of remote user authentication schemes have been proposed. As a variety of attacks and threats still exist in the schemes proposed nowadays, an improved three-factor remote user authentication scheme based on smart card, passwords and biometrics is proposed, security analysis shows that the scheme can resist various attacks, improve the safety of user authentication.
Key Words:dynamic ID; biometrics; smart card; remote user authentication; three factors
0 引言
随着云计算、大数据以及各种信息技术的快速发展,计算机和互联网已经成为人们日常生活中不可或缺的一部分。人们可以通过访问计算机网络,随时随地获取所需的资源信息。由于云服务多服务器、分布式存储的特性,在给人们带来便利的同时,也给人们带来了巨大挑战。为了避免系统资源被非法访问,需要对用户身份进行认证,以决定为其分配对应的访问权限,保护系统资源的安全性。用户若通过一个不安全的信道访问系统资源,其中可能存在着非法第三方伪装成用户请求访问资源服务的情况,而认证服务器为了保证资源不被非法用户窃取,需要能够识别出请求访问用户身份的合法性,而远程用户身份认证可以很好地解决此问题。
远程用户可以通过PIN码或口令、拥有的物件如智能卡和自己独有的特征如指纹、虹膜等生物特征证明自己的身份。Lamport[1]首先提出了远程用户身份认证方案,其中,用户必须在注册阶段提供自己的身份标识和口令信息,同时认证服务器将对应的用户信息以列表形式存储到数据库中,以备后续对用户进行身份信息的校对,从而完成远程用户身份认证。由于其存储开销大、保密成本高,该方案未能得到很好的应用。为解决该问题,基于智能卡的远程用户身份认证技术应运而生[2]。在该方案中,用于用户身份验证的秘密信息保存在智能卡中,服务器没有任何维护成本。随后,许多研究者基于智能卡提出了各种改进的远程用户认证方案[3-6]。随着云服务模式的出现,人们也将研究重心从单一服务器模式转向多服务器模式,设计的方案可以实现单点登录,避免了用户访问不同服务器资源需重复注册带来的麻烦[7-10]。由于提出的大多数方案都基于静态口令,存在口令被窃取的风险,因而许多改进的基于动态ID的远程用户认证方案也陆续被提出[11-13]。这虽然在一定程度上避免了口令泄露的风险,但也存在缺陷,即这些方案包含的两个安全因子:智能卡和口令容易丢失,被黑客窃取,导致受到理想口令猜测和字典攻击的威胁[14]。考虑生物特征的唯一性和随身携带的特性,很多三因素用户身份认证方案先后被提出,以加强用户隐私在不安全信道传输的安全性[15-17]。它们分别基于智能卡、口令和生物特征实现对用户的身份认证。2010年,Li和Hwang[18]首先提出了三因子远程用户身份认证方案,并声称其可以在相对较低的成本条件下很好地抵抗各种攻击;次年,A K DAS和Li等 [19]指出Li和Hwang的方案在用户登录、验证和口令更改阶段都存在缺陷,无法抵御中间人攻击,并提出一种改进的基于生物特征的远程用户认证方案;最近,Chuang和Chen[20]基于这3个安全因子,提出了一个多服务器环境下远程用户匿名身份认证方案,并称该方案可以抵制各种攻击,与其它方案相比,安全性得到了提高。但是,通过对该方案进行仔细研究,发现其仍存在着服务器欺骗和离线口令猜测攻击的风险,并且缺乏完备的前向安全性。因此,本文提出一种改进的三因子远程用户身份认证方案,解决了Chen等方案存在的缺陷,提高了远程用户身份认证的安全性,在一定程度上提高了认证性能,降低了成本。
1 身份认证安全模型
一般多服务器环境下远程用户身份认证框架如图1所示。
本文提出的身份认证方案基于如下4个假设进行安全性和通信性能分析:①攻击者既可以是用户,也可以是服务器,即一个注册的合法用户或服务器均可以充当非法第三方;②信道是不安全的,攻击者可以窃听信道上的任何通信,可以捕捉用户和服务器间交互的任何信息;③攻击者可以对捕获的信息执行更改、删除和重新捕获的操作;④攻击者可以通过功率分析提取获得的智能卡中的用户隐私信息。endprint
2 远程用户身份认证方案
在本节中首先对Chen等方案中用到的符号进行说明,然后简单回顾该方案进行身份认证的过程。
2.3 方案安全性分析
本文对Chen等提出的一个基于三因子的远程用户匿名身份认证方案进行了安全性分析,发现其仍存在两个严重缺陷,未能达到系统的安全性需求。当用户智能卡丢失,被非法用户获取时,其可以借助功率分析方法获取用户存储在智能卡上的全部信息,实现对用户口令的猜测攻击。此外,该协议的长期密钥被非法用户截获时,非法用户即可利用该密钥重现之前的會话密钥,缺乏前向安全性。具体分析步骤如下:
2.3.2 缺乏完备前向安全性
完备前向安全性是远程用户身份认证机制中最重要的一个安全性要求。它是指用来产生会话密钥的长期密钥泄露出去后,不会造成之前通信时使用的会话密钥的泄露,仍能保证之前行为的安全性,也即是说黑客即使获取了当前密钥,也无法成功伪造一个过去的签名。这就要求满足完备前向安全性的公钥环境下的签名、密钥交换或加密方案,其公钥是固定的,而密钥则随着时间进行更新,且这个更新过程是单向的,从而保证了即使获得当前的密钥也无法恢复出之前的密钥,达到完备前向安全性。
3 改进的身份认证机制
3.1 改进的身份认证方案设计
针对2.3节分析的Chen等提出的方案存在离线口令猜测攻击和缺乏完备前向安全性两大缺陷,本文假设攻击者既可以是非法注册用户,也可以是在非法服务器情况下发动的攻击。因此,提出改进方案,以克服Chen等方案中存在的缺陷。为防止非法服务器伪装成第三方实施攻击,不仅要对用户身份信息进行注册登记,同时也要对服务器进行信息注册和登记。本文改进的身份认证机制包括以下4个阶段:用户和服务器注册阶段、登录阶段、验证阶段和口令更改阶段。各阶段具体步骤设计描述如下:
3.1.1 服务器注册阶段
本文设计时增加服务器身份信息的注册操作,有利于用户和服务器间实现双向交互身份认证,防止服务器欺骗攻击,保证提供服务的合法性。所有服务提供商提供的服务器必须向可信注册中心RC提交自己的身份信息,获取有效服务器身份标识的授权,同时计算一个独一无二的秘密值,以便在认证阶段与合法用户建立有效的通信会话:
(1)首先向服务提供商提供的服务器Sj发送自己的身份标识SIDj到注册中心,请求信息的登记注册。
(2)注册中心RC随后计算两个秘密值,并将h(SIDj‖h(PSKj))和h(PSKj‖MK)通过安全信道共享给服务器Sj,而不是共享相同的秘密参数PSKj,其中每个注册的服务器在h(SIDj‖h(PSKj))中共享的两个参数都各不相同。
3.1.2 用户注册阶段
在与任一服务器建立有效通信之前,用户必须先向远程注册中心登记注册自己的身份信息。
3.2 改进方案安全性分析
对改进的身份认证方案进行安全性分析,结果表明,其可以很好地抵抗各种类型的攻击,解决了Chen等所提方案存在的离线口令猜测攻击和缺乏完备前向安全性的缺陷,具体分析如下:
(1) 完备前向安全性。本文改进的方案中,即使长期密钥PSKj被窃取,黑客在不知道Ai、α、β和主密钥MK的情况下,仍然无法计算出之前的会话密钥SKij=h(Fi‖α‖β‖Ai)。此外,由于SIDj是一个已知参数,如果攻击者窃听到任何之前的登录请求和交互认证消息{AIDi,M1,M2}与{M3,M4},即可尝试通过计算M1⊕h(SIDj‖h(PSKj))恢复出随机数α,并计算AIDi⊕h(α‖h(SIDj‖h(PSKj)))得到Ai,但是由于不知道主密钥MK,攻击者仍然无法计算得到Fi,因而无法从窃听到的消息M3中获得随机数β。所以攻击者即便获得PSKj,依然无法计算出之前的会话密钥SKij。因此,本文提出的改进的身份认证机制具有完备前向安全性。
(2) 抵制服务器欺骗攻击。服务器欺骗攻击是指一个合法注册的服务器欲伪装成另一服务器,恶意欺骗远程用户,以窃取用户的有效身份信息。在服务器身份注册阶段,Chen等提出的方案中服务器间仅共享一个密钥PSKj,而本方案中所有注册的服务器均收到两个计算得到的秘密值h(SIDj‖h(PSKj))和h(PSKj‖MK),不同服务器具有不同的h(SIDj‖h(PSKj))计算值。假如服务器Sj想要伪装成服务器Sk,则恶意服务器Sj必须获取h(SIDk‖h(PSKj))。由于Sj无法获得有效的PSKj,因而无法计算得到有效的h(SIDk‖h(PSK)),所以注册合法但恶意伪装成其它身份的服务器无法计算与另一个通信服务器间的有效秘密参数。因此,本文提出的身份认证方案可以有效防止服务器伪装攻击。
(3) 抵制离线口令猜测攻击。即使恶意第三方通过某种渠道得到用户Ui丢失的智能卡,也无法获得任何特权伪装成该用户创建有效的登录请求消息。恶意第三方借助功率分析法可以从智能卡中提取用户的私密信息{Ci,Di,Ri,Ei},但是欲伪装成该用户进行登录请求,必须要能从Ei中计算得到Fi,从Di中计算获得PSKj,以及从Ri中计算获得Ai。为了能够计算获得正确的Fi、PSKj和Ai,必须知道该用户的个人身份标识IDi和个人秘密信息Xi。由于用户的IDi和Xi未保存在智能卡中,恶意第三方无法从中获取这两个消息,也则无法伪装该用户创建一个有效的登录请求消息{AIDi,M1,M2},用户身份认证失败。因此,本文提出的改进的身份认证方案可以有效抵制离线口令猜测攻击。
(4) 抵制重放攻击。重放攻击是最基本、最常用且危害性最大的一种攻击认证协议形式。当攻击者拦截到用户的登录消息,可以通过重放该消息向服务器发送登录请求,并从中获取一些有效信息,同时建立一个有效的会话密钥协商。在本文改进的机制中,假设攻击者任意重放之前的一个登录请求消息{AIDi,M1,M2}到服务器,服务器收到重放消息后发送应答消息{M3,M4}给攻击者,由于攻击者不知道PSK,所以无法通过应答消息计算获得Fi或随机数α,因而无法从M3中计算获得有效的β值。因此,攻击者无法获知会话密钥SKij的值,重放攻击失败。endprint
(5) 抵制內部攻击。在注册阶段,远程用户Ui通过将用户口令PWi和生物特征信息Bi级联后,再将经过哈希保护处理得到的散列值作为自己的秘密信息发送给RC,而不是直接将PWi和Bi或者h(PWi)和h(Bi)发送给RC。通过该方式处理后,使注册中心RC完全无法知道用户的原始口令和生物特征模板。根据两个参数的未知性和单向哈希函数的特性,要想成功猜测用户的秘密信息或从中恢复出这两个参数几乎是不可能的。因此,本文提出的身份认证机制可以很好地抵抗内部攻击。
3.3 改进方案性能分析
评价一个身份认证方案的好坏,除安全性外,还有计算复杂度、成本、功能等,本文对改进方案的计算复杂度进行了评估,并和其它几个相关方案进行了对比,其中用到的一些符号表示的意义说明如下:Th→哈希计算开销,Tx→异或计算开销,Tc→比对计算开销,Tcom→通信开销。考虑到“‖”级联计算开销很小,可以忽略不计,因此系统总计算开销TS可以表示为:
从表中对比分析的结果可以看出,本文改进的身份认证方案不仅在安全性方面得到了极大提高,其在登录认证等过程中通信和计算开销也得到了显著改善,更好地实现了对用户的身份认证。
4 结语
本文回顾了Chuang和Chen等提出的身份认证方案,发现其仍存在着服务器欺骗和离线口令猜测攻击,并且缺乏完备的前向安全性。基于此,本文提出一种改进的三因子远程用户身份认证方案,改进了之前方案存在的缺陷,提高了远程用户身份认证的安全性,同时提高了系统在身份认证时的计算开销和性能。
参考文献:
[1] LAMPORT L. Password authentication with insecure communication [M]. ACM, 1981.
[2] CHANG C C, WU T C. Remote password authentication with smart cards [J]. IEEE Proceedings E-Computers and Digital Techniques, 2005,138(3):165-168.
[3] LEE S W, KIM H S, YOO K Y. Efficient nonce-based remote user authentication scheme using smart cards[J]. Applied Mathematics & Computation, 2005,167(1):355-361.
[4] 汪定.基于智能卡的远程用户口令认证协议研究[D].哈尔滨:哈尔滨工程大学,2013.
[5] 刘莎,朱淑华.基于智能卡的远程用户匿名身份认证和密钥协商方案[J].计算机应用,2014,34(7):1867-1870,1877.
[6] SRIVASTAVA K, AWASTHI A K, MITTAL R C. A review on remote user authentication schemes using smart cards [C]. International Conference on Heterogeneous Networking for Quality, Reliability, Security and Robustness. Springer Berlin Heidelberg, 2013:729-749.
[7] LIN C W, TSAI C S, HWANG M S. A new strong-password authentication scheme using one-way hash functions [J]. Journal of Computer and Systems Sciences International, 2006,45(4):623-626.
[8] SHEN J J, LIN C W, HWANG M S. Security enhancement for the timestamp-based password authentication scheme using smart cards [J]. Computers & Security, 2003,22(7):591-595.
[9] JUANG W S. Efficient multi-server password authenticated key agreement using smart cards [J]. IEEE Transactions on Consumer Electronics, 2004,50(1):251-255.
[10] 杨力,马建峰.可信的智能卡口令双向认证方案[J].电子科技大学学报,2011,40(1):128-133.
[11] LEEC C, LIN T H, CHANG R X. A secure dynamic ID based remote user authentication scheme for multi-server environment using smart cards [J]. Expert Systems with Applications, 2011,38(11):13863-13870.
[12] 昝亚洲,刘文芬,蒋峰云.基于动态ID的远程用户交互认证方案[J].信息工程大学学报,2014,15(3):262-269.
[13] 杨晓辉.基于动态ID远程用户身份认证方案的改进[J].电子技术,2014(6):40-42.
[14] MISHRA D, DASA K, MUKHOPADHYAY S. A secure user anonymity-preserving biometric-based multi-server authenticated key agreement scheme using smart cards [J]. Expert Systems with Applications, 2014,41(18):8129-8143.endprint
[15] 张敏,张阳.一种多服务器环境下基于生物特征身份认证的安全性分析[J].西南民族大学学报:自然科学版,2014,40(6):883-888.
[16] 陈泗盛,林娟.一种基于生物特征和零知识证明的身份认证协议[J].佳木斯大学学报:自然科学版,2016,34(6):920-922.
[17] XUE, K P, HONG P L, MA C S. A lightweight dynamic pseudonym identity based authentication and key agreement protocol without verification tables for multi-server architecture [J]. Journal of Computer and System Sciences, 2014,80(1):195-206.
[18] LI C T, HWANG M S. An efficient biometrics-based remote user authentication scheme using smart cards [J]. Journal of Network & Computer Applications, 2010,33(1):1-5.
[19] DAS A K. Analysis and improvement on an efficient biometric-based remote user authentication scheme using smart cards [J]. Information Security Iet, 2011,5(3):145-151.
[20] CHUANG, M C, CHEN, M C. An anonymous multi-server authenticated key agreement scheme based on trust computing using smart cards and biometrics [J]. Expert Systems with Applications,2014,41(4):1411-1418.
(責任编辑:黄 健)endprint