二因子验证式密钥交换方法和使用它的验证方法以及存储包括它的程序的记录媒体的制作方法

文档序号:7607710阅读:171来源:国知局
专利名称:二因子验证式密钥交换方法和使用它的验证方法以及存储包括它的程序的记录媒体的制作方法
技术领域
本发明涉及一种AKE(验证和密钥建立)协议。特别的是,本发明涉及业务中的TAKE(二因子验证式密钥交换)方法,比如因特网,无线LAN,和公众访问无线LAN,一种用于验证实体和使用TAKE方法建立密钥的安全方法,以及存储包括TAKE方法的程序的记录媒体。
背景技术
常规的验证和密钥建立方法包括使用认证的TLS(传送层安全性)方法,使用密码的SRP(安全远程密码)方法和EAP(可扩展的验证协议)-MD5方法,和使用认证和密码的PEAP(保护的EAP)方法和EAP-TTLS(隧道的TLS),这些方法分别具有优缺点。就是说,TLS方法需要复杂而花费大量成本的PKI(公开密钥体系结构),并且认证管理系统,SRP方法需要从用户终端大量的取幂并无力抵抗2-对-1推测攻击。此外,PEAP和EAP-TTLS方法无力抵抗MitM(人在中间)攻击并在交换消息上花费大量的时间,而且EAP-MD5具有的缺点是,不提供共有的验证和会话密钥。
特别的是,不容易发现802.1xEAP验证方法,该方法在(公众访问)无线LAN上使用PDA(个人数字助理)的情况下是安全和有效的,验证因为当执行诸如取幂和逆运算的复杂的操作时,PDA需要很长的时间和耗费很多的功率。
通常的验证因子包括(1)用户存储的因子(例如密码)和(2)用户拥有的因子(例如,记号或移动设备)。
因为下列问题的缘故,使用项目(1)的密码的单一因子的验证方法是不安全。首先,当用户输入密码时,在用户后面的一个人可以骗取密码,并且通过击键监视可以暴露密码。第二,通过社会工程(比如,欺骗手段或威胁),密码会暴露给攻击者。第三,密码无力抵抗字典攻击,因为就信息量而言它具有低的平均信息量。第四,因为用户的坏习惯会暴露密码,比如把密码写在纸上或在许多地方使用密码而没有更新。特别的是,在热点区域用于试图网络访问的公众访问无线LAN对于攻击是更危险的,因为通过击键监视或社会工程可以获得脱机离线的密码,即使通过密码来验证用户的EAP-SRP、PEAP和EAP-TTLS方法是抵抗字典攻击的安全协议。
此外,使用标记或移动设备的单因子验证方法需要标记和用于读取标记的输入设备(例如,读卡器)。作为第二因子的标记包括移动设备,比如智能卡,USB(通用串行总线)密钥和PDA。因此,在无线环境中用于标记的USB密钥的使用不需要太多成本,这是由于不需要附加额外的硬件。在此情形下,在具有韧度坚固特性的安全模块中存储标记,由于标记具有有关对称密钥或个人验证的秘密的信息。
因而,因特网或(公众访问)无线LAN需要一种比上述验证部件所执行的验证更好的验证系统,特别是,需要用于解决未来技术需求的验证方法。
(1)身份保护需要使客户身份免受被动攻击,比如出于秘密目的的搭线窃听。特别的,该保护用于通过DHCP(动态主机配置协议)接收IP地址的用户。
(2)强大的相互验证需要用户和网络之间的相互验证,由于攻击者可以执行MitM攻击,同时他们位于用户和验证服务器之间。
(3)会话密钥建立建立会话密钥以便保护在用户和网络之间通信的数据。
(4)FS(转送保密)提供一种FS,其特性是当参与协议的对象的长期的密钥材料被暴露时,它避免攻击者根据先前的搭线窃听的会话来计算过去的会话密钥。FS被分类成半FS和全FS。前一种表示当包括用户和验证服务器的对象的其中之一的密钥被暴露时,攻击者不能诱导出过去的会话密钥,而后一种表示当两个对象的密钥被暴露时会话密钥是安全的。
(5)脱机字典攻击的安全性设计该协议以便当攻击者攻击脱机字典以试图获得秘密信息时,攻击者不能获得由用户和服务器共享的秘密信息。
(6)关于MitM攻击的安全性必须设计(公众访问)无线LAN以便确保抵抗使用路由AP(接入点)或路由无线NIC的MitM攻击。
(7)关于重放攻击的安全性需要防止攻击者重发使用的消息以及成功地验证和建立密钥。
(8)有效性-将操作负载最小化要求较少量的可应用于(公众访问)无线LAN中的PDA的操作是必要的。通过使用预先运算来将在线运算的负载最小化。
-将消息交换的次数最小化考虑到网络资源的有效性和网络上的延迟,减少通信循环次数是更加有利的。因此,将减少在用户和验证服务器之间交换消息的次数。
-将通信带宽的使用最小化协议消息的长度将是小的。
(9)密钥确认参与协议的合法的用户被确认他共享具有期望的同等的秘密会话密钥。
(10)不可抵赖不可抵赖功能,用于防止用户抵赖帐单数据,比如服务使用的时间和网络访问的次数。
公开技术问题本发明的优点是提供一种用于通过使用存储在密码中的密钥和标记(两个独立的验证因子)来验证用户的TAKE方法,验证,和使用TAKE方法的验证方法以及存储包括TAKE方法的程序的记录媒体。
技术解决方案在本发明的一个方面中,在通过有线/无线通信在访问到验证服务器的用户站上相互验证式密钥交换方法中,验证二因子验证式密钥交换方法包括(a)用户站发送密钥到验证服务器,使用用户站的识别符和验证服务器的公开密钥产生该密钥;(b)用户站接收通过验证服务器产生的随机数;(c)使用接收的随机数、用户站中预定的密码和存储在标记中的密钥,发送加密的第一特定值和产生的用户验证码到验证服务器;(d)根据验证服务器对所发送的用户验证码的成功验证,用户站接收验证服务器的验证码;和(e)用户站使用秘密密钥和密码,验证接收的验证服务器验证码,并且当验证成功时,接收验证服务器的验证码。
二因子验证式密钥交换方法进一步包括在(a)之前,用户站确定对称密钥和用于对称密钥算法的密码并在注册处理期间与验证服务器共享对称密钥和密码;和当用户站不交换用于利用验证服务器进行验证的密钥时,用户站产生随机数并且预运算第一确定值。
用户站在标记中存储验证服务器的密码和公开密钥。
在(a)中,所述生成密钥是通过把单向散列函数应用到用户站识别符单向和验证服务器的公开密钥而产生的。
(c)包括把散列函数应用到接收的随机数、密码和存储在标记中的密钥,并产生第二预定值;使用第二预定值和加密第一预定值;使用随机数和第一预定值,并产生用户的会话密钥;把散列函数应用到产生的会话密钥、密码、存储在标记中的密钥和用户站的识别符,并产生用户的验证码;以及把加密的第一预定值和用户的验证码发送到验证服务器。
(e)包括将散列函数应用到用户的会话密钥、密码、存储在标记中的密钥和验证服务器的公开密钥,并产生第三预定值;确定是否产生的第三预定值对应于从验证服务器接收的验证服务器的验证码;和确定用户站和验证服务器之间的验证是成功的,并且当发现产生的第三预定值对应于验证服务器的验证码时,接收验证服务器的验证码。
在本发明的另一个方面中,在验证服务器访问用户站以便进行用于交换相互验证的密钥的有线/无线通信的方法中,二因子验证式密钥交换方法包括(a)验证服务器接收一个密钥,该密钥是由用户站通过使用验证服务器的识别符和公开密钥产生的;(b)验证服务器使用从用户站接收的值,检测用户的密码、标记中的密钥和验证服务器的公开密钥,产生随机数,并把随机数发送到用户站;(c)基于发送的随机数,验证服务器接收通过用户站产生的加密的值和用户的验证码;(d)验证服务器确定通过使用密码、存储在标记中的密钥和随机数所产生的第一预定值作为秘密密钥,解密在(c)中接收的加密的值以产生第二预定值,基于第二预定值验证所述接收的用户验证码,并且当验证成功时接收用户的验证码;和(e)验证服务器使用密码、存储在标记中的密钥和公开密钥,并把验证服务器的验证码发送到用户站。
二因子验证式密钥交换方法进一步包括在(a)之前,验证服务器确定对称密钥和用于对称密钥密码系统的密码并在注册处理期间与用户站共享对称密钥和密码。
验证服务器把存储在标记中的密钥、密码和验证服务器的秘密密钥存储在安全文件数据库中。
(d)包括把散列函数应用到密码、存储在标记中的密钥和随机数,并产生第一预定值;确定所述产生的第一预定值作为秘密密钥,解密所述接收的加密值,并产生第二预定值;使用产生的第二预定值、验证服务器的公开密钥和随机数,产生验证服务器的会话密钥;确定通过把散列函数应用到产生的会话密码、密码、标记中存储的密钥和用户站的识别符所获得的值是否对应于接收的用户验证码;以及当所述值对应于接收的用户验证码时确定发现对用户的验证是成功的并接收用户验证码。
验证服务器的会话密钥用来产生(e)中的验证服务器验证码。
在(a)中,当用户的识别符使用NAI(网络访问ID)格式以便支持全球漫游和记帐时,用户站把用户名称、验证服务器的公开密钥的散列值和域名发送到验证服务器。
在本发明的又另一个方面中,在其中通过接入点访问用户站和验证服务器的无线通信系统中,在通过二因子验证式密钥交换而在用户站和验证服务器之间进行相互验证的方法中,通过二因子验证式密钥交换的验证方法包括(a)用户站从接入点接收识别符请求;(b)用户站通过接入点把通过使用用户站的识别符和验证服务器的公开密钥所产生的密钥发送到验证服务器;(c)验证服务器使用从用户站接收的密钥、检测用户的密码、秘密密钥和验证服务器的公开密钥,产生随机数,并通过接入点把所述随机数发送到用户站;(d)用户站使用接收的随机数、密码和标记中存储的密钥,并通过接入点把加密的第一预定值和产生的用户验证码发送到验证服务器;(e)验证服务器确定通过使用密码、标记中存储的密钥和随机数所产生的第二预定值作为秘密密钥,解密在(d)中所接收的加密值,基于解密值,验证接收的用户的验证码,并且当发现验证成功时,通过接入点把通过使用密码、标记中存储的密钥和公开密钥所产生的验证服务器验证码发送到用户站;(f)用户站使用标记中存储的密钥和密码,验证接收的验证服务器验证码,并通过接入点把验证结果发送给验证服务器;以及(g)当发现从用户站发送的验证结果是成功的时,验证服务器把用于用户的访问许可通过接入点发送给用户站。
标记中存储的密钥是对称密钥。
在用户站和接入点之间使用可扩展验证协议,而在接入点和验证服务器之间使用RADIUS协议。


