CN103338202B - 一种基于智能卡的远程用户密码双重验证方法 - Google Patents
一种基于智能卡的远程用户密码双重验证方法 Download PDFInfo
- Publication number
- CN103338202B CN103338202B CN201310275718.7A CN201310275718A CN103338202B CN 103338202 B CN103338202 B CN 103338202B CN 201310275718 A CN201310275718 A CN 201310275718A CN 103338202 B CN103338202 B CN 103338202B
- Authority
- CN
- China
- Prior art keywords
- smart card
- server
- user
- parameter
- identity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于智能卡的远程用户密码双重验证方法,包括注册步骤、登录步骤和认证步骤,其中,注册步骤进一步包括,智能卡和服务器将用户所提供的注册信息变换后存入智能卡;登录步骤进一步包括,智能卡对用户身份进行本地合法性验证,如果合法,智能卡生成第一验证数据,并将其发送给服务器;认证步骤进一步包括,服务器对用户身份进行合法性验证,如果合法,则生成第二验证数据,并将其发送给智能卡,智能卡对服务器身份进行合法性验证,如果合法,则生成第三验证数据,并将其发送给服务器,同时生成会话密钥,服务器对用户身份进行二次验证,如果合法,则生成会话密钥。实现了用户匿名,能够抵抗智能卡丢失攻击,克服了拒绝服务器攻击。
Description
技术领域
本发明涉及信息安全与通信技术领域,特别涉及一种基于智能卡的远程用户密码双重验证方法。
背景技术
1990年,Hwang,Chen和Laih等人提出基于智能卡的密码认证方法。在他们的方法中用户信息被存放在智能卡中,而远程服务器不需要再存放含有用户私密信息的密码表。
1993年,Chang-Wu介绍了一种基于智能卡的公钥密码认证方法,该方法不仅需要公钥目录,还拥有很大的计算量。后来,许多研究者相继提出了许多基于智能卡的无公钥密码认证方法。然而,以上几种方法通常都是将秘密参数直接存在智能卡中,一旦参数泄露,用户很容易遭受离线字典猜测攻击。
2004年,Das et al.提出一种基于智能卡的动态ID远程用户身份认证方法。2009年,Wang et al.提出一种新的方法,并声称该方法相比Das et al.的方法具有更高的安全性和更低的计算量。
然而,Khan et al.发现Wang et al.提出的方法仍然存在安全性缺陷,同时提出一种改进的方法。2010年,He et al.指出Khan et al.提出的方法仍然不能抵抗三种攻击类型。因此,Das et al.以及以上所提出的方法都存在安全性缺陷。
2012年,Qi Xie提出一种新的基于智能卡的公钥体制认证方法,声称其提出的方法不仅能够抵御各种攻击,并且能够减少计算量。实际上Qi Xie所提出的方法不能实现用户匿名,不能抵御重放攻击、拒绝服务器攻击和智能卡丢失攻击等。
发明内容
本发明的目的是提供一种基于智能卡的远程用户密码双重验证方法。具有匿名性,能够抵抗拒绝服务器攻击,用户假冒攻击和智能卡丢失攻击。
为达到上述目的,本发明采用如下技术方法:
一种基于智能卡的远程用户密码双重验证方法,包括注册步骤、登录步骤和认证步骤,其中,注册步骤进一步包括,智能卡和服务器将用户所提供的注册信息变换后存入智能卡;登录步骤进一步包括,所述智能卡根据用户提供的身份标识和口令进行本地合法性验证,如果智能卡验证用户合法,所述智能卡生成第一验证数据,并将第一验证数据发送给服务器;认证步骤进一步包括,所述服务器根据所接收到的第一验证数据对用户身份进行合法性验证,如果所述服务器验证用户身份合法,则生成用于验证服务器身份的第二验证数据,并将第二验证数据发送给智能卡,所述智能卡根据接收到的第二验证数据对服务器身份进行合法性验证,如果智能卡验证服务器身份合法,则生成第三验证数据,并将第三验证数据发送给服务器,同时生成会话密钥,所述服务器根据接收到的第三验证数据对用户身份进行第二次验证,如果服务器验证用户身份合法,则生成会话密钥。
进一步地,一种基于智能卡的远程用户密码双重验证方法,注册步骤进一步包括,智能卡根据IDi、PWi和随机数N,计算密码保护参数RPWi=h(PWi||N),然后将IDi和RPWi通过安全信道发送给服务器S,服务器使用自己的密钥x计算身份保护参数N0=h(IDi)xmodp,验证参数Ti=h(IDi||RPWi),比较参数Hi=h(Ti),身份唯一参数然后将{Ni,h(.),Hi}和随机数N存入智能卡,其中,IDi为第i个用户Ui的用户的身份标识、PWi为用户Ui的口令、N为用户Ui输入的随机数。
进一步地,一种基于智能卡的远程用户密码双重验证方法,登录步骤进一步包括,智能卡根据用户Ui所输入的IDi *和PWi *,计算同形验证参数Ti *=h(ID* i||RPWi *)和同形比较参数Hi *=h(Ti *),并比较Hi *与Hi是否相等,若不等,则中止此次登录,若相等,则智能卡产生随机数b,k,计算随机数保护参数Ns=gkmodp,动态身份CIDi=h(IDi)b modp,验证参数比较参数Mi=(CIDi||C0||Ns),然后将第一验证参数{CIDi,Ns,Mi}发给服务器。
进一步地,一种基于智能卡的远程用户密码双重验证方法,认证步骤进一步包括,服务器根据所接收到的第一验证数据,计算同形验证参数同形比较参数Mi *=h(CIDi||C0 *||Ns),并比较同形比较参数和比较参数Mi是否相等,若不等,则中止此次会话,若相等,则认为用户合法,服务器产生随机数d,并计算隐藏随机数参数Nu=gdmodp,以及验证参数C1=h(Ns d||Nu||C0 *),将第二验证数据{C1,Nu}发送给智能卡;智能卡接收到第二验证数据后,计算同形验证参数C1 *=h(Nu k||Nu||C0),并与所接收到的C1进行比较,若不等,则中止此次会话,若相等,则认为服务器合法,然后计算比较参数并将其发送给服务器,服务器计算同形比较参数h(Ns d+1),并对这两者进行比较,若不等,则中止会话,若相等,则服务器再次认证用户合法,其中,第三验证数据是
进一步地,一种基于智能卡的远程用户密码双重验证方法,服务器根据SK=h(Nu k+2)生成会话密钥,智能卡根据SK=h(Ns d+2)生成会话密钥。
本发明所提供的基于智能卡的远程用户密码双重验证方法,由于采用了更改智能卡存储信息的方式,不仅实现了用户匿名,而且能够抵抗智能卡丢失攻击,同时由于增加了本地验证步骤,克服了拒绝服务器攻击和用户假冒攻击。除此之外,还由于采用对密码双重验证的方式,有效抵御了重放攻击。
附图说明
图1是本发明的一个具体实施例中注册步骤的示意图;
图2是本发明的一个具体实施例中登录和认证步骤的示意图。
具体实施方式
为了使本发明的目的、技术方法及优点更加清楚明白,下面结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在本发明提出的基于智能卡的远程用户密码双重验证方法中,包括两个参与方:用户Ui和服务器S,服务器产生私钥x;
一种基于智能卡的远程用户密码双重验证方法,包括注册步骤、登录步骤和认证步骤,其中,注册步骤进一步包括,智能卡和服务器将用户所提供的注册信息变换后存入智能卡;登录步骤进一步包括,智能卡根据用户提供的身份标识和口令进行本地合法性验证,如果智能卡验证用户合法,智能卡生成第一验证数据,并将第一验证数据发送给服务器;认证步骤进一步包括,服务器根据所接收到的第一验证数据对用户身份进行合法性验证,如果服务器验证用户身份合法,则生成用于验证服务器身份的第二验证数据,并将第二验证数据发送给智能卡,智能卡根据接收到的第二验证数据对服务器身份进行合法性验证,如果智能卡验证服务器身份合法,则生成第三验证数据,并将第三验证数据发送给服务器,同时生成会话密钥,服务器根据接收到的第三验证数据对用户身份进行第二次验证,如果服务器验证用户身份合法,则生成会话密钥。在该实施例中,由于采用了更改智能卡存储信息的方式,不仅实现了用户匿名,而且能够抵抗智能卡丢失攻击,同时由于增加了本地验证步骤,克服了拒绝服务器攻击和用户假冒攻击。
进一步地,一种基于智能卡的远程用户密码双重验证方法,注册步骤进一步包括,智能卡根据IDi、PWi和随机数N,计算密码保护参数RPWi=h(PWi||N),然后将IDi和RPWi通过安全信道发送给服务器S,服务器使用自己的密钥x计算身份保护参数N0=h(IDi)xmodp,验证参数Ti=h(IDi||RPWi),比较参数Hi=h(Ti),身份唯一参数然后将{Ni,h(.),Hi}和随机数N存入智能卡,其中,IDi为第i个用户Ui的用户的身份标识、PWi为用户Ui的口令、N为用户Ui输入的随机数。
进一步地,一种基于智能卡的远程用户密码双重验证方法,登录步骤进一步包括,智能卡根据用户Ui所输入的IDi和PWi,计算同形验证参数Ti *=h(ID* i||RPWi *)和同形比较参数Hi *=h(Ti *),并比较Hi *与Hi是否相等,若不等,则中止此次登录,若相等,则智能卡产生随机数b,k,计算随机数保护参数Ns=gkmodp,动态身份CIDi=h(IDi)b modp,验证参数比较参数Mi=(CIDi||C0||Ns),然后将第一验证参数{CIDi,Ns,Mi}发给服务器。
进一步地,一种基于智能卡的远程用户密码双重验证方法,认证步骤进一步包括,服务器根据所接收到的第一验证数据,计算同形验证参数同形比较参数Mi *=h(CIDi||C0 *||Ns),并比较同形比较参数和比较参数Mi是否相等,若不等,则中止此次会话,若相等,则认为用户合法,服务器产生随机数d,并计算隐藏随机数参数Nu=gdmodp,以及验证参数C1=h(Ns d||Nu||C0 *),将第二验证数据{C1,Nu}发送给智能卡;智能卡接收到第二验证数据后,计算同形验证参数C1 *=h(Nu k||Nu||C0),并与所接收到的C1进行比较,若不等,则中止此次会话,若相等,则认为服务器合法,然后计算比较参数并将其发送给服务器,服务器计算同形比较参数h(Ns d+1),并对这两者进行比较,若不等,则中止会话,若相等,则服务器再次认证用户合法,其中,第三验证数据是
作为本发明的一个具体实施例,一种基于智能卡的远程用户密码双重验证方法包括三个步骤,注册步骤、登录步骤和认证步骤。
如图1所示,注册步骤具体为,用户Ui选择自己的身份IDi和密码PWi,随机数N,智能卡计算密码保护参数RPWi=h(PWi||N),然后将IDi和RPWi通过安全信道发送给服务器S,服务器用自己的密钥x计算身份保护参数N0=h(IDi)xmodp,验证参数Ti=h(IDi||RPWi),比较参数Hi=h(Ti),身份唯一参数然后将{Ni,h(.),Hi}存入智能卡并通过安全信道将智能卡返回给用户,用户将随机数N存入智能卡。根据幂指数运算,已知IDi和p的情况下,由x求N0容易进行,反过来,由N0求x是十分困难的,其中参数p是可以任意指定的大素数,其值越大越能够保证x的安全性。
如图2所示,登录步骤具体为,用户Ui将自己智能卡插入读卡器中,输入自己的IDi *和PWi *,智能卡计算同形验证参数Ti *=h(ID* i||RPWi *)和同形比较参数Hi *=h(Ti *),将Hi *同Hi对比,若不等,则中止此次登录,若相等,智能卡产生随机数b,k,计算随机数保护参数Ns=gkmodp,p是指大素数,g为在有限域GF(p)的本原元,动态身份CIDi=h(IDi)bmodp,验证参数比较参数Mi=(CIDi||C0||Ns),然后将第一验证参数{CIDi,Ns,Mi}发给服务器。
认证步骤具体为,服务器接收登录请求信息后,计算同形验证参数C0 *=CIDi xmodp,同形比较参数Mi *=h(CIDi||C0 *||Ns),将同形比较参数和接收到的比较参数Mi对比,若不等,则中止此次对话,若相等,则认为用户合法,服务器产生随机数d,并计算隐藏随机数参数Nu=gdmodp,和验证参数C1=h(Ns d||Nu||C0 *),将第二验证数据{C1,Nu}发给智能卡,智能卡接收到信息后,计算同形验证参数C1 *=h(Nu k||Nu||C0),同接收到的C1对比,若不等,则中止此次会话,若相等,则认为服务器合法。然后智能卡计算比较参数将其发送给服务器,然后产生会话密钥SK=h(Ns d+2),服务器计算同形比较参数h(Ns d+1),将这两者对比,若不等,中止会话,若相等,则服务器再次认证用户身份合法,生成会话密钥SK=h(Nu k+2)。其中,第三验证数据是
综上所述,本发明所提供的基于智能卡的远程用户密码双重验证方法,由于采用了更改智能卡存储信息的方式,不仅实现了用户匿名,而且能够抵抗智能卡丢失攻击,同时由于增加了本地验证步骤,克服了拒绝服务器攻击和用户假冒攻击。除此之外,还由于采用对密码双重验证的方式,有效抵御了重放攻击。
以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;如果不脱离本发明的精神和范围,对本发明进行修改或者等同替换,均应涵盖在本发明权利要求的保护范围当中。
Claims (1)
1.一种基于智能卡的远程用户密码双重验证方法,其特征在于,包括注册步骤、登录步骤和认证步骤,其中,
注册步骤进一步包括,智能卡和服务器将用户所提供的注册信息变换后存入智能卡;
登录步骤进一步包括,所述智能卡根据用户提供的身份标识和口令进行本地合法性验证,如果智能卡验证用户合法,所述智能卡生成第一验证数据,并将第一验证数据发送给服务器;
认证步骤进一步包括,所述服务器根据所接收到的第一验证数据对用户身份进行合法性验证,如果所述服务器验证用户身份合法,则生成用于验证服务器身份的第二验证数据,并将第二验证数据发送给智能卡,
所述智能卡根据接收到的第二验证数据对服务器身份进行合法性验证,如果智能卡验证服务器身份合法,则生成第三验证数据,并将第三验证数据发送给服务器,同时生成会话密钥,
所述服务器根据接收到的第三验证数据对用户身份进行第二次验证,如果服务器验证用户身份合法,则生成会话密钥;
注册步骤进一步包括,
智能卡根据IDi、PWi和随机数N,计算密码保护参数RPWi=h(PWi||N),然后将IDi和RPWi通过安全信道发送给服务器S,服务器使用自己的密钥x计算身份保护参数N0=h(IDi)xmodp,验证参数Ti=h(IDi||RPWi),比较参数Hi=h(Ti),身份唯一参数然后将{Ni,h(.),Hi}和随机数N存入智能卡,其中,IDi为第i个用户Ui的用户的身份标识、PWi为用户Ui的口令、N为用户Ui输入的随机数;
登录步骤进一步包括,
智能卡根据用户Ui所输入的IDi *和PWi *,计算同形验证参数Ti *=h(ID* i||RPWi *)和同形比较参数Hi *=h(Ti *),并比较Hi *与Hi是否相等,若不等,则中止此次登录,若相等,则智能卡产生随机数b,k,计算随机数保护参数Ns=gkmod p,动态身份CIDi=h(IDi)bmod p,验证参数比较参数Mi=(CIDi||C0||Ns),然后将第一验证参数{CIDi,Ns,Mi}发给服务器;
认证步骤进一步包括,
服务器根据所接收到的第一验证数据,计算同形验证参数同形比较参数Mi *=h(CIDi||C0 *||Ns),并比较同形比较参数和比较参数Mi是否相等,若不等,则中止此次会话,若相等,则认为用户合法,服务器产生随机数d,并计算隐藏随机数参数Nu=gdmodp,p是大素数,g为在有限域GF(p)的本原元,以及验证参数C1=h(Ns d||Nu||C0 *),将第二验证数据{C1,Nu}发送给智能卡;
智能卡接收到第二验证数据后,计算同形验证参数C1 *=h(Nu k||Nu||C0),并与所接收到的C1进行比较,若不等,则中止此次会话,若相等,则认为服务器合法,然后计算比较参数并将其发送给服务器,服务器计算同形比较参数h(Ns d+1),并对这两者进行比较,若不等,则中止会话,若相等,则服务器再次认证用户合法,其中,第三验证数据是
服务器根据SK=h(Nu k+2)生成会话密钥,智能卡根据SK=h(Ns d+2)生成会话密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310275718.7A CN103338202B (zh) | 2013-07-02 | 2013-07-02 | 一种基于智能卡的远程用户密码双重验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310275718.7A CN103338202B (zh) | 2013-07-02 | 2013-07-02 | 一种基于智能卡的远程用户密码双重验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103338202A CN103338202A (zh) | 2013-10-02 |
CN103338202B true CN103338202B (zh) | 2016-10-26 |
Family
ID=49246299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310275718.7A Active CN103338202B (zh) | 2013-07-02 | 2013-07-02 | 一种基于智能卡的远程用户密码双重验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103338202B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2874421A1 (en) * | 2013-11-13 | 2015-05-20 | Gemalto SA | System and method for securing communications between a card reader device and a remote server |
CN104283886B (zh) * | 2014-10-14 | 2017-12-29 | 中国科学院信息工程研究所 | 一种基于智能终端本地认证的web安全访问的实现方法 |
CN104821941B (zh) * | 2015-04-21 | 2017-12-05 | 南京邮电大学 | 智能卡口令认证及修改密码方法 |
US10433168B2 (en) * | 2015-12-22 | 2019-10-01 | Quanta Computer Inc. | Method and system for combination wireless and smartcard authorization |
CN108092994B (zh) * | 2018-01-12 | 2021-02-05 | 哈尔滨工业大学深圳研究生院 | 用户认证方法 |
CN109522689B (zh) * | 2018-10-29 | 2023-05-30 | 北京九州云腾科技有限公司 | 移动办公环境下的多因子强身份认证方法 |
CN113421085B (zh) * | 2021-06-22 | 2022-06-21 | 深圳天盘实业有限公司 | 一种智能卡动态密码认证方法及系统 |
CN113872763B (zh) * | 2021-09-07 | 2024-10-01 | 杭州师范大学 | 一种基于无线体域网络的隐私保护认证方法 |
CN114826570A (zh) * | 2022-03-30 | 2022-07-29 | 微位(深圳)网络科技有限公司 | 证书获取方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030859A (zh) * | 2007-02-06 | 2007-09-05 | 上海交通大学 | 一种分布式网络的认证方法和系统 |
CN102377573A (zh) * | 2011-12-08 | 2012-03-14 | 华东师范大学 | 一种口令可安全更新的双因子身份认证方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2840479B1 (fr) * | 2002-05-31 | 2004-09-10 | Schlumberger Systems & Service | Procede de securisation d'une transaction en ligne |
CN1889432B (zh) * | 2006-07-13 | 2010-09-22 | 上海交通大学 | 基于智能卡的口令远程认证方法、智能卡、服务器和系统 |
-
2013
- 2013-07-02 CN CN201310275718.7A patent/CN103338202B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030859A (zh) * | 2007-02-06 | 2007-09-05 | 上海交通大学 | 一种分布式网络的认证方法和系统 |
CN102377573A (zh) * | 2011-12-08 | 2012-03-14 | 华东师范大学 | 一种口令可安全更新的双因子身份认证方法 |
Non-Patent Citations (4)
Title |
---|
可信的智能卡口令双向认证方案;杨力等;《电子科技大学学报》;20110131;第40卷(第1期);第128-133页 * |
增强的基于智能卡的远程用户认证协议;唐宏斌;《计算机工程与应用》;20121231;第61-65页 * |
改进的具有PFS特性的口令认证密钥协商方案;汪定等;《山东大学学报》;20120930;第47卷(第9期);第19-25页 * |
项金萍.基于口令的两方认证和密钥交换协议的研究.《中国优秀硕士论文》.2011, * |
Also Published As
Publication number | Publication date |
---|---|
CN103338202A (zh) | 2013-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103338202B (zh) | 一种基于智能卡的远程用户密码双重验证方法 | |
US8627424B1 (en) | Device bound OTP generation | |
Karuppiah et al. | A secure remote user mutual authentication scheme using smart cards | |
CN102026195B (zh) | 基于一次性口令的移动终端身份认证方法和系统 | |
CN101425897B (zh) | 一种用户认证方法、系统、服务器和用户节点 | |
CN105141425B (zh) | 一种基于混沌映射的可保护身份的双向认证方法 | |
CN103346888B (zh) | 一种基于密码、智能卡和生物特征的远程身份认证方法 | |
CN103338201B (zh) | 一种多服务器环境下注册中心参与的远程身份认证方法 | |
CN104821941B (zh) | 智能卡口令认证及修改密码方法 | |
CN107294725A (zh) | 一种多服务器环境下的三因素认证方法 | |
CN105119721B (zh) | 一种基于智能卡的三因素远程身份认证方法 | |
CN104065487A (zh) | 一种基于数字指纹随机密值ibc身份认证方法 | |
CN103346887A (zh) | 一种基于智能卡多服务器环境下的低复杂度身份认证方法 | |
CN103347018A (zh) | 一种基于智能卡的多服务环境下远程身份认证方法 | |
CN106789032A (zh) | 服务器与移动设备间秘密共享的单一口令三方认证方法 | |
CN103312499B (zh) | 一种身份认证方法及系统 | |
CN103312672A (zh) | 身份认证方法及系统 | |
Kim et al. | Further improved remote user authentication scheme | |
JP2015516616A (ja) | 認証方法、装置及びシステム | |
Babu et al. | Two Factor Authentication using Hardware and Biometrics Factors for IoT Devices and Users | |
Xie | Dynamic id-based password authentication protocol with strong security against smart card lost attacks | |
CN103347021B (zh) | 一种基于人可记忆密码的多服务器安全认证方法 | |
Tan | An Authentication and Key Agreement Scheme with Key Confirmation and Privacy-preservation for Multi-server Environments. | |
Khan et al. | Further cryptanalysis of ‘a remote authentication scheme using mobile device’ | |
Cao et al. | User anonymous authentication key exchange protocol based on biometrics and password |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |