CN116074019A - 移动客户端和服务器之间的身份认证方法、系统及介质 - Google Patents
移动客户端和服务器之间的身份认证方法、系统及介质 Download PDFInfo
- Publication number
- CN116074019A CN116074019A CN202310064860.0A CN202310064860A CN116074019A CN 116074019 A CN116074019 A CN 116074019A CN 202310064860 A CN202310064860 A CN 202310064860A CN 116074019 A CN116074019 A CN 116074019A
- Authority
- CN
- China
- Prior art keywords
- server
- mobile client
- authentication
- elliptic curve
- key
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本发明公开了一种移动客户端和服务器之间的身份认证方法、系统及介质,该方法包括:步骤S10,系统建立:基于椭圆曲线加密体制,服务器S建立身份认证过程中所需的相关参数;步骤S20,移动客户端注册:移动客户端通过安全信道向所述服务器S提交注册请求信息;步骤S30,认证与密钥协商:所述移动客户端与所述服务器S通过二轮消息实现相互认证,并生成共享的会话密钥。本发明实现了不需要口令和智能卡,基于椭圆曲线离散对数难题和迪菲‑赫尔曼难题保证双方身份认证和生成会话密钥的安全性,具有运算、通信、存储消耗低,以及提供前向安全性和克服内部人攻击的优点,并且提高了运算效率。
Description
技术领域
本发明属于信息安全技术领域,尤其涉及一种基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法、系统及介质。
背景技术
随着计算机的技术、电子技术的迅速发展,无线网络技术在政治、经济、文化方面发挥着越来越重要的作用。用户使用手机等移动客户端可以随时随地地进行电子商务和访问网络信息资源等网络服务。然而,人们对无线网络技术日益依赖的同时也使得其安全问题随之突出,特别是如何在开放的无线网络环境中保证用户身份真实性问题,因为无线网络所在的无线信道的开放性使得通信主体发送的消息更容易被攻击者窃听、拦截和篡改。伪基站等大量安全事件表明无线网络仍然存在攻击者可以对用户进行监听、追踪和假冒的安全隐患,这使得系统的安全性和用户的隐私、财产受到严重威胁。
国内外学者针对上述威胁提出了基于数字证书、RSA算法或双线性映射的身份认证协议对通信主体进行身份认证。然而,运用数字证书的认证协议存在扩展性差、存在中间人攻击和假冒攻击的情况,运用RSA算法的认证协议存在运算开销大、防御能力不强的缺陷,运用双线性映射的认证协议存在运算开销大和替换公钥攻击问题,因而这些认证协议都不适合于运算能力和能量均有限的移动客户端。虽然一些基于纯哈希函数的认证协议的运算开销小,但攻击者获取系统密钥后,根据窃听到的认证消息,往往可以计算出通信实体每次认证时所生成的共享的会话密钥,即不能保证前向安全性问题。另外,这些协议还存在容易被忽略的内部人攻击问题。因此,如何在保证安全性的前提下设计高效的认证协议是移动客户端与服务器认证协议研究所面临的重要挑战。
由于椭圆曲线加密算法采用长度为160比特的密钥就可以达到传统的RSA加密算法中长度为1024比特的密钥的加密强度,而且运算速度更快。同时,椭圆曲线有限域上的离散对数困难问题和迪菲-赫尔曼难题保证了攻击者无法破解从公共信道上截获的认证消息,因此运用椭圆曲线加密算法设计的轻量级认证协议能在保证安全性的同时,还可以降低移动客户端在运算、传输和存储的开销。
专利文献CN 104702559 A公开一种基于椭圆曲线加密算法的双因子(口令,智能卡)认证技术方法,用于提高服务器系统的安全性。但该方法存在以下缺陷:(1)安全性依赖于服务器私钥dS的秘密性,如果服务器的私钥被泄露,那么攻击者不但可以伪造登录消息冒充用户登录服务器,而且还可以假冒服务器对用户登录的消息作出响应,因此该方法存在内部特权人攻击的隐患;(2)用户直接使用实名进行登录,容易被攻击者跟踪而导致隐私被泄露;(3)用户和服务器之间虽然实现双向认证,但没有生成会话密钥,无法保护后续通信的数据的安全。
如前所述,尽管目前研究人员已提出了一些移动客户端和远程服务器之间的认证协议,但它们还存在一定的缺陷,主要如下:运算、通信、存储消耗高,以及不能提供前向安全问题和不能防御内部人攻击问题。
发明内容
本发明的目的在于针对无线网络的通信信道的开放性导致通信消息易被窃听、拦截和篡改的特点,以及移动客户端(即手机等移动设备)资源和能量均有限,且目前的移动客户端和远程服务器间的认证协议存在安全隐患和资源开销大的缺点,提出一种基于椭圆曲线加密算法的移动客户端和服务器之间的轻量化身份认证方法、系统及介质。
为实现上述目的,本发明提出一种移动客户端和服务器之间的身份认证方法,所述方法包括以下步骤:
步骤S10,系统建立:基于椭圆曲线加密体制,服务器S建立身份认证过程中所需的相关参数;
步骤S20,移动客户端注册:移动客户端通过安全信道向所述服务器S提交注册请求信息;
步骤S30,认证与密钥协商:所述移动客户端与所述服务器S通过二轮消息实现相互认证,并生成共享的会话密钥。
本发明的进一步技术方案是,所述步骤S10包括:
所述服务器S选择安全参数n以及两个n比特长度的质数p和q,定义有限域Fp,以及基于Fp的椭圆曲线Eq:y2=(x3+ax+b)mod p,设置椭圆曲线加法群G={(x,y):x,y∈Fp,(x,y)∈Eq(a,b)},P为群G的生成元,其中q为椭圆曲线的阶,a,b∈Fp并且满足4a3+27b2≠0,mod为求余数运算;
所述服务器S设置私钥s,并计算其对应公钥Ppub=s·P,·表示椭圆曲线上点的标量乘法;另外,所述服务器S还选择5个单向哈希函数Hi(),其中,输入数据的长度是任意的,输出数据的长度是固定的n,其中1≤i≤5;
所述服务器S发布系统参数{Fp,Eq,p,P,Ppub,G,Hi(),1≤i≤5}。
本发明的进一步技术方案是,所述步骤S20中,所述移动客户端向所述服务器S提交注册请求信息,所述服务器S用其私钥s对所述注册请求信息签名后将结果一部分发送给所述移动客户端,另一部分信息存入数据库。
本发明的进一步技术方案是,所述步骤S20包括:
步骤S201:所述移动客户端选择一个随机数ri,计算lm=H1(IDm||ri),然后通过安全信道向所述服务器S发送注册请求信息{IDm,lm},其中IDm是所述移动客户端的身份标识,||表示连接符;
步骤S202:所述服务器S收到所述注册请求信息后,选择一个随机数ws,计算Rm=ws·P,hm=H2(IDm||Rm||lm),fm=ws+hm·s,把Rm存入数据库后,通过安全信道向所述移动客户端发送消息{Rm,fm};
步骤S203:所述移动客户端收到消息{Rm,fm}后,判断等式fm·P=Rm+H2(IDm||Rm||lm)·Ppub是否成立,如果成立,则秘密保存{Rm,fm,lm}用作后续认证,否则终止本次会话。
本发明的进一步技术方案是,所述步骤S30中,所述移动客户端需要访问所述服务器S上的资源时,就需要和所述服务器S进行双向认证,并生成会话密钥。
本发明的进一步技术方案是,所述步骤S30包括:
步骤S301:所述移动客户端选择随机数rm,计算Xm=rm·P,Vm=rm·Ppub,PIDm=IDm⊕H3(Xm||Tm1),生成时间戳Tm1,最后向所述服务器S发送登录请求消息M1={PIDm,Vm,Tm1};
步骤S302:所述服务器S收到所述登录请求消息M1后,先检查时间戳Tm1是否有效,如果有效,所述服务器S计算Xm'=s-1·Vm,IDm=PIDm⊕H3(Xm'||Tm1),并检查条件H2(IDm||Rm||lm)=hm是否成立;如果成立,所述服务器S确认所述移动客户端的身份合法性,否则拒绝所述移动客服端的登录请求,其中s-1表示取s的逆元;
步骤S303:所述服务器S选择随机数rs,计算Rs=rs·P和会话密钥KS-M=H4(rsXm'||lm),然后生成时间戳Ts1,并计算Aut=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),最后向所述移动客户端发着送响应消息M2={Aut,Rs,Ts1};
步骤S304:所述移动客户端接收到所述响应消息M2后,先检查时间戳Ts1是否有效,如果有效,所述移动客户端计算Aut'=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),并检查条件Aut'=Aut是否成立,如果成立,则生成与所述服务器S之间的会话密钥KM-S=H4(rmRs||lm),否则终止会话。
为实现上述目的,本发明还提出一种移动客户端和服务器之间的身份认证系统,所述系统包括存储器、处理器以及存储在所述处理器上的移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被所述处理器运行时执行如上所述的方法的步骤。
为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被处理器运行时执行如上所述的方法的步骤。
本发明基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法、系统及介质的有益效果是:本发明通过上述技术方案,实现了不需要口令和智能卡,基于椭圆曲线离散对数难题和迪菲-赫尔曼难题保证双方身份认证和生成会话密钥的安全性,具有运算、通信、存储消耗低,以及提供前向安全性和克服内部人攻击的优点,并且提高了运算效率。
附图说明
图1是本发明移动客户端和服务器之间的身份认证方法中移动客户端和服务器之间的网络结构示意图;
图2是本发明移动客户端和服务器之间的身份认证方法较佳实施例的流程示意图;
图3是步骤S10的细化流程示意图;
图4是步骤S20的细化流程示意图;
图5是步骤S30的细化流程示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
移动客户端访问存放重要资源的远程服务器时需要相互认证,并协商一个会话密钥以保护后续通信,本发明针对无线网络的通信信道的开放性导致通信消息易被窃听、拦截和篡改的特点,以及移动客户端(即手机等移动设备)资源和能量均有限,且目前的移动客户端和远程服务器间的认证协议存在安全隐患和资源开销大的缺点,提出一种基于椭圆曲线加密算法的移动客户端和服务器之间的轻量级身份认证协议。该协议不需要口令和智能卡,基于椭圆曲线离散对数难题和迪菲-赫尔曼难题保证双方身份认证和生成会话密钥的安全性,具有运算、通信、存储消耗低,以及提供前向安全性和克服内部人攻击的优点,并且提高了运算效率。
具体地,本发明提出一种基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法,所述移动客户端和所述服务器之间的网络结构示意图如图1所示。
如图2所示,本发明移动客户端和服务器之间的身份认证方法较佳实施例包括以下步骤:
步骤S10,系统建立:基于椭圆曲线加密体制,服务器S建立身份认证过程中所需的相关参数。
步骤S20,移动客户端注册:移动客户端MT通过安全信道向所述服务器S提交注册请求信息。
步骤S30,认证与密钥协商:所述移动客户端MT与所述服务器S通过二轮消息实现相互认证,并生成共享的会话密钥。
具体地,如图3所示,所述步骤S10系统建立的步骤具体包括:
步骤S101,所述服务器S选择安全参数n以及两个n比特长度的质数p和q,定义有限域Fp,以及基于Fp的椭圆曲线Eq:y2=(x3+ax+b)mod p,设置椭圆曲线加法群G={(x,y):x,y∈Fp,(x,y)∈Eq(a,b)},P为群G的生成元,其中q为椭圆曲线的阶,a,b∈Fp并且满足4a3+27b2≠0,mod为求余数运算。
步骤S102,所述服务器S设置私钥s,并计算其对应公钥Ppub=s·P,·表示椭圆曲线上点的标量乘法;另外,所述服务器S还选择5个单向哈希函数Hi(),其中,输入数据的长度是任意的,输出数据的长度是固定的n,其中1≤i≤5。
步骤S103,所述服务器S发布系统参数{Fp,Eq,p,P,Ppub,G,Hi(),1≤i≤5}。
进一步地,本实施例中,所述步骤S20,在所述移动客户端MT注册阶段中,所述移动客户端MT向所述服务器S提交注册请求信息,所述服务器S用其私钥s对所述注册请求信息签名后将结果一部分发送给所述移动客户端,另一部分信息存入数据库。
具体地,如图4所示,所述步骤S20包括:
步骤S201:所述移动客户端MT选择一个随机数ri,计算lm=H1(IDm||ri),然后通过安全信道向所述服务器S发送注册请求信息{IDm,lm},其中IDm是所述移动客户端的身份标识,||表示连接符;
步骤S202:所述服务器S收到所述注册请求信息后,选择一个随机数ws,计算Rm=ws·P,hm=H2(IDm||Rm||lm),fm=ws+hm·s,把Rm存入数据库后,通过安全信道向所述移动客户端发送消息{Rm,fm};
步骤S203:所述移动客户端MT收到消息{Rm,fm}后,判断等式fm·P=Rm+H2(IDm||Rm||lm)·Ppub是否成立,如果成立,则秘密保存{Rm,fm,lm}用作后续认证,否则终止本次会话。
进一步地,所述步骤S30中,所述移动客户端MT需要访问所述服务器S上的资源时,就需要和所述服务器S进行双向认证,并生成会话密钥。
具体地,如图5所示,所述步骤S30包括:
步骤S301:所述移动客户端MT选择随机数rm,计算Xm=rm·P,Vm=rm·Ppub,PIDm=IDm⊕H3(Xm||Tm1),生成时间戳Tm1,最后向所述服务器S发送登录请求消息M1={PIDm,Vm,Tm1}。
步骤S302:所述服务器S收到所述登录请求消息M1后,先检查时间戳Tm1是否有效,如果有效,所述服务器S计算Xm'=s-1·Vm,IDm=PIDm⊕H3(Xm'||Tm1),并检查条件H2(IDm||Rm||lm)=hm是否成立;如果成立,所述服务器S确认所述移动客户端MT的身份合法性,否则拒绝所述移动客服端MT的登录请求,其中s-1表示取s的逆元。
步骤S303:所述服务器S选择随机数rs,计算Rs=rs·P和会话密钥KS-M=H4(rsXm'||lm),然后生成时间戳Ts1,并计算Aut=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),最后向所述移动客户端MT发着送响应消息M2={Aut,Rs,Ts1}。
步骤S304:所述移动客户端MT接收到所述响应消息M2后,先检查时间戳Ts1是否有效,如果有效,所述移动客户端MT计算Aut'=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),并检查条件Aut'=Aut是否成立,如果成立,则生成与所述服务器S之间的会话密钥KM-S=H4(rmRs||lm),否则终止会话。
本发明基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法的关键点在于:
(1)本发明的认证协议中的移动客户端向服务器的注册以及移动客户端和服务器之间的相互认证并不需要口令和智能卡,避免用户忘记口令或智能卡丢失导致无法登录的缺陷;
(2)在本发明方案的移动客户端注册阶段,用户需要对来自服务器的注册响应消息进行验证,验证通过后才进行后续处理,即使用椭圆曲线的生成元P和服务器的公钥Ppub对接收到的响应消息以fm·P=Rm+H2(IDm||Rm||lm)·Ppub的形式进行验证,以确保收到的消息确实来自服务器,防止攻击者假冒服务器的消息。而普通方案对服务器发来的注册响应信息不加验证地接收;
(3)在本发明方案的认证与密钥协商阶段,移动客户端和服务器相互认证后根据双方提供的随机数以及秘密参数生成的会话密钥,因此能提供完美的前向安全性,即攻击者获取系统的私钥也无法计算出会话密钥。
本发明基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法的优点在于:
在本发明的认证与密钥协商阶段中,移动客户端和服务器端执行的密码学操作所耗费时间分别为0.392秒和3.614毫秒,客户端和服务器之间交互消息的通信量为2304比特。与同类方案在性能上进行比较,本方案所耗费的运算时间和通信量更少。
在安全方面,相关方案很少能同时提供前向安全性和防止内部人攻击。前向安全性是指即使攻击者获取了系统私钥,也无法根据公共信道上窃听到的消息去计算出移动客户端与服务器之间的每次认证时所生成的会话密钥。尽管攻击者可以了解本发明的认证算法的流程和会话密钥的计算方法KS-M=KM-S=H4(rsXm'||lm)=H4(rsrmP||lm),由于椭圆曲线散对数困难问题和椭圆曲线迪菲-赫尔曼难题的原因,攻击者无法根据从公共信道上窃听到的Vm和Rs去计算出rm和rs,也就无法计算rs·Xm或rm·Rs,因而外部攻击者无法破解移动客户端和服务器之间的会话密钥。
另外,在本发明的移动客户端注册阶段中,移动客户端提交IDm和lm=h(IDm||ri)作为注册请求,服务器生成随机数ws并计算Rm=ws·P,hm=H2(IDm||Rm||lm),fm=ws+hm·s,并把{IDm,lm,Rm,hm,fm}安全地保存在数据库中,攻击者无法同时获取这些信息。如果攻击者打算通过从公共信道窃听到的PIDm去计算出用户身份标识IDm,但是由于攻击者并不了解Xm,所以他无法了解用户的身份。另外,尽管攻击者通过某些途径获取了lm,但由于用户选择的随机数ri足够大,所以攻击者仍然无法通过lm=H1(IDm||ri)在多项式时间内猜测出IDm。因此本发明可以防范内部人员攻击。
本发明的认证与密钥协商阶段中的移动客户端和服务器端的执行时间,以及客户端和服务器之间的通信量来自公开发表的学术文献[1]、[2]。其中移动客户端和服务器端执行的密码学操作分别为3TPM+2TH,3TPM+TIN+4TH,其中TPM是指一个椭圆曲线上的点的标量乘法运算的运行时间,TH是指一个单向哈希函数的运行时间,TIN是指一个160位椭圆曲线群取逆元的运行时间。根据文献[1]中表3的数据,TPM在服务器和客户端中运行时间分别为1.17毫秒和0.13秒,TH在服务器和客户端中运行时间分别为0.001毫秒和0.001秒,TIN在服务器端中运行时间为1毫秒,所以本发明中的移动客户端和服务器端在认证与密钥协商阶段的执行时间分别为0.392秒和3.614毫秒。
另外,根据学术文献[1]、[2],设置其中li、lp、lh、lt分别为移动客户端标识、椭圆曲线上的点、单向哈希函数、时间戳的长度,具体分别为32比特、1024比特、160比特、32比特。本发明的认证与密钥协商阶段中的通信量为li+2lp+lh+2lt,根据上述设置,本发明的认证与密钥协商阶段中的具体通信量为2304比特。
本发明涉及到的参考文献如下:
[1]Scott M,Costigan N,Abdulwahab W.Implementing cryptographicpairings on smartcards[C].In:International Conference on CryptographicHardware and Embedded Systems,2006,pp:134–147。
[2]Vanga,Odelu,Ashok,et al.Provably secure authenticated keyagreement scheme for distributed mobile cloud computing services[J].FutureGeneration Computer Systems,2017no:68,pp:74–88。
本发明基于椭圆曲线加密算法的移动客户端和服务器之间的身份认证方法的有益效果是:本发明通过上述技术方案,实现了不需要口令和智能卡,基于椭圆曲线离散对数难题和迪菲-赫尔曼难题保证双方身份认证和生成会话密钥的安全性,具有运算、通信、存储消耗低,以及提供前向安全性和克服内部人攻击的优点,并且提高了运算效率。
为实现上述目的,本发明还提出一种移动客户端和服务器之间的身份认证系统,其特征在于,所述系统包括存储器、处理器以及存储在所述处理器上的移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被所述处理器运行时执行如上实施例所述的方法的步骤,这里不再赘述。
为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被处理器运行时执行如上实施例所述的方法的步骤,这里不再赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种移动客户端和服务器之间的身份认证方法,其特征在于,所述方法包括以下步骤:
步骤S10,系统建立:基于椭圆曲线加密体制,服务器S建立身份认证过程中所需的相关参数;
步骤S20,移动客户端注册:移动客户端通过安全信道向所述服务器S提交注册请求信息;
步骤S30,认证与密钥协商:所述移动客户端与所述服务器S通过二轮消息实现相互认证,并生成共享的会话密钥。
2.根据权利要求1所述的移动客户端和服务器之间的身份认证方法,其特征在于,所述步骤S10包括:
所述服务器S选择安全参数n以及两个n比特长度的质数p和q,定义有限域Fp,以及基于Fp的椭圆曲线Eq:y2=(x3+ax+b)mod p,设置椭圆曲线加法群G={(x,y):x,y∈Fp,(x,y)∈Eq(a,b)},P为群G的生成元,其中q为椭圆曲线的阶,a,b∈Fp并且满足4a3+27b2≠0,mod为求余数运算;
所述服务器S设置私钥s,并计算其对应公钥Ppub=s·P,·表示椭圆曲线上点的标量乘法;另外,所述服务器S还选择5个单向哈希函数Hi(),其中,输入数据的长度是任意的,输出数据的长度是固定的n,其中1≤i≤5;
所述服务器S发布系统参数{Fp,Eq,p,P,Ppub,G,Hi(),1≤i≤5}。
3.根据权利要求1所述的移动客户端和服务器之间的身份认证方法,其特征在于,所述步骤S20中,所述移动客户端向所述服务器S提交注册请求信息,所述服务器S用其私钥s对所述注册请求信息签名后将结果一部分发送给所述移动客户端,另一部分信息存入数据库。
4.根据权利要求3所述的移动客户端和服务器之间的身份认证方法,其特征在于,所述步骤S20包括:
步骤S201:所述移动客户端选择一个随机数ri,计算lm=H1(IDm||ri),然后通过安全信道向所述服务器S发送注册请求信息{IDm,lm},其中IDm是所述移动客户端的身份标识,||表示连接符;
步骤S202:所述服务器S收到所述注册请求信息后,选择一个随机数ws,计算Rm=ws·P,hm=H2(IDm||Rm||lm),fm=ws+hm·s,把Rm存入数据库后,通过安全信道向所述移动客户端发送消息{Rm,fm};
步骤S203:所述移动客户端收到消息{Rm,fm}后,判断等式fm·P=Rm+H2(IDm||Rm||lm)·Ppub是否成立,如果成立,则秘密保存{Rm,fm,lm}用作后续认证,否则终止本次会话。
5.根据权利要求4所述的移动客户端和服务器之间的身份认证方法,其特征在于,所述步骤S30中,所述移动客户端需要访问所述服务器S上的资源时,就需要和所述服务器S进行双向认证,并生成会话密钥。
6.根据权利要求5所述的移动客户端和服务器之间的身份认证方法,其特征在于,所述步骤S30包括:
步骤S301:所述移动客户端选择随机数rm,计算Xm=rm·P,Vm=rm·Ppub,PIDm=IDm⊕H3(Xm||Tm1),生成时间戳Tm1,最后向所述服务器S发送登录请求消息M1={PIDm,Vm,Tm1};
步骤S302:所述服务器S收到所述登录请求消息M1后,先检查时间戳Tm1是否有效,如果有效,所述服务器S计算Xm'=s-1·Vm,IDm=PIDm⊕H3(Xm'||Tm1),并检查条件H2(IDm||Rm||lm)=hm是否成立;如果成立,所述服务器S确认所述移动客户端的身份合法性,否则拒绝所述移动客服端的登录请求,其中s-1表示取s的逆元;
步骤S303:所述服务器S选择随机数rs,计算Rs=rs·P和会话密钥KS-M=H4(rsXm'||lm),然后生成时间戳Ts1,并计算Aut=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),最后向所述移动客户端发着送响应消息M2={Aut,Rs,Ts1};
步骤S304:所述移动客户端接收到所述响应消息M2后,先检查时间戳Ts1是否有效,如果有效,所述移动客户端计算Aut'=H5(IDm||Tm1||Ts1||Xm'||Rs||lm),并检查条件Aut'=Aut是否成立,如果成立,则生成与所述服务器S之间的会话密钥KM-S=H4(rmRs||lm),否则终止会话。
7.一种移动客户端和服务器之间的身份认证系统,其特征在于,所述系统包括存储器、处理器以及存储在所述处理器上的移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被所述处理器运行时执行如权利要求1至6任意一项所述的方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有移动客户端和服务器之间的身份认证程序,所述移动客户端和服务器之间的身份认证程序被处理器运行时执行如权利要求1至6任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310064860.0A CN116074019A (zh) | 2023-01-12 | 2023-01-12 | 移动客户端和服务器之间的身份认证方法、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310064860.0A CN116074019A (zh) | 2023-01-12 | 2023-01-12 | 移动客户端和服务器之间的身份认证方法、系统及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074019A true CN116074019A (zh) | 2023-05-05 |
Family
ID=86179791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310064860.0A Pending CN116074019A (zh) | 2023-01-12 | 2023-01-12 | 移动客户端和服务器之间的身份认证方法、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074019A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116614809A (zh) * | 2023-05-08 | 2023-08-18 | 肇庆学院 | 基于物理不可克隆函数的无线传感器网络认证协议方法 |
-
2023
- 2023-01-12 CN CN202310064860.0A patent/CN116074019A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116614809A (zh) * | 2023-05-08 | 2023-08-18 | 肇庆学院 | 基于物理不可克隆函数的无线传感器网络认证协议方法 |
CN116614809B (zh) * | 2023-05-08 | 2024-01-12 | 肇庆学院 | 基于物理不可克隆函数的无线传感器网络认证方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Malani et al. | Certificate-based anonymous device access control scheme for IoT environment | |
Choudhury et al. | A strong user authentication framework for cloud computing | |
Yu et al. | IoV-SMAP: Secure and efficient message authentication protocol for IoV in smart city environment | |
Liao et al. | A novel multi-server remote user authentication scheme using self-certified public keys for mobile clients | |
Nikravan et al. | A multi-factor user authentication and key agreement protocol based on bilinear pairing for the internet of things | |
CN101902476B (zh) | 移动p2p用户身份认证方法 | |
Cao et al. | Identity-based anonymous remote authentication for value-added services in mobile networks | |
CN101123501A (zh) | 一种wapi认证和密钥协商方法和系统 | |
Huang | A simple three‐party password‐based key exchange protocol | |
Meng et al. | Low-latency authentication against satellite compromising for space information network | |
Mishra et al. | A pairing-free identity based authentication framework for cloud computing | |
Imine et al. | MASFOG: An efficient mutual authentication scheme for fog computing architecture | |
Chen et al. | Security analysis and improvement of user authentication framework for cloud computing | |
CN113572765B (zh) | 一种面向资源受限终端的轻量级身份认证密钥协商方法 | |
Yang et al. | Provably secure client-server key management scheme in 5g networks | |
Mahmood et al. | PUF enable lightweight key-exchange and mutual authentication protocol for multi-server based D2D communication | |
Luo et al. | Cross-domain certificateless authenticated group key agreement protocol for 5G network slicings | |
Li et al. | A lightweight roaming authentication protocol for anonymous wireless communication | |
Sadhukhan et al. | Cryptanalysis of an elliptic curve cryptography based lightweight authentication scheme for smart grid communication | |
CN113055394A (zh) | 一种适用于v2g网络的多服务双因子认证方法及系统 | |
Lu et al. | Providing impersonation resistance for biometric-based authentication scheme in mobile cloud computing service | |
Shafiq et al. | An identity-based anonymous three-party authenticated protocol for iot infrastructure | |
Castiglione et al. | An efficient and transparent one-time authentication protocol with non-interactive key scheduling and update | |
Bicakci et al. | Server assisted signatures revisited | |
CN116074019A (zh) | 移动客户端和服务器之间的身份认证方法、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |