适用于移动客户端——多服务器环境的用户认证与密钥协商协议*

更新时间:2009-03-28

1 引言

随着网络应用与移动通信技术的快速发展,移动客户端与多服务器交互的通信模型也越来越流行.为了防止非法用户获得服务,服务器需要对客户端身份的合法性做出判断.同时,为了防止假冒的服务器欺骗用户,客户端也需要对服务器身份的合法性做出判断.在基于单服务器的用户认证与密钥协商协议中,客户端需要向每个服务器进行不同的注册并生成相应的密钥,这在多服务器环境下是非常繁琐耗时的,所以其并不能适用于客户端需要访问多个服务器的情况.移动客户端——多服务器环境下的用户认证与密钥协商通常是指移动客户端与服务器完成相互的身份认证,然后计算出共同的会话密钥来进行安全的通信.其中,服务器分为应用服务器与注册服务器.移动客户端与多个应用服务器分别向注册服务器提交申请生成各自的密钥,然后移动客户端与多个应用服务器进行相互间的身份认证与密钥协商.特别的是,一个多服务器环境下所需的注册服务器可以只有一个.注册服务器相当于一个中枢控制器,用户注册与用户间的密钥协商是分开的步骤.多个应用服务器间是平等的关系,他们只与移动客户端进行密钥协商与数据加密.

为了解决多服务器环境下安全通信的问题,研究者们开始研究适用于多服务环境下的用户认证与密钥协商协议.2001年,Li等[1]提出一种适用于多服务器环境下的认证协议.在多服务器环境下,客户端和服务器首先通过向一个注册中心(RC)注册来获得密钥,然后通过这个唯一密钥来与多个服务器进行安全通信.然而,该方案的通信成本和计算成本太高,不能适用于实际应用.2003年,Lin等[2]基于离散对数问题提出了一种适用于多服务环境的认证协议.2004年,Tsaur等[3]基于RSA算法和大整数分解问题提出了另一种多服务器环境下的认证协议.然而这些协议[2,3]的通信成本和计算成本较高,并不能适用于移动设备.同年,Juang[4]提出了另一种多服务器下的认证协议,该协议使用了对称加密的方式来对用户进行验证,不仅解决了重复注册的问题,而且效率有了明显的提升.然而该协议的安全性是基于注册中心和系统服务器都是可信赖这一前提的,所以存在着较大的安全隐患.2008年,Tsai[5]提出了一种多服务器模型下使用哈希函数实现的用户认证与密钥协商协议.该协议不存储用户身份的任何认证信息,因而不存在认证信息丢失的情况,非常适合于分布式网络环境.然而该协议被证明不能抵挡用户伪装攻击,且不具有前向安全性.为了使客户端获得匿名性,Geng和Zhang[6]提出了一种多服务器环境下的基于身份的认证密钥协商协议,该协议使用了双线性对来构造.然而基于身份的密码体制存在密钥托管的问题.2009年,Liao和W ang[7]提出了另一种适用于多服务器环境下的基于身份的认证密钥协商协议.然而,Hsiang和Shih[8]发现了该协议容易受到内部攻击、伪装攻击、服务器欺骗攻击和注册中心欺骗攻击.为了克服这些缺陷,他们提出了一种改进后的方案.然而该方案依然存在容易受到伪装攻击和服务器欺骗攻击的缺陷.2011年,Lee等[9]分析了Hsiang等提出的协议,发现该协议不能提供安全的相互认证,并且在系统崩溃后不易恢复.为了克服这些缺陷,Lee等又提出了一种改进方案.此外,Sood等[10]在Hsiang的基础上提出了一种改进方案,然而Li等[11]证明了该方案容易受到校验值泄露攻击、智能卡丢失攻击和伪装攻击,并且其认证和密钥协商部分是不正确的.随后,Li等[11]提出了一种改进方案.然而Han[12]证明了该协议并不适用于实际的应用,并且不能有效抵挡口令猜测攻击和伪装攻击.2013年,Li等[13]设计了一种智能卡和多服务器环境下,基于身份的认证与密钥协商协议.但是随后,该协议被证明在智能卡丢失时是不安全的,并且不能抵挡离线的口令猜测攻击、重放攻击、伪装攻击和服务器欺骗攻击.同年,Wang和M a[14]提出了一种基于智能卡和口令的协议,并表示该协议可以抵挡多种攻击.然而 He和 Wu[15]分析并指出该协议容易受到服务器欺骗攻击、伪装攻击、内部特权攻击和离线口令猜测攻击.2015年,Am in等[16]总结了多种移动客户端——多服务器模型,并提出了一种基于智能卡的认证密钥协商协议.该协议能够适用于移动客户端——多服务器模型,但存在密钥托管问题.2016年,Tseng等[17]提出了一种适用于移动客户端——多服务器环境的认证密钥协商协议.虽然该协议具有较高的计算效率,但是其依然存在密钥托管的问题.

虽然多服务器环境下的用户认证与密钥协商概念很早之前就已经被提出,也有很多的协议被设计出来.但是这些协议都有着或多或少的安全问题和效率低下的问题,所以解决多服务器环境下协议的安全与效率问题依然是当前的重要问题.与传统公钥密码体制和基于身份的公钥密码体制相比,无证书公钥密码体制既无证书问题又无密钥托管问题,从而效率优于传统公钥密码体制,安全性强于基于身份的公钥密码体制,所以非常适用于资源受限的移动设备.移动客户端——多服务器模型是目前广泛使用的一种网络通信模型,而且会在我们的生活中发挥越来越重要的作用.因此设计一种适用于该模型的安全且高效的认证密钥协商协议是非常有必要的.针对移动设备计算能力有限的特点,本文提出了一种计算性能更加高效的协议.该协议没有使用耗时的双线性对运算,因而减少了计算上的消耗.同时我们在随机预言模型下证明了该协议能够提供安全的双向认证和密钥协商.最后通过与Wu和Tseng的协议[18]、Islam的协议[19]以及He等的协议[20]做对比,展现出了该协议在计算效率上的优势.

患病羊在发病过程中会表现出较为严重的腹泻症状,这时可利用磺胺类药物或者抗菌素对其实施具体治疗。具体而言,就成年羊来讲,可利用百分之十的黄安嘧啶注射液20到30毫升左右对其实施肌肉注射操作;就羔羊而言,也可以利用此类药物10到15毫升进行注射,并应以天为单位,2次/d。倘若患病羊表现出腹痛症状,则可利用百分之十的安乃近4到6毫升,对其实施肌肉注射操作,同时,利用鞣酸蛋白2到5克对其实施灌服操作。

本文第2节介绍了移动客户端与多服务器模型;第3节描述了安全模型;第4节给出我们的协议构造;第5节分析了协议的安全性与性能;最后给出了本文的结论.

2 移动客户端——多服务器模型

移动客户端——多服务器模型下的用户认证与密钥协商协议包括一个注册服务器,多个应用服务器和多个移动客户端用户,系统模型如图1所示.整个方案由系统建立、密钥生成、身份认证与密钥协商三大部分组成,具体算法描述如下:

(1)系统建立:该算法由注册服务器根据输入的安全参数k,运行产生系统所需的公共参数param s和系统主密钥m asterKey.

(2)密钥生成:应用服务器和移动客户端分别进行密钥生成,该部分又分为用户秘密值生成和部分私钥生成.

1用户秘密值生成:该算法由每个用户执行,输入系统参数parm as,输出秘密值x和公钥PK.

1随机选取系统的主密钥

2部分私钥生成:该算法由注册服务器执行,输入系统参数param s,系统主密钥masterKey和用户身份ID,输出部分私钥D,并通过安全信道回传给用户.

此处的部分私钥需要通过安全信道回传,安全信道的实现有离线和在线两种方法.

1离线方式:注册服务器将部分私钥和公共参数输入到智能卡中,并将智能卡安全的交到注册用户手中.

2在线方式:注册服务器通过安全的网络套接字层(SSL)回传部分私钥和公共参数给注册用户.

(3)身份认证与密钥协商:移动客户端与应用服务器通过多轮交互,完成双方的身份认证并生成会话密钥SK.

  

图1 移动客户端——多服务器模型Figu re 1 Mobile client-multi-server model

3 安全模型

与A l-Riyam i和Paterson[21]提出的无证书公钥密码体制中的攻击类型相同,本文的无证书用户认证与密钥协商协议的攻击者分为两种类型:类型I敌手A1不知道系统主密钥,但能替换任何用户的公钥;类型II敌手A2知道系统主密钥,但是不能替换用户的公钥.针对以上两种敌手,我们定义以下两个游戏.

游戏I:针对类型I的敌手,具体步骤如下.

(1)系统建立阶段:挑战者B输入安全参数k,运行系统建立算法,生成系统公共参数param s和系统主密钥masterKey,并将公共参数param s发送给敌手A1,保存系统主密钥masterKey.

(2)询问阶段:敌手A1在此阶段可以进行以下多项式有界次数的询问.

• Hash询问:A 1可向方案中所有的Hash值发起Hash询问,挑战者B返回相应的值,并保证相同的询问得到相同的返回值.

我们的协议是基于椭圆曲线密码体制构造的,利用了Tseng等[17]的方案来实现,分为系统建立、密钥生成以及用户认证与密钥协商三部分.

• 完全私钥询问:当A 1对用户ID U进行完全私钥询问时,挑战者B首先运行部分私钥生成算法得到部分私钥D U,然后运行用户密钥生成算法得到秘密值x U,并将完全私钥SK U=(D U,x U)返回给A 1.

• 公钥询问:当A 1对用户ID U进行公钥询问时,挑战者B运行用户密钥生成算法得到公钥PK U,并将公钥PK U返回给A 1.

• 公钥替换询问:当A 1对用户ID U进行公钥替换询问时,挑战者就将用户ID U的公钥PK U替换为A 1选取的公钥

• Send询问:敌手A 1可以发送一个消息M 到预言机表示通信的参与者U中的一个实例k).当收到消息M 时首先进行合法性检验,如果验证通过则接受会话并返回相应的结果(或者完成会话),如果验证不通过则中断会话并返回空.

• 会话密钥询问:敌手A 1可以对随机预言机询问会话密钥,如果会话是接受状态则返回相应的会话密钥,否则返回空.

式中, 为表层重金属 i的实测含量;为 重金属i的评价参比值,沉积物参比值一般以全球工业化以前的沉积物重金属的最高背景值或者当地沉积物的背景值为参考(陈云增等,2007),本文采用1990年贵州省土壤平均背景值作为参比(表1),可较为真实地反映出草海的相对污染程度,指标及污染强度分级标准参见表 2(田林锋等,2012);为重金属i毒性响应系数,反映其毒性水平和生物对其污染的敏感程度;为单个沉积物中重金属i的潜在生态危害系数;RI为某域沉积物中多种重金属的潜在生态危害指数。

(3)挑战阶段:敌手A1发起对会话表示通信实体ij的第t次会话)的会话密钥猜测(这里要保证A 1不能对进行过会话密钥询问,且不能对通信实体ij既进行过部分私钥询问又进行过公钥替换询问).挑战者B通过随机地抛掷一枚硬币来得到b∈{0,1}.如果b=0,挑战者输出一个随机值;如果 b=1,挑战者输出通信双方的会话密钥.敌手 A 1猜测b的值并输出 b.如果 b=b,我们说敌手A 1赢得游戏.我们将敌手A 1赢得游戏的优势定义为:

 

游戏 II:针对类型II的敌手,具体步骤如下.

(1)系统建立阶段:挑战者B输入安全参数k,运行系统建立算法,生成系统公共参数param s和系统主密钥m asterKey,并将公共参数param s和系统主密钥m asterKey发送给敌手A2.

(2)询问阶段:敌手A 2在此阶段可以进行多项式有界次数的询问.

• Hash询问:A 2可向方案中所有的Hash值发起Hash询问,挑战者B返回相应的值,并保证相同的询问得到相同的返回值.

• 完全私钥询问:当A 2对用户ID U进行完全私钥询问时,挑战者B首先运行部分私钥生成算法得到部分私钥D U,然后运行用户密钥生成算法得到秘密值x U,并将完全私钥SK U=(D U,x U)返回给A2.

• 公钥询问:当A2对用户ID U进行公钥询问时,挑战者B运行用户密钥生成算法得到公钥PK U,并将公钥PK U返回给A 2.

• Send询问:敌手A 2可以发送一个消息M 到预言机收到消息M 时首先进行合法性检验,如果验证通过则接受会话并返回相应的结果(或者完成会话),如果验证不通过则中断会话并返回空.

• 会话密钥询问:敌手A 2可以对随机预言机询问会话密钥,如果会话是接受状态则返回相应的会话密钥,否则返回空.

• 临时秘密值询问:敌手A 2可以对随机预言机询问临时秘密值,返回相应的临时秘密值.

(3)挑战阶段:敌手A 2发起对会话的会话密钥猜测(这里要保证A 2对通信实体ij没有进行过完全私钥询问和会话密钥询问),挑战者B通过随机地抛掷一枚硬币来得到b∈{0,1}.如果b=0,挑战者输出一个随机值;如果b=1,挑战者输出通信双方的会话密钥.敌手A 2猜测b的值并输出b,如果b=b,我们说敌手A 2赢得游戏.我们将敌手A 2赢得游戏的优势定义为:

 