被包括在本发明中并构成说明书的一部分的附解说明了发明的实施例,并和说明书一起用来解释本发明的原理。
图1显示了根据本发明优选实施例的TAKE协议的流程;和图2显示了根据本发明优选实施例的使用TAKE协议的公众访问无线LAN中的验证和密钥交换流程。
具体实施例方式
在下面的详细描述中,仅仅通过图解说明由发明人设想的实现本发明的最佳方式,来显示和描述本发明的优选实施例。应该认识到,在不脱离本发明的情况下,本发明能够在各种显而易见的方面被修改。因而,附图和说明书被认为是示例了实质内容,而并非约束。为清晰起见,在说明书中没有描述的部件被省略,并且为其提供类似描述的那些部件具有相同的标号。
将描述根据本发明实施例的使用TAKE协议的验证方法。
图1显示了根据本发明优选实施例的TAKE协议的流程图。
优选实施例中所描述的符号被如下定义。
A用户(恳求者或客户)B验证服务器π密码t用于对称密钥加密的对称密钥IDA用户A的识别符EK{}和DK{}利用对称密钥K的加密和解密H()单向散列函数skA通过A产生的会话密钥p大质数q用于除(p-1)的大质数g是Z*p的一个元素的产生器,具有q的顺序,和b,gb(modp)静态秘密密钥和验证服务器B的公开密钥参考图1,根据本发明优选实施例的TAKE协议的操作包括登记阶段、预运算阶段和运行阶段。
现在将描述登记阶段。
实质上是客户的移动终端的用户客户A和服务器B确定用于对称密钥加密系统的对称密钥t和密码π,比如3DES(数据加密标准)或Rijndael,并共享它们。服务器对特定的客户选择服务器的秘密密钥[1~q-l]的范围内的一个数<b>,在安全数据库DB中存储该数,并把服务器的公开密钥gb和域参数p,q和g通知给客户。客户在标记中存储对称密钥。服务器的公开密钥gb和域参数p,q,和g不必被存储在安全地方,这是由于它们是公开信息。
现在将描述预运算阶段。
在协议被执行之前,在线的执行预运算阶段,具体地说,在协议运行期间,它减少时间和所使用的运算。
在空闲时间(其中没有移动网络被使用或当终端被接通时)的情形下,客户的移动终端执行预运算。如图1所示,客户A在[1~q-1]的范围内选择随机数x。就是说,客户选择随机数x∈RZq,并通过使用随机数x预运算gx和gbx=c(此后方式p)。
现在将描述运行阶段,如下所述的执行相互对象验证和会话密钥建立。
(1)客户A发送H(IDA,gb),它是客户的识别符IDA和验证服务器公开密钥gb的散列值,以便访问因特网或(公众访问)无线LAN。
当客户ID使用NAI(网络接入ID)格式以便支持全球漫游和记帐时,例如,当客户ID被给定是userid@realm.com,H(userid,gb),它是用户名称和gb的散列值,则发送域名。
(2)验证服务器B从客户安全文件数据库DB接收H(IDA,gb)并检测<H(IDA,gb)>,<IDA>,<π>,<t>和<b>。验证服务器B在[1~q-1]的范围内选择随机数r∈RZq,并把该数发送到客户A。
(3)客户A从验证服务器B接收数字r,通过使用π和t的值运算f=H(r,π,t)的散列值,通过使用f值来运算e=Ef{gx},作为用于对gx值执行对称密钥加密的对称密钥,运算skA=H(c,gx,r)的会话密钥,它是c,gx和r的散列值,并产生MA=H(skA,π,t,IDA)的验证码,它是π,t,和IDA的散列值。客户A把产生的e和MA发送到验证服务器B。
(4)验证服务器B从客户A接收e和MA,通过使用r,π和t运算f=H(r,π,t),通过使用运算的f的秘密密钥解密接收的e,和发现gx=Df{e}。
验证服务器B通过使用发现的gx和b运算c=gbx,通过使用c和r运算skB=H(c,gx,r),产生H(skB,π,IDA),并检查是否H(skB,π,IDA)对应于接收的MA。当两个值彼此对应时,客户A上的验证被认为是成功的,并且验证服务器B接收客户A发送的MA,运算MB=H(skB,π,t,gb),并发送运算的MB到客户A。
(5)客户A检查从验证服务器B接收的MB是否对应于由客户A运算的H(skB,π,t,gb)。当两个值彼此对应时,验证服务器B上的验证被认为是成功的,并且客户A接收MB。当客户A和验证服务器B分别接收MA和MB时,客户A和验证服务器B之间的相互验证被认为是成功的。
图2显示了根据本发明优选实施例的使用TAKE协议在公众访问无线LAN中验证和密钥交换的流程图。
参考图2,用户(恳求者或客户)100和验证服务器(或RADIUS服务器)300通过接入点200(比如(公众访问)无线LAN)彼此连接,并通过验证服务器300验证用户100。
在该例中,在用户100和接入点200之间使用EAP(可扩展验证协议),而在接入点200和验证服务器300之间使用RADIUS协议。
此外,用户100存储验证服务器300的对称密钥t、密码π、公开密钥gb、DH(Diffle-Hellman)域参数p,q和g,并且,除了验证服务器300的对称密钥t、密码π、公开密钥gb、DH(Diffle-Hellman)域参数p,q和g外,验证服务器300存储服务器秘密密钥b。
当用户100请求对(公众访问)无线LAN的访问业务时,在步骤S100,接入点200利用身份1把EAP请求身份发送给用户100。
在步骤S110,用户100发送EAP-响应/身份H(IDA,gb)到接入点200,EAP-响应/身份H(IDA,gb)定义了用户的识别符IDA的散列值H(IDA,gb)和作为身份的验证服务器300的公开密钥gb。
在步骤S120,接入点200通过验证服务器300发送半径-接入-请求H(IDA,gb),包括从用户100发送的身份。
在步骤S130,基于从接入点200发送的H(IDA,gb),验证服务器300从相应的数据库中检测<IDA>、<π>、<t>和<b>,选择随机值r∈RZq,并把作为半径-接入-挑战值的该值发送到接入点200,而在步骤S140,接入点200定义作为TAKE子类型的该值,并把EAP-请求TAKE子类型1(r)发送到用户100。
在步骤S150,用户100从验证服务器300接收r的随机值,通过使用π和t运算f=H(r,π,t)的散列值,通过使用f的值运算e=Ef{gx},作为用于加密对称密钥的秘密密钥,运算作为c、gx和r的散列值的会话密钥skA=H(c,gx,r),产生作为π、t和IDA的散列值的验证码MA=H(skA,π,t,IDA),并且通过TAKE子类型1中的e和MA把EAP-响应/TAKE子类型1(e,MA)发送到接入点200,而在步骤S160,接入点200发送包括从用户100发送的(e,MA)的半径-接入-请求(e,MA)到验证服务器300。
在步骤S170,验证服务器300从用户100接收e和MA,使用r、π和t运算f=H(r,π,t)的散列值。利用运算的f的秘密密钥解密接收的e,发现gx=Df{e},使用发现的gx和b运算c=gbx,使用c和r运算skB=(c,gx,r),产生H(skB,π,t,IDA),和检查是否H(skB,π,t,IDA)对应于接收的MA。当它们彼此对应时,用户100上的验证被认为是成功的,并且验证服务器300从用户100接收MA,运算MB=H(skB,π,t,gb),以及把作为半径-接入-挑战(MB)的MB发送到接入点200。
在步骤S180,接入点200定义从验证服务器300发送的MB作为TAKE子类型2,以及把EAP-请求TAKE子类型2(MB)发送到用户100。
用户100从验证服务器300接收MB,并检查是否MB对应于由用户100运算的H(skB,π,t,gb)。当它们彼此对应时,验证服务器300上的验证被认为是成功的,用户100接收MB。当用户100和验证服务器300分别接收了MA和MB时,用户100和验证服务器300之间的相互验证被认为是成功的。
在步骤S190,用户100通过表示认可的TAKE子类型2把EAP-响应/TAKE子类型2发送到接入点200,并且在步骤S200,接入点200发送包括从用户100发送的消息的半径-接入-请求到验证服务器300。
当通过接入点200从用户发送的验证结果是成功的时,在步骤S210,验证服务器300发送半径-接入-接受消息到接入点200,并且在步骤S220,接入点200根据该结果发送EAP-成功消息到用户100,而在步骤S230,发送EAPOL(经LAN协议的EAP封装)-密钥消息到用户100以便通知用户100允许访问。
在该例中,用户100和接入点200之间发送的消息或数据分组包括EAPOL。
现在将描述使用验证方法的TAKE协议是否满足强大验证所需的技术条件。下面给出对根据本发明优选实施例的使用验证方法的TAKE协议的安全性分析。
(1)身份保护当接收ID请求时,用户发送H(IDA,gb)替代用户的IDA以便诸如搭线窃听的被动攻击者不知道用户的身份。这里,验证服务器利用用户的真实身份匹配用户的匿名。
(2)强大的相互验证当知道密码π、秘密密钥t和验证服务器的公开密钥gb时,用户能引导验证码MA和获得验证。当知道密码π、秘密密钥t、用户IDA和服务器的秘密密钥b时,验证服务器可以引导MB和获得网络的验证。因此,强大的相互验证是允许的。
(3)会话密钥建立产生会话密钥skA和skB以保护用户和验证服务器之间的数据。产生的会话密钥提供通过选择各个目标对象的动态数x和r所导致的随机性和新鲜性。
(4)FS(转送保密)当用户拥有的秘密信息<IDA>、<π>、<t>和<gb>暴露给攻击者时,他能解密e加密电文从而得知gx,但难于运算c=gxb的值,这是因为DLP(离散对数问题)的缘故。此外,当服务器的秘密密钥<b>被暴露时,攻击者必须知道gx以便运算c=gxb的值,并必须知道<π>和<t>以便知道gx。就是说,当他知道<b>、<π>和<t>时,攻击者可以运算会话密钥。然而,由于业务提供商是大的公司并被认为在实际的(公众访问)无线LAN环境中具有他们自己的优秀的安全系统,有关安全性的重要的秘密信息暴露给攻击者的概率似乎是很低的。因此,TAKE协议不是普通的半FS,而是(公众访问)无线LAN中实际有用的半FS。
(5)脱机字典攻击攻击者试图攻击脱机字典以便获得用于成功验证的秘密信息。具有低平均信息量的密码无力抵抗攻击,但这类型的攻击实质上是不可能的,因为存储在标记中的具有高平均信息量的秘密密钥和密码被当作密钥来用于加密TAKE中的gx的随机值。就是说,攻击者必须假定密码、秘密密钥和gx的随机值。
(6)关于MitM攻击的安全性攻击者可以被定位在用户和服务器之间以执行MitM攻击,但这种攻击是很难成功的,因为TAKE使用强大的二因子验证。
(7)关于重放攻击的安全性重放攻击表示攻击者重发使用的消息和重新建立先前的会话密钥的一种攻击方法。TAKE安全地抵制重放攻击,这是由于用户和服务器对每个会话分别产生随机数x和r以产生会话密钥。
(8)有效性-将操作负载最小化DH(Diffie-Hellman)协议被频繁地用于AKE协议,由于它提供FS,但需要取幂运算和产生大量的运算。多数操作时间被用于取幂、逆元的运算和乘法。特别的是,当计算量被增加时,PDA使用更多的实时的验证时间。因此,TAKE方法用来使用户可以在线地使用一个对称密钥加密和五个散列函数,并执行两次取幂运算来用于离线预运算。服务器需要有关一次取幂、一次对称密钥解密和四个散列函数的运算量。
-将消息交换的次数最小化由于TAKE具有四次传递,减少了用户和验证服务器之间交换的消息数。
-将通信带宽的使用最小化五个消息中的三个表示散列函数的输出比特数,其中的一个是随机数的比特数,并且它的最后一个是gx的加密电文的输出比特数。
(9)密钥确认TAKE包括验证码MA和MB中的会话密钥并执行密钥确认以此检查与期望的验证服务器共享公开秘密会话密钥的参与协议的合法用户。
(10)不可抵赖TAKE不使用数字签名但使用强大的二因子验证,因此,防止了欺诈的用户使用业务但否认其对业务的使用。
上述本发明的优选实施例可以以程序来实现,并存储在计算机可读的记录媒体中(CD-ROM、RAM、软盘、HDD和光盘)尽管已经结合所出现的考虑是最实际的和优选实施例描述了本发明,但应该明白的是,本发明不限于公开的实施例。相反,意在覆盖所附权利要求书的精神和范围内所包括的各种修改和等效的安排。
权利要求
1.在通过有线/无线通信在接入到验证服务器的用户站上相互验证的密钥交换方法中,,二因子验证式密钥交换方法包括(a)所述用户站发送密钥到所述验证服务器,所述密钥是利用所述用户站的识别符和所述验证服务器的公开密钥产生的;(b)所述用户站接收通过所述验证服务器产生的随机数;(c)使用所述接收的随机数、所述用户站中预定的密码和存储在标记中的密钥,发送加密的第一特定值和产生的用户验证码到所述验证服务器;(d)根据所述验证服务器对所述发送的用户的验证码的成功验证,所述用户站接收所述验证服务器的验证码;以及(e)所述用户站使用秘密密钥和密码,验证所述接收的验证服务器验证码,并且当验证成功时,接收所述验证服务器的验证码。
2.权利要求1的二因子验证式密钥交换方法,其中存储在所述标记中的所述密钥是对称密钥。
3.权利要求1的二因子验证式密钥交换方法,其中还包括;在(a)之前,所述用户站确定所述对称密钥和用于对称密钥算法的所述密码,并在注册处理期间与所述验证服务器共享所述对称密钥和所述密码;以及当所述用户站不与所述验证服务器交换用于验证的密钥时,所述用户站产生随机数和预运算第一确定的值。
4.权利要求1或3的二因子验证式密钥交换方法,其中所述用户站在所述标记中存储所述验证服务器的所述密码和公开密钥。
5.权利要求1或3的二因子验证式密钥交换方法,其中,在(a)中,所述产生的密钥是通过把单向散列函数应用到所述用户站的识别符和所述验证服务器的所述公开密钥来产生的。
6.权利要求1或3的二因子验证式密钥交换方法,其中(c)包括将所述散列函数应用到所述接收的随机数、所述密码和存储在所述标记中的所述密钥,并产生第二预定值;使用所述第二预定值和加密所述第一预定值;使用所述随机数和所述第一预定值,并产生所述用户的会话密钥;把所述散列函数应用到所述产生的会话密钥、所述密码、存储在所述标记中的所述密钥和所述用户站的所述识别符,并产生所述用户的验证码;以及把所述加密的第一预定值和所述用户的验证码发送到所述验证服务器。
7.权利要求6的二因子验证式密钥交换方法,其中(e)包括把所述散列函数应用到所述用户的会话密钥、所述密码、存储在所述标记中的所述密钥和所述验证服务器的公开密钥,并产生第三预定值;确定所述产生的第三预定值是否对应于从所述验证服务器接收的所述验证服务器的所述验证码;以及确定所述用户站和所述验证服务器之间的验证是成功的,并且当发现所述产生的第三预定值对应于所述验证服务器的验证码时,接收所述验证服务器的验证码。
8.在接入用于有线/无线通信的用户站的验证服务器交换用于相互验证的密钥的方法中,二因子验证式密钥交换方法包括(a)所述验证服务器接收密钥,所述密钥是由所述用户站通过使用所述验证服务器的识别符和公开密钥而产生的;(b)所述验证服务器使用从所述用户站接收的值,检测所述用户的密码、所述标记中密钥和所述验证服务器的公开密钥,产生随机数,并把所述随机数发送到所述用户站;(c)基于所述发送的随机数,所述验证服务器接收由所述用户站产生的加密值和所述用户的验证码;(d)所述验证服务器确定通过使用所述密码、存储在所述标记中的所述密钥和所述随机数所产生的所述第一预定值作为秘密密钥,解密在(c)中接收的所述加密的值以便产生第二预定值,基于所述第二预定值验证所述接收的用户验证码,并且当验证成功时接收所述用户验证码;以及(e)所述验证服务器使用所述密码、存储在所述标记中的所述密钥和所述公开密钥,并且把所述验证服务器的验证码发送到所述用户站。
9.权利要求8的二因子验证式密钥交换方法,其中存储在所述标记中的所述密钥是对称密钥。
10.权利要求9的二因子验证式密钥交换方法,其中还包括在(a)之前,所述验证服务器确定用于对称密钥密码系统的所述对称密钥和所述密码并在注册处理期间与所述用户站共享所述对称密钥和所述密码。
11.权利要求8或10的二因子验证式密钥交换方法,其中所述验证服务器在安全文件数据库中存储所述标记中存储的密钥、所述密码和所述验证服务器的秘密密钥。
12.权利要求8或10的二因子验证式密钥交换方法,其中(d)包括把所述散列函数应用到所述密码、存储在所述标记中的所述密钥和所述随机数,并产生所述第一预定值;确定所述产生的第一预定值作为秘密密钥,将所述接收的加密值解密,并产生所述第二预定值;使用所述产生的第二预定值、所述验证服务器的公开密钥和所述随机数,并产生所述验证服务器的会话密钥;确定通过把所述散列函数应用到所述产生的会话密码、所述密码、所述标记中存储的密钥和所述用户站识别符所获得的值是否对应于所述接收的用户验证码;以及当所述值对应于所述接收的用户验证码时,确定发现对所述用户的验证是成功的,并接收所述用户验证码。
13.权利要求12的二因子验证式密钥交换方法,其中所述验证服务器的所述会话密钥用来产生(e)中的所述验证服务器验证码。
14.权利要求1或8的二因子验证式密钥交换方法,其中在(a)中,当所述用户站的所述识别符使用NAI(网络访问ID)格式以便支持全球漫游和记帐时,所述用户站把所述用户名称、所述验证服务器的公开密钥的散列值和域名发送到所述验证服务器。
15.在通过接入点访问用户站和验证服务器的无线通信系统中在用户站和验证服务器之间通过二因子验证式密钥交换的相互验证方法中,通过二因子验证式密钥交换的验证方法包括(a)所述用户站从所述接入点接收识别符请求;(b)所述用户站通过所述接入点把通过使用所述用户站的所述识别符和所述验证服务器的公开密钥所产生的密钥发送到所述验证服务器;(c)所述验证服务器使用从所述用户站接收的密钥,检测所述用户的所述密码、秘密密钥和所述验证服务器的公开密钥,产生随机数,并通过所述接入点把所述随机数发送到所述用户站;(d)所述用户站使用所述接收的随机数、所述密码和所述标记中存储的密钥,并通过所述接入点把加密的第一预定值和所述产生的用户验证码发送到所述验证服务器;(e)所述验证服务器确定通过使用所述密码、所述标记中存储的密钥和所述随机数所产生的第二预定值作为秘密密钥,解密在(d)中接收的所述加密值,基所述于解密值,验证所述接收的用户验证码,并且当发现验证成功时,通过接入点把通过使用所述密码、所述标记中存储的密钥和所述公开密钥所产生的验证服务器验证码发送到所述用户站;(f)所述用户站使用所述标记中存储的密钥和所述密码,验证所述接收的验证服务器验证码,并通过所述接入点把验证结果发送给所述验证服务器;以及(g)当发现从所述用户站发送的所述验证结果是成功的时,所述验证服务器把关于所述用户的访问许可通过所述接入点发送给所述用户站。
16.权利要求15的验证方法,其中所述标记中存储的密钥是对称密钥。
17.权利要求15或16的验证方法,其中在所述用户站和接入点之间使用可扩展的验证协议,和在接入点和所述验证服务器之间使用RADIUS协议。
18.在用于通过有线/无线通信接入到验证服务器的用户站上交换相互验证的密钥的方法中,存储程序的记录媒体包括(a)所述用户站把使用所述用户站的识别符和所述验证服务器的公开密钥产生的密钥发送到所述验证服务器;(b)所述用户站接收通过所述验证服务器产生的随机数;(c)所述用户站使用所述接收的随机数、在所述用户站预定的所述密码和存储在所述标记中的所述密钥,并把加密的第一特定值和所述产生的用户验证码发送到所述验证服务器;(d)根据所述验证服务器对所述发送的用户验证码的成功验证,所述用户站接收由所述验证服务器产生的所述验证服务器验证码;以及(e)所述用户站使用存储在所述标记中的所述密钥和所述密码,验证所述接收的验证服务器验证码,并且当所述验证成功时,接收所述验证服务器验证码。
19.权利要求18的记录媒体,其中存储在所述标记中的所述密钥是对称密钥。
20.在用于通过有线/无线通信接入到用户站的验证服务器上交换相互验证的密钥的方法中,存储程序的记录媒体包括(a)所述验证服务器接收所述用户站通过使用所述验证服务器识别符和公开密钥产生的值;(b)所述验证服务器使用从所述用户站接收的所述值,检测所述用户的密码、存储在标记中密钥和所述验证服务器的公开密钥,产生随机数,并且把所述随机数发送到所述用户站;(c)基于所述发送的随机数,所述验证服务器接收由所述用户站产生的加密值和所述用户验证码;(d)所述验证服务器确定通过使用所述密码、存储在所述标记中的所述密钥和所述随机数所产生的第一预定值作为秘密密钥,解密在(c)中接收的加密值以便产生第二预定值,基于所述第二预定值验证所述接收的用户验证码,并且当发现所述验证成功时接收所述用户的验证码;以及(e)所述验证服务器把使用所述密码、存储在所述标记中的所述密钥和所述公开密钥产生的所述验证服务器验证码发送到所述用户站。
21.权利要求20的记录媒体,其中存储在所述标记中的密钥是对称密钥。
全文摘要
一种二因子验证式密钥交换方法。用户站把通过使用识别符和验证服务器的公开密钥所产生的一个值经接入点发送给验证服务器。验证服务器使用该值来检测用户的密码,存储在标记中的密钥,和验证服务器的秘密密钥,产生随机数。用户站使用随机数,密码,和密钥来发送加密的值和用户的验证码到验证服务器。验证服务器建立通过使用被解密密钥的密码密钥和随机数所产生的第二值以便解密该加密的值,验证用户的验证码,并发送验证服务器的验证码到用户站。用户站通过使用密钥和密码验证验证服务器的验证码。
文档编号H04L9/14GK1846397SQ20048002443
公开日2006年10月11日 申请日期2004年6月28日 优先权日2003年6月27日
发明者朴永晚, 李圣春, 车镕柱 申请人:株式会社Kt
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1