针对无证书公钥密码体制敌手的特点,我们给出如下的定义,该定义将方便本文方案的安全性证明.

定义1在以上两个游戏中,如果敌手A1A2成功的优势可以忽略,那么所设计的协议是安全的.

4 协议构造

• 部分私钥询问:当A 1对用户ID U进行部分私钥询问时,挑战者B运行部分私钥生成算法得到部分私钥D U,并将生成的部分私钥D U返回给A 1.

建立定位数学模型,利用该模型对未知节点进行初步定位估计,计算未知节点的坐标,通过距离差判别法获取未知节点坐标。

“胆小鬼!怕了吧!我唐小果可不好欺负!”唐小果昂着头对着空气说,并扯下面具,扔掉球棒。可正当他准备坐下好好休息时,一个平躺在书桌上的糖人进入了他的视线,吓得他跳了起来。

现在,因为种种的原因,我们在感冒的用药治疗上仍存在一些误区,和睦家药师冀连梅给家长们一些提醒,爸爸妈妈要谨防入坑啊。

4.1 系统建立

注册服务器首先根据给定的安全参数k,选择一个q(q>2k的素数)阶的循环加法群G1.PG1的生成元.注册服务器按照如下步骤进行操作:

综上所述,基于新医改对医院人力资源管理提出的要求,通过对医院绩效评价和薪酬管理体系进行重构,调整工作思路和方法,可以有效提升评价结果的合理性,真实反映出医院各部门的工作成效,并对各岗位工作人员进行有效激励。在新绩效评价体系以及多样化薪酬激励的实施下,可以充分激发医院人力资源潜能,促进各项业务水平和工作效果的提高,为患者提供满意服务。

2选择4个安全的Hash函数:H 2:{0,1}→{0,1}n,其中n为Hash函数的输出长度,与安全参数k有关.

3计算Auth C=H 3(ID C,ID S,U C,U S,sk C,Auth S),并将消息M 3=Auth C发送给应用服务器.

3设置系统参数param s=(q,G1,P,P p ub,H 1,H 2,H 3,H 4).公开系统参数param s,保密系统主密钥α.

4.2 密钥生成

该部分包含应用服务器S和移动客户端C的密钥生成.只有向注册服务器注册过的应用服务器和移动客户端才是合法的用户,所以应用服务器和移动客户端首先需要向注册服务器发起注册.图2显示了密钥生成过程.具体过程描述如下:

1申请者将身份ID U发送给注册服务器.申请者U∈{C,S},其中C为移动客户端,S为应用服务器.

2注册服务器随机选取

3注册服务器根据申请者的身份ID U,计算h U=H 1(ID U,Q U).

模拟施工是项目信息管理BIM技术应用的突出优势所在[2]。传统信息管理模式下,不论是设计内容还是变更内容,其具体的质量信息需要通过建设实践进行验证,故而容易造成一定的材料损失和成本浪费。BIM技术应用下,基于建筑工程数字模型的存在,施工人员可进行前期的模拟施工操作。譬如,就管线施工而言,模拟施工的应用使得管线布局、管线碰撞等内容得以有效把控,然后在设计优化的同时,实现信息管理质量及工程建设质量的有效提升。

4注册服务器计算部分私钥D U(l U+αh U)mod q,并将(D U,Q U)通过安全信道传递给申请者.

5申请者通过判断等式D U P=Q U+h U P p ub是否成立来验证(D U,Q U)的合法性.如果不合法,放弃该注册过程.否则,随机选取秘密值计算公钥PK U=x U P和完全私钥SK U=(D U,x U).

  

图2 密钥生成Figure 2 Key generation

4.3 密钥生成用户认证与密钥协商

该部分完成移动客户端与应用服务器的相互认证,认证通过后双方生成相同的会话密钥.图3描述了该部分的过程,其中C为移动客户端,S为应用服务器,以下将介绍具体的通信过程.

(1)移动客户端首先执行以下步骤:

• 临时秘密值询问:敌手A 1可以对随机预言机询问临时秘密值,随机预言机返回相应的临时秘密值.

1随机选择一个临时秘密值

2计算U C=r C P.

中国也在成为别人的别处,身边几乎所有人都有去中国玩的经历。一个法国人给我讲他的特别体验:2000米高的黄山,居然有台阶上到山顶;上到山顶以后发现身边还有好几百人,抵得上一个欧洲小镇的市中心。这在阿尔卑斯山区是无法想象的:2000米的山峰攀到顶,身边连一只山羊也没有。

3将消息M 1=(ID C,Q C,U C)发送给应用服务器,其中ID C为移动客户端的身份信息.

(2)应用服务器收到M 1=(ID C,Q C,U C)后做如下操作:

1随机选择一个临时秘密值

㊻《魏书》卷六七《崔光传》,中华书局1974 年版,第1487 页;同书卷六〇《韩显宗传》,第1342页。

2计算U S=r S Ph C=H 1(ID C,Q C).

3计算sk S=(x S+D S)(PK C+Q C+h C P p ub)⊕r s U C和Auth S=H 2(ID C,ID S,U C,U S,sk S),其中ID S为应用服务器的身份信息.

4将消息M 2=(ID S,Q S,U S,Auth S)发送给移动客户端.

(3)移动客户端收到M 2=(ID S,Q S,U S,Auth S)后做如下操作来验证应用服务器的身份,并生成会话密钥SK:

1计算h S=H 1(ID S,Q S)和sk C=(x C+D C)(PK S+Q S+h S P p ub)⊕r C U S.

2验证等式Auth S=H 2(ID C,ID S,U C,U S,sk C)是否成立.如果成立,说明应用服务器的身份验证通过,接受会话;否则应用服务器身份验证不通过,结束会话.

2.2.6 经预处理的空白脂质体+米索硝唑溶液 精密量取“2.1”项下空白脂质体+米索硝唑100 μL,加入800 μL甲醇破乳,涡旋5 min混匀,加入50 mg/mL ZnCl2甲醇溶液100 μL,涡旋5 min混匀,室温静置15 min,12 000 r/min离心5 min,取上清液,即得。

4月14日青海玉树地震发生后,水利部部长陈雷迅速作出安排部署,要求认真贯彻落实胡锦涛总书记、温家宝总理、回良玉副总理重要指示精神,立即组成工作组赶赴灾区,会同青海省水利部门迅速查清震损水利工程情况,及时采取措施,排除险情,抓紧做好排险避险预案,切实防范地震次生灾害,确保震损水利工程安全度汛。

4计算会话密钥SK=H 4(ID C,ID S,U C,U S,sk C,Auth S,Auth C).

本小节将主要从应用服务器对移动客户端的认证性、移动客户端对应用服务器的认证性和密钥协商三个方面证明本协议的安全性.定理1表明,除了参与会话的移动客户端与应用服务器外,没有第三方能够获得共同密钥 CK(sk C或 sk S).该协议的安全性基于计算Diffie-Hellman(Computational Diffie-Hellman,CDH)困难问题.我们在定义2描述该困难问题.

1验证等式Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S)是否成立.如果成立,说明移动客户端的身份验证通过,接受会话;否则移动客户端的身份验证不通过,结束会话.

2计算会话密钥SK=H 4(ID C,ID S,U C,U S,sk S,Auth S,Auth C).

从上面的协议我们可以看出,Auth S是用于移动客户端验证应用服务器的身份,Auth C是用于应用服务器验证移动客户端的身份,而SK是双方计算得到的相同会话密钥,这三个值的正确性都是基于等式sk C=sk S.

  

图3 用户认证与密钥协商Figu re 3 User authentication and key agreem ent

5 安全性证明与性能分析

5.1 安全性证明

(4)应用服务器收到M 3=Auth C后做如下操作来验证移动客户端的身份,并生成会话密钥SK:

定义2计算Diffie-Hellman(Computational Diffie-Hellman,CDH)问题:G 1是阶数为q(q是一个k比特的大素数)的循环加法群,PG1的生成元,给定计算abP ∈G1.

此次检查共发现安全隐患八起,对有安全隐患的单位下达了整改通知书,并下发了督查通报。据了解,10天以后,该团将对整改情况进行回头看,对重点部位进行复查,目前被检查单位已对存在的隐患开始全面整改。□

定理 1在随机预言模型中,如果存在一个概率多项式时间(probabilistic polynomial time,PPT)的敌手能以不可忽略的优势计算得到我们协议中的共同密钥CK,那么我们就可以构造一个算法B,以不可忽略的优势解决CDH困难问题的一个实例.

对于电动汽车出行的最优路径求解过程,实际上是在道路简化模型的基础上,选择一条满足最优规划目标且包含用户所选起始位置和终止位置的线段组合。基于这种思想,在初始条件已明确的情况下,可以列出最优路径规划的约束条件如下:

证明: 综合下面的引理1和引理2可知,如果一个敌手(A 1或者A 2)能以不可忽略的概率计算得到我们协议中的共同密钥CK(sk C或sk S),那么存在一个算法B,能够利用该敌手以不可忽略的概率解决一个CDH困难问题的实例.

引理1在随机预言模型中,如果存在一个类型I的敌手A 1能以不可忽略的优势ϵ计算得到我们协议中的共同密钥CK,那么存在一个算法B,调用A 1为子程序,能以不可忽略的优势解决CDH困难问题.

证明: 设(P,X=aP,Y=bP)为算法B要解决的CDH问题的一个随机实例,下面我们将显示算法B如何通过调用敌手A 1作为子程序来求解abP.

算法 B 首先选取一个随机数作为系统主密钥,并计算 P p u b= αP;然后选择 4个Hash函数 H i(i=1,2,3,4)作为随机预言机.同时算法 B在与敌手 A 1交互的整个过程中维护一个列表 L=(ID U,D U,Q U,PK U,x U),该列表一开始为空.最后算法 B设置系统参数 param s=(q,G1,P,P p ub,H 1,H 2,H 3,H 4),并将系统参数param s发送给敌手A 1.我们首先假设敌手A1最终会选择移动客户端C和应用服务器S进行会话密钥挑战,然后A 1开始按照游戏I进行询问.

H 1(ID U,Q U)询问:算法B维护一个列表L1=(ID U,Q U,h U),当A1对用户ID U进行 H 1询问时,B首先查询列表L1.如果该询问之前被问过,那么B返回相同的回答h U;否则B随机选取并返回给A1,然后将(ID U,Q U,h U)保存到列表L1中.

H 2(ID C,ID S,U C,U S,sk S)询问:算法B维护一个列表L2=(ID C,ID S,U C,U S,sk S,v2).当B收到敌手A1对条目(ID C,ID S,U C,U S,sk S)进行H 2询问时,B查询列表L2.如果L2中存在该条目,则返回v2A1;否则B随机选取v2∈{0,1}n并返回给A1,同时将(ID C,ID S,U C,U S,sk S,v2)保存到列表L2中.

H 3(ID C,ID S,U C,U S,sk C,Auth S)询问:算法 B维护一个列表 L3=(ID C,ID S,U C,U S,sk C,Auth S,v3),当 B收到敌手 A 1对条目 (ID C,ID S,U C,U S,sk C,Auth S)进行 H 3询问时,B查询列表L 3.如果L3中存在该条目,则返回v3A1;否则B随机选取v3∈{0,1}n并返回v3A 1,同时将(ID C,ID S,U C,U S,sk C,Auth S,v3)保存到列表L3中.

H 4(ID C,ID S,U C,U S,sk C,Auth S,Auth C)询问:算法 B维护一个列表 L4=(ID C,ID S,U C,U S,sk C,Auth S,Auth C,v4),当B收到敌手A1对条目(ID C,ID S,U C,U S,sk C,Auth S,Auth C)进行H 4询问时,B查询列表L4.如果L4中存在该条目,则返回v4A1;否则,B随机选取v4∈{0,1}n并返回v4A1,同时将(ID C,ID S,U C,U S,sk C,Auth S,Auth C,v4)保存到列表L4中.

部分私钥询问(ID U):当A1对一个用户ID U进行部分私钥询问时,算法B查询列表L并按如下方式进行交互:

1如果U=C,B查询列表L中是否包含(ID U,D U,Q U,PK U,x U).如果包含该条目并且Q U不为空,B返回(D U,Q U)给A 1.如果不包含该条目或者Q U为空,BQ U=X,返回(D U,Q U)给A 1,并对(ID U,Q U)进行一次H 1(ID U,Q U)询问得到h U.保存(D U,Q U)到列表L,保存(ID U,Q U,h U)到列表L 1.

2如果U=S,B查询列表L中是否包含(ID U,D U,Q U,PK U,x U).如果包含该条目并且Q U不为空,B返回(D U,Q U)给A1.如果不包含该条目或者Q U为空,BQ U=Y,返回(D U,Q U)给A 1,并对(ID U,Q U)进行一次H 1(ID U,Q U)询问得到h U.保存(D U,Q U)到列表L,保存(ID U,Q U,h U)到列表L 1.

3如果U=CU=S,B查询列表L中是否包含(ID U,D U,Q U,PK U,x U).如果包含该条目并且D U不为空,B返回(D U,Q U)给A1.如果不包含该条目或者D U为空,B随机选取并计算Q U=l U P.用户ID U的部分私钥为D U≡l U+αh U mod q.B返回(D U,Q U)给敌手A1,同时保存(D U,Q U)到列表L,保存(ID U,Q U,h U)到列表L1.

公钥询问(ID U):当A 1对一个用户ID U进行公钥询问时,算法B按如下方式与A 1进行交互:

1如果列表L中包含(ID U,D U,Q U,PK U,x U),B查看PK U是否为空.如果PK U不为空,B返回PK UA 1;否则B 随机选取计算PK U=x U P.B返回PK U给敌手A 1,同时将(PK U,x U)保存到列表L中.

2如果列表L中不包含(ID U,D U,Q U,PK U,x U),算法BD UQ U为空,同时随机选取计算 PK U=x U P.B返回 PK U给敌手 A1,同时将 (ID U,D U,Q U,PK U,x U)添加到列表 L中.

完全私钥询问(ID U):当A 1对一个用户ID U进行完全私钥询问时,算法B查询列表L并按如下方式进行交互:

1如果列表L中包含(ID U,D U,Q U,PK U,x U),B首先查看Q U和PK U是否为空.如果Q U为空,B进行一次部分私钥询问来获得Q U.如果PK U为空,B进行一次公钥询问来获得PK Ux U,然后B将(ID U,D U,Q U,PK U,x U)保存到列表L中,同时返回(D U,Q U,x U)给A 1.

2如果列表L中不包含(ID U,D U,Q U,PK U,x U),B对用户ID U分别进行一次部分私钥询问和公钥询问,然后将(ID U,D U,Q U,PK U,x U)添加到列表L中,同时返回(D U,Q U,x U)给A 1.

公钥替换询问当算法B收到敌手A 1对用户ID U进行公钥替换询问时,算法B按如下方式进行交互:

1如果列表L中包含(ID U,D U,Q U,PK U,x U),B

2如果列表L中不包含(ID U,D U,Q U,l U,PK U,x U),BD UQ U为空,然后将(ID U,D U,Q U,PK U,x U)添加到列表L中.

Send询问不失一般性,我们假设为移动客户端C的第i个实例,为应用服务器S的第j个实例,两者能相互认证并建立会话密钥.根据敌手询问的内容,这里可以分为下面的四种情况:

1并且 M=“begin”时,算法 B 首先随机选择一个临时秘密值然后计算U C=r C P,查询列表L获得Q C,B将(ID C,Q C,U C)返回给敌手A1.

2并且M=(ID C,Q C,U C)时,算法B随机选择一个临时秘密值计算 U S=r S P,并通过查询列表 L1获得 h C,然后通过对 ID S进行一次完全私钥询问获得 x SD S.如果 D S为空,取 sk S∈{0,1}n;否则计算 sk S=(x S+D S)(PK C+Q C+h C P p ub)⊕r S U C和Auth S=H 2(ID C,ID S,U C,U S,sk S).Auth S的值是通过H 2询问得到的.B查询列表L获得Q S,最后将(ID S,Q S,U S,Auth S)返回给敌手A1.

3M=(ID S,Q S,U S,Auth S)时,算法 B首先验证等式 Auth S=H 2(ID C,ID S,U C,U S,sk S)是否成立.如果成立,说明应用服务器的身份验证通过,B接受请求并计算 Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S).Auth C的值是通过H 3询问得到的.最后B将Auth C返回给敌手A1.如果等式不成立,B终止交互.

4并且 M=Auth C时,算法 B首先验证等式 Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S)是否成立.如果等式成立,说明移动客户端的身份验证通过,B接受请求并计算会话密钥SK=H 4(ID C,ID S,U C,U S,sk C,Auth S,Auth C).SK的值是通过H 4询问得到的,最后结束会话.如果等式不成立,B不接受请求,同时结束会话.

会话密钥询问当算法B收到敌手A1对通信实例的会话密钥询问时,B首先判断的会话状态是否为接受,如果是接受状态,B返回建立的会话密钥SK,否则返回空值.

临时秘密值询问当算法B收到敌手A1对通信实例的临时秘密值询问时,算法B就返回通信实例的临时秘密值r U.

挑战阶段敌手 A 1选择会话的双方并对他们之间的会话密钥发起猜测挑战.这里要保证敌手A 1之前没有对会话的双方进行过会话密钥询问,并且不能同时对或者进行过公钥替换询问和部分私钥询问.如果敌手A 1能以不可忽略的优势ϵ计算得到我们协议中的共同密钥那么也就可以容易的计算得到会话密钥,即挑战成功.假设我们之前猜对了敌手A 1所要选择挑战的会话双方,即算法B可以对

 

这里 x Cx Sh Ch Sr Cr S可以通过查询询问记录获得,所以 B 能够以概率 ϵ/q C q S解决CDH问题的一个实例,其中q C表示移动客户端的数量,q S表示应用服务器的数量.

引理2在随机预言模型中,如果存在一个类型II的敌手A 2能以不可忽略的优势ϵ,计算得到到我们协议中的共同密钥CK(sk C或sk S),那么存在一个算法B,调用A 2为子程序,能以不可忽略的优势解决CDH困难问题的一个实例.

证明: 设(P,X=aP,Y=bP)为算法B要解决的CDH问题的一个随机实例,下面我们将演示算法B如何通过调用敌手A1做为子程序来求解abP.

算法 B首先选取一个随机数作为系统主密钥并计算 P p ub=P. 然后选择四个 Hash函数 H i(i=1,2,3,4)作为随机预言机.同时,B在与敌手 A2交互的整个过程中维护一个列表 L=(ID U,PK U,x U),该列表一开始为空.最后算法 B设置系统参数 param s=(q,G1,P,P p ub,H 1,H 2,H 3,H 4),并将系统参数 param s和系统主密钥 α发送给敌手 A2.因为 A2在知道主密钥α的情况下可以通过选择随机数构造一个合法的部分私钥D U≡l U+αh U m od q,所以这里不需要进行部分私钥询问.同样的,这里我们首先假设敌手A2最终会选择移动客户端C和应用服务器S进行会话密钥挑战.A2开始按照游戏II进行询问.

H 1(ID U,Q U)询问:算法B维护一个列表L1=(ID U,Q U,h U).当A2对用户ID U进行H 2询问时,B首先查询列表L2.如果该询问之前被问过,那么B返回相同的回答h U;否则B随机选取并返回给A2.最后将(ID U,Q U,h U)保存到列表L1中.

H 2(ID C,ID S,U C,U S,sk S)询问:算法B维护一个列表L2=(ID C,ID S,U C,U S,sk S,v2).当B收到敌手A 2对条目(ID C,ID S,U C,U S,sk S)进行H 2询问时,B查询列表L2.如果L2中存在该条目,返回v2A 1;否则B随机选取v2∈{0,1}n并返回给A 2.最后将(ID C,ID S,U C,U S,sk S,v2)保存到列表L2中.

H 3(ID C,ID S,U C,U S,sk C,Auth S)询问:算法 B维护一个列表 L3= (ID C,ID S,U C,U S,sk C,Auth S,v3).当 B收到敌手 A2对条目 (ID C,ID S,U C,U S,sk C,Auth S)进行 H 3询问时,B查询列表L3.如果L3中存在该条目,则返回v3A2;否则B随机选取v3∈{0,1}n并返回v3A2.同时将(ID C,ID S,U C,U S,sk C,Auth S,v3)保存到列表L3中.

H 4(ID C,ID S,U C,U S,sk C,Auth S,Auth C)询问:算法 B维护一个列表 L4= (ID C,ID S,U C,U S,sk C,Auth S,Auth C,v4).当 B收到敌手 A2对条目(ID C,ID S,U C,U S,sk C,Auth S,Auth C)进行H 4询问时,B查询列表L4,如果L4中存在该条目,则返回v4A2;否则B随机选取v4∈{0,1}n并返回v4A2.同时将(ID C,ID S,U C,U S,sk C,Auth S,Auth C,v4)保存到列表L4中.

公钥询问(ID U):当A 2对一个用户ID U进行公钥询问时,算法B按如下方式与A 2进行交互:

1U=C,B查询列表L中是否包含条目(ID U,PK U,x U).如果包含,则说明A 2之前已经对该用户进行过公钥询问,B返回PK UA 2;否则B令PK U=X,令x U为空,B返回PK U给敌手A 2,同时将(ID U,PK U,x U)保存到列表L中.

2U=S,B查询列表L中是否包含条目(ID U,PK U,x U).如果包含,则说明A2之前已经对该用户进行过公钥询问,B返回PK UA2;否则B令PK U=Y,令x U为空,B返回PK U给敌手A2,同时将(ID U,PK U,x U)保存到列表L中.

3U=CU=S,B查询列表L中是否包含条目(ID U,PK U,x U).如果包含则说明A 2之前已经对该用户进行过公钥询问,B返回PK UA 2;否则B随机选取并计算PK U=x U P.B返回PK U给敌手A 2,同时将(ID U,PK U,x U)保存到列表L中.

完全私钥询问(ID U):当A 2对一个用户ID U进行完全私钥询问时,算法B查询列表L中是否包含条目(ID U,PK U,x U).如果包含则说明A 2之前已经对该用户进行过公钥询问,B返回(D U,Q U,x U)给 A 2;否则 B进行一次公钥询问来得到 (PK U,x U),然后 B将这些值保存到列表 L中,同时返回(D U,Q U,x U)给A 2.

Send询问与引理1类似,根据敌手询问的内容,这里同样可以分为以下四种情况:

1并且M=“begin”时,算法 B 首先随机选择一个临时秘密值然后计算U C=r C PQ C=l C P.最后B将(ID C,Q C,U C)返回给敌手A 2.

2并且M=(ID C,Q C,U C)时,算法B随机选择一个临时秘密值并计算 U S=r S P,然后通过对 ID C和 ID S分别进行一次完全私钥询问获得 x CD Cx SD S.如果 x Cx S为空,取 sk S∈{0,1}n;否则计算 sk S=(x S+D S)(x C+D C)P⊕r S U C和 Auth S=H 2(ID C,ID S,U C,U S,sk S),其中 Auth S的值通过 H 2询问获得.最后 B 随机选取计算Q S=l S P并将(ID S,Q S,U S,Auth S)返回给敌手A 2.

3并且 M =(ID S,Q S,U S,Auth S)时,算法 B首先验证等式 Auth S=H 2(ID C,ID S,U C,U S,sk S)是否成立.如果成立,说明应用服务器的身份验证通过,B接受请求并计算Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S).然后与B将Auth C返回给敌手A 2.如果等式不成立,B终止交互.

4并且 M =Auth C时,算法 B首先验证等式 Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S)是否成立.如果成立,说明移动客户端的身份验证通过,B接受请求并设置SK=H4(ID C,ID S,U C,U S,sk S,Auth S,Auth C),最后结束会话.如果不成立,B不接受请求,同时结束会话.

会话密钥询问当算法B收到敌手A 2对通信实例的会话密钥询问时,B首先判断的会话状态是否为接受.如果是接受状态,B返回建立的会话密钥SK;否则返回空值.

临时秘密值询问当算法B收到敌手A2对通信实例的临时秘密值询问时,B就返回通信实例的临时秘密值r U.

挑战阶段敌手A2选择会话的双方并对他们之间的会话密钥发起猜测挑战.这里要保证敌手A2之前没有对会话的双方进行过会话密钥询问以及完全私钥询问.如果敌手A2能以不可忽略的优势ϵ计算得到我们协议中的共同密钥 CK(sk C或 sk S),那么A2也就可以容易的计算得到会话密钥,即挑战成功.假设我们之前猜对了敌手A1所要选择挑战的会话双方,那么这里 PK C=aP,PK S=bP,算法 B 可以对

 

算法 B可以查询询问记录获得r Cr S,而 D CD SBA2都可以计算得到的,所以我们可以构造一个算法B以不可忽略的概率ϵ/q C q S解决CDH问题的一个实例,其中q C表示移动客户端的数量,q S表示应用服务器的数量.

定理1与我们的CDH困难问题的假设相矛盾.由反证法可知,敌手A1A2赢得游戏的概率是可以忽略的.接下来,我们将基于定理1来分别证明我们的协议提供了应用服务器对移动客户端的认证性、移动客户端对应用服务器的认证性和密钥协商.

5.1.1 应用服务器对移动客户端的认证性

应用服务器对移动客户端的认证性表明,如果一个敌手没有合法的移动客户端用户的完全私钥,那么他就不能够伪装成该客户端与应用服务器进行通信.下面的定理2说明了在随机预言模型下,基于 CDH困难问题假设,我们的协议提供了应用服务器对移动客户端的认证性.

定理 2在随机预言模型中,如果存在一个概率多项式时间(PPT)的敌手,能以不可忽略的优势攻破我们协议的应用服务器对移动客户端的认证性,那么存在一个算法B,利用该敌手作为子程序,能够以不可忽略的概率解决CDH困难问题的一个实例.

证明: 如果存在一个敌手 A能在不知道移动客户端合法完全私钥的前提下,攻破应用服务器对移动客户端的认证性,那么根据引理1和引理2中的模拟知道,敌手 A在发送了 Send询问ID C,Q C,U C)并收到回答 (ID S,Q S,U S,Auth S)后,能对应用服务器做出相应的回答 Auth C,并使Auth C能通过算法B的合法性验证,即等式Auth C=H 3(ID C,ID S,U C,U S,sk S,Auth S)成立,那么一定存在以下两种情况之一:

1敌手A以小于q S/2n的概率猜到了Auth C的值,这里q S表示应用服务器的数量,n表示H 3的输出长度.

2敌手A对(ID C,ID S,U C,U S,sk C,Auth S)进行了H 3询问,这种情况下A必须首先知道正确的sk C或sk S的值.根据定理1可知,这种情况的概率可以忽略.

如果敌手A有不可忽略的概率ϵ成功攻破应用服务器对移动客户端的认证性,那么算法B至少能以ϵ−q S/2n的概率解决CDH问题的一个实例.

根据反证法的思想可知,这样的敌手是不存在的.所以我们的协议提供了应用服务器对移动客户端的认证性.

5.1.2 移动客户端对应用服务器的认证性

移动客户端对应用服务器的认证性表明,如果一个敌手没有合法的应用服务器用户的完全私钥,那么他就不能够伪装成该应用服务器与移动客户端进行通信.下面的定理3说明了,在随机预言模型下,基于CDH困难问题假设,我们的协议提供了移动客户端对应用服务器的认证性.

定理 3在随机预言模型中,如果存在一个概率多项式时间(PPT)的敌手,能以不可忽略的优势攻破我们协议的移动客户端对应用服务器的认证性,那么存在一个算法B,利用该敌手作为子程序,能够以不可忽略的概率解决CDH困难问题的一个实例.

证明: 如果存在一个敌手A能在不知道应用服务器完全私钥的前提下,攻破移动客户端对应用服务器的认证性,那么根据引理1和引理2中的模拟我们知道,敌手A在收到移动客户端的回答(ID C,Q C,U C)后,能给出相应的回答 (ID S,Q S,U S,Auth S),并使得 Auth S能通过算法 B的合法性验证,即等式Auth S=H 2(ID C,ID S,U C,U S,sk S)成立,那么一定存在以下三种情况之一:

1敌手A以小于q C/2n的概率猜到了Auth S的值,这里q C表示移动客户端的数量,n表示H 2的输出长度.

2如果移动客户端的回答(ID C,Q C,U C)在以往的会话中出现过,那么敌手A就可以发送相应的答复(ID S,Q S,U S,Auth S)给算法B,该情况发生的概率为q C(q C1)/2n,该值小于

2敌手A对(ID C,ID S,U C,U S,sk S)进行了H 2询问,这种情况下A必须首先知道正确的sk C或sk S的值,根据定理1可知,这种情况的概率可以忽略不计.

如果敌手A能以不可忽略的概率ϵ成功攻破移动客户端对应用服务器的认证性,那么算法B至少能以概率解决CDH问题.

根据反证法的思想可知,这样的敌手是不存在的,所以我们的协议提供了移动客户端对应用服务器的认证性.

5.1.3 密钥协商

定理4说明了在随机预言模型下,基于CDH困难问题假设,我们的协议提供了安全的密钥协商.

定理4在随机预言模型中,如果存在一个概率多项式时间(PPT)的敌手能以不可忽略的优势在挑战阶段猜对b的值,那么存在一个算法B,利用该敌手作为子程序,能够以不可忽略的概率解决CDH困难问题的一个实例.

证明: 在我们的协议中,移动客户端和应用服务器之间的会话密钥SK是由双方的临时秘密值和完全私钥构造而成.在计算SK之前,移动客户端与应用服务器首先要通过双方的相互认证.根据定理2与定理3我们知道,敌手A要通过任何一方的认证,我们都将以不可忽略的概率解决CDH问题,所以算法B能以不可忽略的概率解决CDH困难问题的一个实例.

根据反证法的思想可知,这样的敌手是不存在的,所以我们的协议提供了安全的密钥协商.

5.2 性能分析

本小节我们将从通信成本与计算成本两个方面给出对协议的分析.为了更加直观地表现本章协议的性能,我们选择了与已有的三个同类型的协议作比较,分别是 Wu和 Tseng的协议[18],Islam的协议[19]以及He等的协议[20].我们使用JPBC库实现上述协议.使用了基于有限域E(F p)上的椭圆曲线y2(x3+x)mod p来实现我们的协议,取p=512位,阶数q=160位,循环群G1中元素的大小为1024位,Hash函数H 1的输出长度为160位,H 2H 3H 4的输出长度为256位.因为每个用户只需要注册一次,而每次通信都需要进行认证与密钥协商,所以这里我们只考虑认证与密钥协商部分的性能.为了方便后面的统计,我们首先用符号定义协议中所用到的运算,如表1所示.

 

表1 符号定义Table 1 Symbol definition

  

符号 定义符号 定义TG e 双线性对运算 T H 将任意长度比特串映射到特定长度比特串TG m u l G 1中元素的标量乘运算 TZ a d d Zq中元素的加法运算TG ad d G 1中元素的加法运算 TZ m u l Zq中元素的乘法运算TG H 将任意长度比特串映射到G 1中的元素 TZ p ow Zq中元素的幂运算TZ H 将任意长度比特串映射到Zq中的元素 T X o r 异或运算

表2给出了以上协议的部分比较结果,从表中可以看出本章的协议能够适用于多服务器环境并且不存在密钥托管问题.我们将在后面的分析中给出详细的比较结果.

 

表2 与其它协议的比较Table 2 Comparisons With other protocols

  

协议 移动端 服务器端 是否存在密钥托管是否适合多服务器Wu和Tseng[18] 4TG m u l+TG a d d+3TZ H 2TG e+2TG m u L+TG ad d+TG H+3TZ H是否Islam[19] 2TG e+4TG m u l+2TG H+2TG ad d+2TZ H+2TZ a d d 2TG e+4TG m u l+2TG H+2TG a d d+2TZ H+2TZ ad d 是 是He等[20]2TG m u l+TG a d d+5TZ H+T H+TZ ad d+TZ m u l+TZ p ow+2T X o r TG e+4TZ H+T H+TZ ad d+2TZ m u l+4TZ p ow+T X o r否是本文 4TG m+TZ H+2TG ad d+3T H+TZ ad d+T X o r 4TG m+TZ H+2TG ad d+3T H+TZ ad d+T X o r否是

5.2.1 通信成本

循环群G 1中每个点的大小为1024位,Hash函数H 1的输出是160位,H 2H 3H 4的输出为256位.取用户的身份信息ID为512位.首先移动客户端发送给应用服务器的消息为M 1=(ID C,Q C,U C),移动客户端的身份ID C的大小为512位,循环群G1中点Q CU C的大小都为1024位,所以消息M 1的大小为2560位.应用服务器发送给移动客户端的消息为M 2=(ID S,Q S,U S,Auth S),这里应用服务器的身份ID S的大小同样为512位,循环群G1中点Q SU S的大小都为1024位,Auth S为Hash函数H 2的输出,大小为256位,所以M 2的大小为2816位.最后移动客户端发送给应用服务器的消息为M 3=Auth C,其中Auth C为Hash函数H 3的输出,大小为256位,即M 3的大小为256位.所以我们设计的协议总的通信成本为5632位,即704字节.图4给出了各个协议之间的通信成本比较.

  

图4 通信成本比较Figure 4 Comparison of communication cost

5.2.2 计算成本

下面评估协议的计算成本,这里依然使用了JPBC库来编程实现本章的协议.图5给出了各个协议之间的计算成本比较.可以看出,本文的协议不管是在移动客户端方面还是在应用服务器方面都有着非常大的性能提升,因而在计算成本方面相较于其它协议有着非常大的优势,更能适用于资源受限的移动客户端.

  

图5 计算成本比较Figure 5 Comparison of computational cost

6 结论

我们在不使用双线性对运算的情况下构造了一种新的用户认证与密钥协商协议.该协议基于无证书公钥密码体制,没有证书管理问题和密钥托管问题.同时,在随机预言模型下,基于CDH困难问题假设,证明了该协议的安全性,即提供双向认证和密钥协商,并且能够抵挡临时秘密值泄露攻击.最后利用JPBC库编程实现了该协议并评估了协议的通信成本和计算成本.在通信成本方面,在排除存在密钥托管问题的协议前提下,虽然本文的协议相较于He等的协议[20]成本有一定的增加,但是依然处于合理的范围;在计算成本方面,本协议与其它协议相比有非常大的性能提升,对计算能力有限的移动设备非常适用.

References

[1]LI L H,LIN I C,HWANG M S.A remote password authentication scheme for multi-server architecture using neural networks[J].IEEE Transactions on Neural Network,2001,12(6):1498–1504.[DOI:10.1109/72.963786]

[2]LIN I C,HWANG M S,LIL H.A new remote user authentication scheme for multi-server architecture[J].Future Generation Computer Systems,2003,19(1):13–22.[DO I:10.1016/S0167-739X(02)00093-6]

[3]TSAUR W J,WU C C,LEE W B.A smart card-based remote scheme for password authentication in multi-server Internet services[J].Computer Standard&Interfaces,2004,27(1):39–51.[DO I:10.1016/j.csi.2004.03.004]

[4]JUANG W S.Efficient multi-server password authenticated key agreement using smart cards[J].IEEE Transactions on Consumer Electronics,2004,50(1):251–255.[DOI:10.1109/TCE.2004.1277870]

[5]TSA I J L.Efficient multi-server authentication scheme based on one-way Hash function Without verification table[J].Computers&Security,2008,27(3–4):115–121.[DO I:10.1016/j.cose.2008.04.001]

[6]GENG J,ZHANG L.A dynamic ID-based user authentication and key agreement scheme for multi-server environment using bilinear pairings[C].In:Proceedings of the 2008 Workshop on Power Electronics and Intelligent Transportation System.Washington,DC,USA,2008:33–37.[DO I:10.1109/PEITS.2008.35]

[7]LIAO Y P,WANG S S.A secure dynamic ID based remote user authentication scheme for multi-server environment[J].Computer Standards&Interfaces,2009,31(1):24–29.[DO I:10.1016/j.csi.2007.10.007]

[8]HSIANG H C,SHIH W K.Improvement of the secure dynamic ID based remote user authentication scheme for multi-server environment[J].Computer Standards&Interfaces,2009,31(6):1118–1123. [DOI:10.1016/j.csi.2008.11.002]

[9]LEE C C,LIN T H,CHANG R X.A secure dynamic ID based remote user authentication scheme for multiserver environment using smart cards[J].Expert Systems With Applications,2011,38(11):13863–13870.[DOI:10.1016/j.eswa.2011.04.190]

[10]SOOD S K,SARJE A,SINGH K.A secure dynamic identity based authentication protocol for multi-server architecture[J].Journal of Network and Computer Applications,2011,34(2):609–618.[DOI:10.1016/j.jnca.2010.11.011]

[11]LIX,XIONG Y,MA J,et al.An efficient and secure dynamic identity based authentication protocol for multiserver architecture using smart cards[J].Journal of Network and Computer Applications,2012,35:763–769.[DOI:10.1016/j.jnca.2011.11.009]

[12]HAN W.Weaknesses of a dynamic identity based authentication protocol for multi-server architecture[EB/OL].https://arxiv.org/abs/1201.0883.

[13]LI X,MA J,WANG W D,et al.A novel smart card and dynamic ID based remote user authentication scheme for multi-server environment[J].Mathematical and Computer Modelling,2013,58(1–2):85–95.[DOI:10.1016/j.m cm.2012.06.033]

[14]WANG B,MA M.A smart card based efficient and secured multi-server authentication scheme[J].Wireless Personal Communications,2013,68(2):361–378.[DOI:10.1007/s11277-011-0456-7]

[15]HE D,W U S.Security flaws in a smart card based authentication scheme for multi-server environment[J].Wireless Personal Communications,2013,70(1):323–329.[DO I:10.1007/s11277-012-0696-1]

[16]AMIN R,BISWAS G P.Design and analysis of bilinear pairing based mutual authentication and key agreement protocol usable in multi-server environment[J].Wireless Personal Communications,2015,84(1):439–462.[DO I:10.1007/s11277-015-2616-7]

[17]TSENG Y M,HUANG S S,YOU M L.Strongly secure ID-based authenticated key agreement protocol for mobile multi-server environments[J].International Journal of Communication Systems,2017,30(11):e3251.[DO I:10.1002/dac.3251]

[18]WU T Y,TSENG Y M.An efficient user authentication and key exchange protocol for mobile client–server environment[J].Computer Networks,2010,54(9):1520–1530.[DO I:10.1016/j.comnet.2009.12.008]

[19]ISLAM S H.A provably secure id-based mutual authentication and key agreement scheme for mobile multiserver environment Without ESL attack[J].Wireless Personal Communications,2014,79(3):1975–1991.[DO I:10.1007/s11277-014-1968-8]

[20]HE D,ZEADALLY S,KUM AR N,et al.Efficient and anonymous mobile user authentication protocol using self certified public key cryptography for multi-server architectures[J].IEEE Transactions on Information Forensics and Security,2016,11(9):2052–2064.[DO I:10.1109/TIFS.2016.2573746]

[21]AL-RIYAMI S S,PATERSON K G.Certificateless public key cryptography[C].In:Advances in Cryptology—ASIACRYPT 2003,Springer Berlin Heidelberg,2003:452–473.[DOI:10.1007/978-3-540-40061-5_ 29]

 
刘波,周雨阳,胡飞,李发根
《密码学报》 2018年第02期
《密码学报》2018年第02期文献
100%安全可靠
7X18小时在线支持
支付宝特邀商家
不成功全额退款