CN101278538A - 用于用户认证的方法和设备 - Google Patents
用于用户认证的方法和设备 Download PDFInfo
- Publication number
- CN101278538A CN101278538A CNA2006800369414A CN200680036941A CN101278538A CN 101278538 A CN101278538 A CN 101278538A CN A2006800369414 A CNA2006800369414 A CN A2006800369414A CN 200680036941 A CN200680036941 A CN 200680036941A CN 101278538 A CN101278538 A CN 101278538A
- Authority
- CN
- China
- Prior art keywords
- server
- authentication
- communication terminal
- pin
- 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
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
为了对使用通信终端(1)通过电信网来访问服务器(4)的用户进行认证,从用户接收个人识别码。从在通信终端(1)和服务器(4)之间交换的安全会话建立协议报文(S1,S2,S3)生成数据集(S4)。基于该数据集,利用个人识别码来生成交易认证号(S52)。交易认证号从通信终端(1)传送到服务器(4)。在服务器(4)中,基于与通信终端(1)交换的安全会话建立协议报文来验证所接收的交易认证号(S20)。交易认证号使会话知晓(session aware)的用户认证能够保护在线用户免遭实时的中间人攻击。
Description
技术领域
本发明涉及对访问服务器的用户进行认证的方法和设备。具体地,本发明涉及对使用通信终端通过电信网访问服务器的用户进行认证的方法、计算机程序产品,和访问计算机化的服务器。
背景技术
互联网上对登录机制的篡改攻击增长迅速。比如银行等机构推出了双因数认证设备,有些甚至包括高速和甚至更高成本的询问-响应机制。中间人(MITM)攻击对所有基于SSL/TLS的在线应用,例如互联网银行业,造成严重威胁,该问题的一般答案是如原始的安全套接字层(SSL)协议(US 5,657,390)或传输层安全(TLS)协议标准(Dieks,T.和C.Allen,“TheTLS Protocol Version 1.0”,Request for Comments 2246,1999年1月)所要求的、使用基于相互认证的客户端证书。但是,在公司势力的紧密控制范围之外,此方法并未得到其设计者预期的广泛接受。
US 4,405,829,US 4,720,860,US 4,885,778和US 4,856,062涉及一种被广泛认知的认证令牌设备——安全ID令牌。此令牌设备提供健壮的用户认证。但是,它不防止实时操作的MITM攻击。
专利申请US 2004/0064687中描述的是防止通过在线第三方,即“身份提供者”,进行MITM攻击的方法。所描述的方法既不需要改变SSL/TLS协议,也不需要推出完全公共密钥基础设施(PKI)。然而,它需要更改客户端并使其包括身份提供者的硬编码证书。
US 2002/107798 A1描述了一种对安全设备进行智能卡认证的方法。所描述的方法基于在协议启动之前芯片卡拥有安全设备的公共密钥,且(客户端)应用仅限于使用该公共密钥的假设。但是这些假设通常不能成立。
发明内容
本发明的目的是提供对使用通信终端通过电信网访问服务器的用户进行认证的方法和设备。具体地,本发明的目的是提供防止实时操作的MITM攻击的用户认证方法和设备。本发明的另一目的是提供对使用由安全会话建立协议建立的安全会话、通过电信网访问服务器的用户进行认证的方法和设备访问。
根据本发明,这些目的通过独立权利要求的特征来实现。另外,另外的有利实施例根据从属权利要求和说明书得出。
根据本发明,上述目的具体实现为,为了对使用通信终端通过电信网访问服务器的用户进行认证,接收来自用户的个人识别码;根据通信终端和服务器之间交换的安全会话建立协议报文生成数据集;利用个人识别码,基于数据集生成交易认证号;交易认证号从通信终端传送到服务器;并且,在服务器中,基于与通信终端交换的安全会话建立协议报文来验证该交易认证号(以及由此的用户)。例如,根据所交换的安全会话建立协议报文,数据集在通信终端中被生成为hash值。必须强调的是,此处描述的交易认证号在本发明的上下文中被用作会话认证号或会话认证码。在一些实施例中,交易认证号由数字数据集,即数字交易认证号表示。基于个人识别码以及在通信终端和服务器之间交换的安全会话建立协议报文生成交易认证号,使面向知晓(session-aware)的用户认证能够有效保护在线用户不被实时中间人攻击。
在实施例中,在与通信终端关联和/或在通信终端内的认证模块中,从数据集生成认证基础号,利用个人识别码,从认证基础号生成交易认证号。例如,认证基础号在与通信终端关联的认证模块中生成。而且,在服务器中,从所交换的安全会话建立协议报文生成认证基础号,且利用个人识别码和服务器中生成的认证基础号在服务器中对交易认证号进行验证。
在优选实施例中,认证基础号和个人识别码(由用户)输入到未连接到通信终端的询问/响应(C/R)令牌设备中。基于该认证基础号和个人识别码,在询问/响应令牌设备中生成交易认证号作为令牌响应值。在将交易认证号传送给服务器之前,(由用户)将该交易认证号,即令牌响应值输入到通信终端中。
在实施例中,通过生成随机数,从数据集选择被选数字(该数字由随机数的位数决定),以及由被选数字和随机数位数构成认证基础号,从而从数据集生成认证基础号。
在实施例中,利用与认证模块关联的密钥对中的私钥,从数据集生成数字签名。在认证模块中,利用与认证模块关联的令牌密钥,从数据集生成认证基础号;从认证基础号生成交易认证号;个人识别码被用于生成数字签名或生成交易认证号;数字签名从通信终端传送到服务器;在服务器中,利用密钥对中的公钥来验证数字签名;交易认证号从通信终端传送到服务器;在服务器中,利用用于加密数据集的令牌密钥,从接收自通信终端的数据集生成认证基础号;以及,在服务器中,利用服务器中生成的认证基础号来验证交易认证号。
在实施例中,从认证基础号和个人识别码生成交易认证号。该交易认证号和用户标识符从通信终端传送到服务器。在服务器中利用服务器中生成的认证基础号以及分配给用户标识符的个人识别码来验证交易认证号。
在实施例中,认证模块被实现为可移除地连接到通信终端的认证令牌设备。数据集从通信终端通过设备接口传递到认证模块,该接口将认证模块连接到通信终端。如果可行,在认证模块中存储密钥对和令牌密钥,而且从认证模块通过设备接口将数字签名传递到通信终端。
在另一实施例中,令牌标识符和交易认证号一起从通信终端传送到服务器,并且在服务器中基于令牌标识符确定令牌密钥。主密钥存储在服务器中,并且在服务器中利用用于加密令牌标识符的主密钥,从令牌标识符生成令牌密钥。
在实施例中,认证基础号从认证模块传递到通信终端。在通信终端中接收来自用户的个人识别码,并且在通信终端中从认证基础号和个人识别码生成交易认证号。
在另一实施例中,在认证模块中接收来自用户的个人识别码。在认证模块中从认证基础号和个人识别码生成交易认证号,而且交易认证号从认证模块传递到通信终端。
在另一实施例中,个人识别码和来自用户的生物测定标识符一起被接收。利用服务器中生成的认证基础号和服务器中存储的生物测定标识符,以及分配给用户标识符的个人识别码,在服务器中验证交易认证号。
在另一实施例中,认证基础号由认证模块显示。交易认证号由用户根据个人识别码和认证模块显示的认证基础号来生成,并输入通信终端。
在又另一实施例中,交易认证号在服务器中成功验证之后,在服务器中对数据集应用公共函数并使用令牌密钥加密,而从数据集生成服务器认证码。服务器认证码从服务器传送到通信终端。在认证模块中对数据集应用公共函数并使用令牌密钥加密,而从数据集生成服务器认证码。认证模块基于在认证模块中生成的服务器认证码来验证来自服务器的服务器认证码。在实施例中,从服务器接收的服务器认证码和在认证模块中生成的服务器认证码由认证模块显示,供用户进行视觉验证。
在附加实施例中,用户针对认证模块选择多个可能机构范围中的一个。用户所选择的机构范围使认证模块使用包括多个令牌密钥的令牌密钥集中的一个特定于机构的令牌密钥来生成认证基础号。服务器与特定机构关联,并使用特定于机构的令牌密钥来生成认证基础号。服务器使用特定机构个人识别码来验证交易认证号。
所建议的用户认证方法不需要必须以一种或另一种方式同步的时钟。作为替代,它采用从通信终端和服务器间交换的安全会话建立协议报文(如SSL/TLS)(的hash值)导出的现时(nonce)来确保交易认证号的传播。
另外,在用户使用特定可传递的令牌期间,如果在通信终端上例如通过浏览器的预填表特性,存储用户标识符以及令牌标识符,则所建议方法的安全性不会被显著破坏。尤其是,如果通信终端是共享工作站,这可能会导致其他方或可能的对手学到这两个值,但所提议的方法对此有抵抗力。
几乎普遍存在的客户侧SSL/TLS实现方式的基础不必被改变。对于大多数实施例,客户端应用程序,如使用SSL/TLS栈的网页浏览器不必被改变。
与今天广泛采用的双因数方案相比,操作经认证的安全会话引导(bootstrapping)对于对安全性一无所知的最终用户不再复杂。
不需要最终用户注册或其它昂贵过程,就可实现防MITM的方法。运行双因数方案的机构必须仅替换最终用户在使用的设备(但他们所使用的PIN或口令保持不变),或者修改该设备中使用的算法和协议(与已知的固件更新相似),并适应其自身的服务器基础设施以与所建议的方法协同工作。
根据发明的另一目标,针对使用通信终端通过电信网访问服务器来改变个人识别码的用户,从用户接收旧的个人识别码和新的个人识别码;从通信终端和服务器间交换的安全会话建立协议报文生成数据集;在与通信终端关联的认证模块中,利用与认证模块关联的令牌密钥从数据集生成认证基础号;从个人识别码、旧的个人识别码和新的个人识别码生成识别改变码;将识别改变码从通信终端传送到服务器;在服务器中,利用令牌密钥,从所交换的安全会话建立协议报文生成认证基础码;以及,在服务器中,利用旧的个人识别码和服务器中生成的认证基础号,从识别改变码导出新的个人识别码,。
在对使用通信终端通过电信网访问服务器的用户进行认证的另一实施例中,在与通信终端关联的认证模块中,根据个人识别码以及在通信终端和服务器之间交换的安全会话建立协议报文,将交易认证号生成为键控的密码摘要值,用作与服务器共享的密钥。键控密码摘要值作为交易认证号从通信终端传送到服务器。在服务器中,利用存储在服务器中的个人识别码来生成键控密码摘要值。随后,在服务器中,基于从通信终端接收的键控密码摘要值和在服务器中生成的键控密码摘要值的比较,来验证交易认证号以及由此的用户真实性。例如,个人识别码或与认证模块相关联的令牌密钥被用作密钥。利用键控密码摘要函数,即伪随机函数比如加密hash函数来生成键控密码摘要值。在替选实施例中,从数据集生成查找索引,在码表(例如密钥列表)中,使用查找索引确定被选码。该被选码用作(hash)密钥,服务器利用该服务器中存储的码表中的被选码作为(hash)值来生成键控密码摘要值。在子实施例中,服务器记录被通信终端使用的先前选择的码。并且,在服务器确定被选码先前已被通信终端使用的情况下,服务器重新发起与通信终端的会话建立。
在对使用通信终端通过电信网访问服务器的用户进行认证的另一实施例中,在与通信终端关联的认证模块中,通过使用公钥来加密数据集、个人识别码、以及现时,将访问交易认证号生成为密码。该密码作为交易认证号从通信终端传送到服务器。在服务器中,通过使用私钥解密该密码来确定数据集和个人识别码。随后,基于所接收的数据集和在服务器中从安全会话建立协议报文生成的数据集的比较,以及基于所述个人识别码和存储在服务器中的个人识别码的比较,在服务器中验证解密的交易认证号以及用户的真实性。
在实施例中,从数据集生成查找索引,并且在码表(例如密钥列表)中,使用查找索引确定被选码。该被选码另外用于生成密码。服务器利用私钥从该密码确定被选码。同样通过比较该被选码和由服务器根据该服务器中存储的码表来确定的被选码,来检验交易认证号以及由此的用户真实性。在子实施例中,服务器记录通信终端使用的被选码。并且,在服务器确定被选码先前已被通信终端使用的情况下,服务器重新发起与通信终端的会话建立。
根据本发明的另外目的,为了对使用通信终端通过电信网访问服务器的用户进行认证,从通信终端和服务器间交换的安全会话建立协议报文生成数据集;在通信终端中,从数据集、个人识别码以及一个或两个现时生成认证密码。预定义的公钥用来加密。在多机构情况下,该密钥属于服务器或认证服务器。作为结果的密码在规则协议报文内不透明地从通信终端传送到服务器;在服务器中,数据集从所交换的安全会话建立协议报文生成;以及,在服务器中,利用对应的私钥解密所述密码。比较从服务器数据库获取的个人识别码和从所述密码解密的个人识别码,并将解密的数据集和服务器计算出的进行比较。如果用户期望从服务器对用户进行认证,则再从所述密码解密出第二个现时并发回用户。此方法同样可用来改变个人识别码。
根据本发明的另外目的,为了对使用通信终端通过电信网访问服务器的用户进行认证,从通信终端和服务器之间交换的安全会话建立协议报文生成数据集;在通信终端中,从服务器接收索引,或索引被创建用来从带外分发的码表(如密钥列表)查找短密钥。该短密钥和个人识别码被输入通信终端,并且基于数据集、个人识别码、短密钥和多达两个现时来生成认证符——其为密码或键控密码摘要值。该认证符从通信终端传送到服务器;在服务器中,从所交换的安全会话建立协议报文生成数据集;并且,在服务器中,利用服务器中生成的数据集、服务器数据库中的个人识别码和短密钥,通过解密或使用键控密码摘要函数(例如加密hash函数)来验证该认证符。类似的,短密钥也可以用在已经描述过的其它实施例中。
附图说明
将通过示例参考附图详细解释本发明。
图1显示了示意性描述计算机化服务器的示范配置的框图,该服务器设置有用户认证模块,并且通过电信网连接到具有认证模块的移动终端。
图2显示了示意性描述认证模块的示范配置的框图。
图3显示了示意性描述作为认证令牌设备的认证模块的示范实施方式的框图。
图4显示了描述根据本发明的实施例而执行的步骤序列的示例的流程图,其中本发明的该实施例用于对使用通信终端(“在通信终端输入PIN_U以及在终端上建立TAN”)通过电信网访问服务器的用户进行认证。
图5显示了说明根据用于(“在设备上输入PIN_U以及在设备上建立TAN”)认证用户的本发明的另一实施例而执行的步骤序列的示例的流程图。
图6显示了说明根据用于认证用户(“由用户脑力建立TAN”)的本发明的又一实施例而执行的步骤序列的示例的流程图。
图7显示了说明根据用于认证用户(“软令牌”)的本发明的又一实施例而执行的步骤序列的示例的流程图。
图8显示了说明根据本发明的实施例而执行的附加步骤序列的示例的流程图,其中本发明的实施例用于对被用户使用通信终端(“设备上的服务器认证码”)通过电信网所访问的服务器进行认证。
图9显示了根据用于(“通过软令牌设备得到的服务器认证码”)认证服务器的本发明的另一实施例而执行的附加步骤系列的示例的流程图。。
图10显示了根据用于(“基于标准设备接口的询问响应”)认证用户的本发明的另一实施例而执行的步骤序列的示例的流程图。
具体实施方式
在图1中,参考标号1指为通过电信网3与计算机化服务器4交换数据而配置的通信终端。通信终端1包括,但不限于固定个人计算机(PC)、移动膝上计算机、移动无线电话和/或移动个人数字助理(PDA)。每个通信终端1都具有显示器11和数据输入装置12,比如键盘和定点设备(例如计算机鼠标、跟踪球等)。通信终端1包括客户端应用程序,优选是浏览器(例如Microsoft Internet Explorer或Mozilla Firefox),以便通过用安全会话建立协议比如SSL/TLS来建立的安全会话、经由电信网3访问服务器4上驻留的在线应用。另外,通信终端1包括认证模块2,这在后面参考图2和3详细描述。
电信网3包括固定网络和无线网络。例如,电信网3包括局域网(LAN)、综合业务数字网(ISDN)、互联网、全球移动通信系统(GSM)、通用移动通信系统(UMTS)或者其它基于陆地或卫星的移动无线电话系统,和/或无线局域网(WLAN)。
计算机化服务器4包括一个或多个计算机,每个计算机有一个或多个处理器、程序和数据内存,以及操作系统和可以通过利用安全会话建立协议,如SSL/TLS,建立的安全会话访问电信终端1的在线应用。例如,服务器4是Apache httpd或Jakarta Tomcat服务器。另外,服务器4包括用户认证模块40和数据库41。优选地,用户认证模块40和数据库41被实现为程序软件模块。数据库41可包括:例如,主密钥(MK)42;多个用户数据集400,每个包含用户标识符(ID_U)43;个人识别码(PIN_U)44;以及可能的对称令牌密钥(K_T)45。个人识别码(PIN_U)44是用户和服务器4之间共享的密钥,而且可包括生物测定数据(生物测定标识符)。而且,数据库41可包括公钥(k)46。包括公钥(k)46的证书还可以是用户数据集400的用户特定部分,即在特定用户使用特殊令牌的时间期间,其序列号(SN_T)可暂时地被指定为ID_U。用户将能选择服务器是否记住最后的SN_T-ID_U关联。这样做会提供方便,即使用户将令牌插入各不同通信终端。另一方面,这种情况下释放令牌可以将ID_U透露给该令牌的下一个用户。不会威胁认证,但会影响与服务器相关的用户私密性。
如图2所述,每个认证模块2包括几个功能模块:证书模块25、认证号生成器26、显示模块27、以及可能的服务器认证模块28和/或选择模块29。另外,认证模块2可包括带非对称密钥对(k,k^{-1})201的内存模块,该非对称密钥对包括私钥(k^{-1})和公共密钥(k),优选被整体保护。为了识别,认证模块2可以与公知的令牌标识符SN_T相关联。优选地,认证模块2是非个人的而且兼容PKSC#11或MS-CAPI(微软加密应用编程接口)或其它标准设备接口。在实施例中,认证模块2包括带令牌标识符203的内存模块。令牌标识符例如通过浏览器的预填表特性也可以存储在通信终端1上。另外,认证模块2包括带令牌密钥(K_T)202的安全内存模块,或者在非最适合优情况下包括带主密钥(MK)204的内存模块。密钥对k和k^{-1}对于所有认证模块2可以是相同的(令牌可以非个人的原因),然而令牌密钥K_T是唯一的,并且是特定于认证模块2的。利用主密钥MK,可从令牌标识符SN_T根据下式生成令牌密钥K_T:
K_T=E_(MK}(SN_T)
因此,不需要集中存储所有令牌密钥。作为替代,知道主密钥的任何人可从令牌标识符来动态生成令牌密钥。主密钥通常只由服务器4拥有和掌握。主密钥,确切地说是令牌密钥以不可输出方式保存在防篡改的密钥存储器。建议令牌私钥k^{-1}也保存在同一安全存储器中,但是,根据所建议的方法,后者泄露给公众仍然可以不危害已发的认证模块2的总体及其功能。
优选地,功能模块被实现为程序软件模块。软件模块的计算机程序代码是计算机程序产品的一部分,优选存储在计算机可读介质中,该介质可以在可插入通信终端1的数据载体上,集成在通信终端1的内存中,或者如图3所示,在集成到认证令牌设备20的内存中,该认证令牌设备20连接到通信终端1。
在实施例中,认证模块2被实现为兼容PKSC#11的可能的非个人认证令牌设备20。认证模块2因此是安全硬件令牌,其通过标准接口如cryptoki(RSA安全公司的“PKCS#11:密码令牌接口标准”)或者微软的CryptoAPI(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/seccrypto/security/cryptography_cryptoapi_and_capicom.asp)参与安全会话建立协议,例如参与SSL/TLS握手。如图3所示,除了上面认证模块2的内容中描述的功能模块和内存模块外,认证令牌模块20包括设备接口21、数据输入键23或者传感器24形式的数据输入装置,以及可能的显示器22。可选地,传感器24被配置用于生物测定数据(生物测定标识符)的输入,且包括例如指纹阅读器。设备接口21被配置用于将认证令牌设备20可移除地连接到通信终端1。设备接口21可以是基于接触的,包括例如USB接口(通用串行总线接口),或者无接触的,包括例如蓝牙或者红外接口。认证模块2也可以分为离线设备(C/R或一次口令(OTP))和通信终端1中的某个软件模块,用来给客户端应用软件补充如从数据集中随机选取比特或认证基础号的功能。
在以下段落中,参考图4、5、6、7、8、9和10描述的是执行所建议的用户认证方法的可能的次序,以及用户认证模块40和功能模块的功能性。基本的假设是用户基础设备不必运行可信赖的计算机基础。但是,必须假定特别的SSL/TLS实现不被如可执行的特洛伊木马破坏,从而正确操作。虽然不预期最终用户特别了解信息技术,例如不预期能够可靠地检查受SSL/TLS保护的会话中的服务器证书的有效性。类似地,也不预期能可靠区分“UBS.COM”和“U8S.COM”。
为访问服务器4中驻留的在线应用,用户因此在他的通信终端1上操作客户端应用程序。作为安全会话建立协议例如SSL/TLS握手协议的一部分,服务器4使用公钥证书对其自身进行认证,假定但不进一步陈述用户正确地验证此证书是真的属于预期的站点。
如图4所示,在步骤S1中,例如通过根据SSL/TLS向服务器4发送“ClientHello”报文,通信终端1根据安全会话建立协议发起与服务器4的安全会话建立。
在步骤S2中,根据安全会话建立协议,例如通过根据SSL/TLS向通信终端发送“ServerHello”报文,服务器4响应步骤S1的发起报文。
在步骤S3中,作为安全会话建立协议的一部分,服务器4向通信终端1发送证书请求或者“Finished”报文,例如根据SSL/TLS的“CertificateRequest”或“Finished”报文。
在步骤S4中,根据安全会话建立协议,通信终端1的数据集生成模块基于先前与服务器4交换的安全会话建立协议报文构建数据集。例如,根据SSL/TLS,通过应用hash函数,数据集生成模块从先前的安全会话建立协议报文来构建数据集(所交换的安全会话建立协议报文可能比明确列在这的多)。
在步骤S5中,步骤S4中生成的数据集(例如hash和今后指定为“hash”的)分别传递给认证模块2或认证令牌设备20。例如使用通信终端1和/或认证令牌设备20中的共享内存区域,通过设备接21可以实现在通信终端1和认证模块2或认证令牌设备20之间分别传递信息。
在步骤S6中,证书模块25通过使用带密钥对201的内存模块的私钥k^{-1}对步骤S5中接收的数据集进行密码签名来生成电子签名。在变量中,被嵌入到包含公共签名校验密钥(k)46的签名中的签名证书包括所使用的特定令牌的序列号SN_T。
在步骤S7中,步骤S6中生成的电子签名传递给通信终端1。
在步骤S8中,通信终端1对步骤S3中接收的证书请求准备响应,例如根据SSL/TLS的“CertificateVerify”报文,包括在步骤S4中生成的数据集和在步骤S6中生成的电子签名。
在步骤S9中,在步骤S8中准备的安全会话建立协议报文被通信终端1传送给服务器4。
在步骤S10中,利用公钥(k)46,服务器4基于在步骤S9中接收到的数据集来验证在步骤S9中接收的电子签名。由于认证模块2是非个人的事实,因为k^{-1}通常对所有令牌是相同的,“CertificateVerify”报文并非真的对客户端应用进行认证,而是仅确保客户端应用使用令牌来建立到服务器的安全会话,并捕获数据集为以后使用。如果步骤S4中生成的数据集是基于“Finished”报文,则不需要步骤S5-S9,而且在步骤S10中,服务器4只捕获数据集(hash)为以后使用。如果有能够检查“Finished”报文的内容或者已加密的“Finished”报文的客户端扩充或插件或外部“监听器”,则使用此方法。优选地,这种扩充较小而且独立于平台,因此在客户端应用的内部或者甚至在制造时集成在客户端应用中。
在步骤S11中,认证号生成器26从步骤S5中接收的数据集(hash)生成认证基础号N_T。使用与认证模块2关联的令牌密钥K_T,从数据集生成认证基础号N_T:
N_T=E_{K_T}(hash)
优选地,N_T缩短到个人识别码PIN_U的定义的长度(在一实施例中通过截短它来实现)。
在步骤S12中,服务器4的用户认证模块40向通信终端请求交易认证号(TAN)。在如步骤S6中公钥46在特定令牌(token-specific)公钥证书中的情况下,用户标识符ID_U可连同请求一同传送,例如反映与给定令牌SN_T一起使用的最近的ID_U,即由于已经在HTML表单域中预填充ID_U,从而不需要由用户输入,而只需要在该令牌被另一个用户使用的情况下校正ID_U即可。
在步骤S13中,将步骤S11中生成的认证基础号N_T传递给通信终端1。
在步骤S14中,通信终端1的控制模块请求并接收来自用户的个人识别码PIN_U。根据该实施例,利用数据输入装置12或针对生物测定数据(生物测定标识符)的传感器,例如指纹阅读器(例如对不同的手指印记分配不同数字或字符),来输入个人识别码PIN_U。
在步骤S15中,通信终端1的控制模块根据在步骤S14中接收的个人识别码PIN_U和在步骤S11中生成的认证基础号N_T,例如使用在某种程度上对用户透明的伪随机函数PRF,来生成交易认证号TAN:
TAN=PRF_{PIN_U}(N_T)
作为子实施例,通信终端1可以接收该PIN,并且S15可在非个人的认证令牌设备20上执行,然后TAN被返回给通信终端1。
在这种情况下,作为子实施例,生成“CertificateVerify”报文的步骤和生成交易认证号TAN的步骤可以进行不同的分组:如果用来创建数据集(hash)的函数h满足加密hash函数的特性,则例如HMAC构造(Krawczyk,H.等人的“HMAC:Keyed-Hashing for MessageAuthentication”,Request for comments 2104,1997年2月)则可用来实现hash函数h:PIN_U将成为数据集(hash’)的CertificateVerify计算的自变量。在此实施例中,认证基础号N_T’成为交易认证号:TAN=N_T’。对于此实施例,基本上,由于获得数据集(hash’)以及hash函数h的除一个之外的全部输入,即PIN_U,重建PIN_U是不可行的。HMAC是满足这个的一个函数。HMAC还可用作伪随机函数PRF,且用来生成交易认证号TAN:
TAN=HMAC_{PIN_U}(U_T)=h(K+opad‖h(K+ipad‖N_T))。
在此情况下,以某种唯一和特定方式(例如根据PKCS#5)从PIN_U导出K。符号+指模2加,‖指串连接。Opad和ipad是常数值。特别当用户自己不必计算TAN时,除了仅十进制数字[0..9]之外的其它字母表更可取。
交易认证号TAN只对一个安全(SSL/TLS)会话有效。
在步骤S16中,为响应步骤S12中接收的请求,通信终端1向服务器4传送生成的TAN、所确认的或由用户新输入的用户标识符ID_U、以及由用户输入的令牌标识符SN_T,除非包含k的令牌证书还包括SN_T(如S6中可选的)。例如,SN_T从带令牌标识符203的内存模块读出,或者从与浏览器关联的通信终端1中的内存读出。
在步骤S17中,服务器4的用户认证模块40确定在数据库40中个人识别码(PIN_U)44被分配给步骤S16中接收用户标识符ID_U。
在步骤S18中,利用与认证模块2关联的令牌密钥K_T,用户认证模块40从步骤S10中接收的数据集(hash)生成认证基础号N_T。在实施例中,利用主密钥(MK)42,从步骤S16中接收的令牌标识符SN_T生成令牌密钥K_T。然而,如果令牌密钥(K_T)45存储在服务器4上,就不需要用MK重新计算,而是可以完全随机选择。如果令牌标识符SN_T是在安全会话建立协议期间交换的令牌的客户端证书的一部分,例如,客户端证书为步骤S3和S9之间的“Client certificate”报文,则在步骤S16中,不用将SN_T从通信终端1传送到服务器4。
在步骤S19中,用户认证模块40根据步骤S17中确定的个人识别码PIN_U和步骤S18中生成的认证基础号N_T来生成交易认证号TAN。
在步骤S20中,通过与步骤S19中生成的交易认证号比较,用户认证模块40来验证步骤S16中接收的交易认证号。如果验证结果是肯定的,则通信终端1可以访问服务器4,或者在实施例中,服务器继续后面参考图8所描述的步骤S41。
如图5所示,在替选实施例中,包括步骤S13、S14和S15的方框A,由包括步骤S21、S22、S23和S24的方框B代替。
在步骤S21中,分别通过认证令牌设备20或认证模块2的数据输入装置23或传感器24,从用户接收个人识别码PIN_U。
在步骤S22中,如在步骤S15的上下文中所描述的,证书模块25根据步骤S21中接收的个人识别码PIN_U和步骤S11中生成的认证基础号N_T来生成交易认证号TAN。因此,在步骤S15的上下文中所描述的子实施例也适用于图5所示的实施例。
在步骤S23中,将在步骤S22中生成的交易认证号TAN传递给通信终端1。
在步骤S24中,交易认证号TAN在通信终端1中接收,且可能在显示器11中显示。随后,通信终端1继续上面的步骤S16。
如图6所示,在替选实施例中,包括步骤S13、S14和S15的方框A由包括步骤S31和S32的方框C代替。
在步骤S31中,显示模块27在显示器22上显示步骤S11中生成的认证基础号N_T。
在步骤S32中,通信终端1的控制模块从用户接收交易认证号TAN。在步骤S32中输入的交易认证号被用户定义为显示器22上显示的认证基础号N_T和用户个人识别码PIN_U的组合:
TAN=f(N_T,PIN_U)
通常,有许多可能性来定义适当的函数f。在1993年5月、IEEE出版社的研究安全和私密的IEEE专题学报中Molva,R.和G.Tsudik的“Authentication Method with Impersonal Token Cards”中,建议使用模10求其自变量的和。此建议是合适的,但有许多其他函数同样工作得很好。按照Swivel’PINsafe的另一方法是,例如显示长度为10的N_T且使用数字PIN中的数字来挑选。随后,通信终端1继续上述步骤S16。
在图7所示的实施例中,认证模块2专门通过通信终端1中的程序软件模块来实施。与图4所示的实施例相比,根据图7的实施例不包括步骤S5、S7和13,因为通信终端1和通信终端1外部的认证模块(令牌设备20)没有数据交换。通信终端1和认证模块2之间使用软件接口或通信终端1中的共享内存区域进行信息交换。否则,如上面参考图4的描述来执行步骤S1、S2、S3、S4、S6、S8、S9、S10、S11、S12、S14、S16、S17、S18、S19和S20。
如图8所示,在步骤S41中,服务器4从步骤S9中接收的数据集(hash)生成服务器认证码。通过对数据集(hash)应用公共函数g以及使用步骤S18中确定的令牌密钥K_T来加密,从而生成服务器认证码A_T:
A_T=E_{K_T}(g(hash))。
A_T的构造基本上与认证基础号N_T的构造相同。唯一的区别是数据集(hash)在用令牌密钥K_T加密之前,要应用广泛认知的函数g。函数g又不需要复杂。它可以像计算hash值的余数一样简单。此服务器认证的本质是可能看到数据集(hash)和认证基础号N_T两者的对手不能构造A_T,因为令牌密钥K_T是保密的以及加密函数E_的特性(在一个实施例中,其可以是对称密码如3-DES)。
在步骤S42中,步骤S42中生成的服务器认证码被传送到通信终端1。
在步骤S43中,步骤S42中接收的服务器认证码被通信终端1显示在显示器11上。
在步骤S44中,服务器认证模块28通过将公共函数(g)应用于步骤S5中接收的数据集并使用与认证模块2关联的令牌密钥K_T来加密,而从该数据集(hash)生成服务器认证码。
在步骤S45中,显示模块27在显示器22上显示步骤S44中生成的服务器认证码。
在步骤S46中,通过与显示器22上显示的服务器认证码比较,用户来验证显示器11上显示的服务器认证码,从而对服务器4进行认证。
在如图9所示的实施例中,认证模块2专门通过通信终端1中的程序软件模块来实现。与图8所示的实施例相比,在根据图9的实施例中,在步骤S47中,显示模块27在显示器11上显示步骤S44中生成的服务器认证码。此外,在步骤S48中,通过与服务器认证模块28的服务器认证码比较,用户来检验显示器11上来自服务器4的服务器认证码,从而对服务器4进行认证。
至此所建议的认证模块2可用来对单一机构(使用单一个人识别码)来认证用户。在另一实施例中,认证模块2被配置用于多个机构,即用于对多个机构的服务器认证用户。用于实现多机构认证模块的优选方法是用特定于机构的主密钥MK_I组来代替主密钥MK,以及用特定于机构的令牌密钥K_{IT}组来代替令牌密钥K_T,其中K_{IT}指认证模块与机构I共享的令牌密钥。每个服务器4与特定机构相关联,且使用特定于机构的令牌密钥来生成认证基础号。与单一机构设置类似,令牌密钥K_{IT}可根据下式动态生成:
K_{IT}=E_{MK_I}(SN_T)
这个密钥然后用来为认证基础号和交易认证号生成特定机构值:
N_{IT}=E_{K_{IT}}(hash),
和TAN=f(N_{IT},PIN_{IU})。
作为结果的TAN然后可被用户用来认证(服务器4的)机构I。个人识别码PIN_{IU}不仅是特定用户的,而且是特定机构的。因此,通过已存储包括多个特定于机构的令牌密钥的令牌密钥集或者已存储多个特定于机构的令牌标识符的令牌标识符集和用于动态生成特定于机构的令牌密钥的主密钥组,多机构认证模块与多个特定于机构的令牌密钥相关联。选择模块29被设计为使用户分别选择多个可能机构范围中之一来用于认证模块2或者认证令牌设备20。针对用户选择的机构范围,认证模块2使用一个相应的特定于机构的令牌密钥来生成认证基础号。例如选择模块29在显示器22或11上给用户呈现所支持的机构列表,且通过数据输入装置23或12来接收用户选择。在替选实施例中,将数据输入装置23或12的特定密钥分配给特定机构。
在认证模块2未安全持有多个K_{IT}而只支持一个的另一实施例中,加入在线全部发行机构(AS)。这增加了机构组成为认证模块2的发行组的一部分的灵活性。认证模块2创建现时R_T。用户必须从认证模块2的显示中拷贝两个值,即代替SN_T,生成TAN_AS且需要在用户认证阶段期间当SSL/TLS会话成功建立之后被输入:
TAN_I=f(R_T,PIN_U_I)
TAN_AS=E_MK(R_T,Hash,ID_I),
其中ID_I是短标识符串,如对“Institution XYZ”是“XYZ”。
机构I关注两个值,对单独一个值不能做什么。机构I将TAN_AS转发给发行机构AS并接收回复的R_T和Hash。假定AS和I之间的关系是经相互认证的和保密的。
除非为犯罪目的,发行机构AS决不会看到TAN_I,因此发行机构AS可确定PIN_U_I是没有风险的。然而,在该实施例中建议只选择之前讨论的健壮加密hash函数f。
类似地,此方法防止机构I_1...I_n试图知道彼此用户的PIN。
此实施例大大简化了新机构的增加。基本上,附加的ID_I_n串可被简单地加到认证模块2。如果认证模块2充满了假的ID_I串,这成为可用性问题但不真的破坏所建议方法的安全性。
在实施例中,认证模块2或认证令牌设备20,分别被用来补充一次口令(OTP)系统(例如Lamport式的OTP(Lamport,L.“PasswordAuthentication with Insecure Communication”,ACM通信,卷24,1981,第770-772页)或安全ID令牌(http://www.rsasecurity.com/))。在这种情况下,用户采用OTP作为步骤S15的PRF或者f的输入(代替PIN_U)。OTP通常包括PIN_U。任何其它的都保持基本上不变。作为协议中的小修改,这允许使用已在使用的双因数安全元素的软件变量,如RSA的SecurID。
在另一实施例中,在认证令牌设备20激活前加入生物测定认证步骤。这意味着令牌在单独的过程中私人化,而且如果生物测定匹配,该令牌才开始服务该令牌的至少“临时”所有者。
在另一实施例中,如果用户的生物测定特性B_U不用来如前所述输入PIN_U,则生物测定数据被包含在认证基础号N_T的计算中。同样,该实施例中的服务器紧邻PIN_U存储B_U,因此认证模块2就本身而言保持完全可转移。
N_T”=E_{K_T}(hash,B_U)
必须指出图4、5、6、7、8和9中所示不同步骤的顺序是可行的,没有偏离本发明的范围。
用于改变个人识别码的实施例
从最终用户教育的观点,有个简单的行为准则是重要的。对所描述的所有实施例,这当然是“决不要把你当前的或新的个人识别码输入到网页浏览器!”对于包括附加硬件的实施例,比如如图5用于输入个人识别码的模块,该准则甚至是:“决不要使用你的主键盘将PIN输入到屏幕!”。然而优选地,对于用户必须使其有可能周期性地、主动地改变他的个人识别码PIN_U。
例如,为了改变个人识别码PIN_U,另一安全会话被建立,基本上执行如上所述相同的步骤。具体地,如图4、5或7所示,在步骤S1到S10之后,在步骤S11中生成认证基础号N_T。
在步骤S14或步骤S21中分别响应涉及改变个人识别码PIN_U的用户或服务器指令,旧的个人识别码PINold_U和新的个人识别码PINnew_U分别在通信终端1、认证令牌设备20或者认证模块2从用户接收。优选地,为避免输入错误,新的个人识别码PINnew_U通过两次输入来确认。
分别在步骤S15或S22中,不是生成交易认证号TAN,而是生成识别改变码(PCC)。基本上,用于计算PCC的PRF必须使个人识别码可恢复。例如异或(XOR)函数具有这个特性。
然后针对适当选择的函数f0,PCC由PCC=f0(N_T,PINold_U,PINnew_U)计算。例如,如果f代表按位的模10加法,f0可定义为:
f0(N_T,PINold_U,PINnew_U)=f(f(N_T,PINold_U),PINnew_U)。
例如,如果N_T=123,PINold_U=345,以及PINnew_U=781,则f(N_T,PINold_U)=468且f(f(N_T,PINold_U),PINnew_U)=149。
接着,在步骤S16、S23、S24中,识别改变码(PCC),而不是交易认证号TAN被传送给服务器4。如上所述执行步骤S17和S18。因此在步骤S19和S20中,当确保(通过验证PINold_U)真的是合法用户更改了个人识别码PIN_U,而不是例如利用未锁定终端(其中正在进行的会话未被合法用户注意)的某人更改时,服务器4不是验证交易认证号TAN,而是从用户提交的PCC中导出PINnew_U。在针对f0给出的示例中,给出了对盲置换攻击没有防护会导致业务拒绝。然而,在当前主要的会话建立协议(SSL/TLS)的上下文中,补充报文完整性保护将防止这种攻击。
在另一实施例中,改变个人识别码PIN_U用三个安全会话建立来实现。
第一,用户必须重新提供PINold_U;第二,用户给出PINnew_U;第三,用户再次给出PINnew_U以避免输入错误。
如果PIN更改是服务器发起的,为了用信号通知这个协议的状态,服务器可以通告假的“DistinguishedName certificate_authorities”,如″http://www.rfc.net/rfc2246.html#s 7.4.4″——针对这三个步骤中的每个的另一权威所描述的。类似地,令牌需要有四个不同证书,即一个用于常规认证,三个用于该实施例。
可替选地,当计算认证基础号N_T时,认证令牌设备20或者认证模块2分别包括步骤标识符。因此,分别在认证令牌设备20或认证模块2上需要的不同证书的数量可以被减少。
如果个人识别码的改变是客户端发起的,则服务器应至少提供两个CA,一个用于常规认证,一个用于改变个人识别码的步骤1。
具有无加密认证模块的实施例
在另一实施例中,认证令牌设备20或者认证模块2都不必为加密配置。
在本实施例中,认证基础号N_T通过加密hash函数比如HMAC使用令牌密钥K_T作为密钥来计算,这以很少量的计算开销提供了同样的安全性。在本实施例中同样需要共享密钥和安全存储器。例如,如在步骤S15上下文中描述的子实施例所描述的,加密hash(CH)可用来代替步骤S11中使用的加密:
N_T=CH_{K_T}(hash)。
它还适用于如在步骤S41或S44中的加密用法。
具有替代的交易认证号(TAN)的实施例
在本实施例中,在步骤S4后,以先前在步骤S14或S21上下文中所描述的方式(图4)输入个人识别码PIN_U。随后,键控加密摘要值,比如加密hash,从个人识别码和在通信终端和服务器4之间交换的安全会话建立协议报文生成。对于协议流,但不是为安全目的,在此步骤还包括序列号SN_T可能会有用。利用键控加密摘要函数,例如将与服务器4共享的密钥用作(hash)密钥的所谓的“键控hash函数”,来生成键控加密摘要值。依赖于本实施例,用作(hash)密钥的是令牌密钥K_T、个人识别码PIN_U或者作为在安全会话建立协议中建立会话的基础的预主密钥。具体地,如果个人识别码PIN_U是适当选择的密钥,则个人识别码PIN_U可用作(hash)密钥。因此,认证令牌设备20从具有其自己的令牌密钥K_T或私有签名密钥k-1或两者中解除,使得认证模块2或认证令牌设备20分别只是“受托观察者”。服务器4将立即检测任何应用级指令,比如“送大量的钱给xyz人”是否来自经认证的SSL会话内。
例如,在步骤S5中,通信终端1从其与服务器4交换的安全会话建立协议报文生成的数据集(hash),以及个人识别码PIN_U分别被传递给认证模块2或认证令牌设备20。在步骤S6中,证书模块25从数据集(hash)和个人识别码PIN_U生成加密hash。在步骤S6中生成电子签名是可选的。在步骤S7中,(带或不带电子签名的)加密hash被传递给通信终端1。在该子实施例中,PIN_U也可以在步骤S6中只由用户直接输入到认证令牌设备20中。
可替选地,在步骤S4中从个人识别码PIN_U以及从通信终端1和服务器4之间交换的安全会话建立协议报文生成加密hash。因此,由于所有必要的步骤在步骤S4中被执行而省略步骤S5到S7。
在步骤S8中,通信终端1对在步骤S3中接收的证书请求准备响应,例如根据SSL/TLS的“CertificateVerify”报文,包括分别在步骤S6或S4中生成的加密hash,以及由用户确认的或新输入的用户标识符ID_U。
在步骤S10中,服务器4使用存储在服务器4中的用户的个人识别码,来生成加密hash,并且基于在服务器4中生成的加密hash和在步骤S9中从通信终端1接收的加密hash的比较来验证用户的真实性。例如,如果验证结果是肯定的,通信终端1可以访问服务器4。因此,加密hash作为用于上述交易认证号TAN的可替选的数据元素被生成、交换和验证。
如果服务器4针对用户已被认证,则服务器4继续步骤S41。然而,在进一步的子实施例中,服务器认证码A_T在步骤S4-S6之后立即显示。具有外部询问/响应设备的实施例
在本优选实施例中,如图7和10所示,认证模块2专门用通信终端1中的程序软件模块来实现。步骤S1、S2、S3、S4、S6、S8、S9、S10和S11基本上如上面参考图4所述的来执行。作为步骤S11的一部分,在显示器11上显示认证基础号N_T。在子实施例中,认证模块2仅充当受托观察者,认证基础号(N_T”’)被生成为数据集的短派生数(例如6或8位数字),该数据集从协议报文,例如从常规CertificateVerify报文生成。基本上,认证基础号N_T可以是不能被MITM以可利用方式来确定的任何其它会话相关的标识符,例如会话密钥的短摘要和服务器公钥可能是计算认证基础号N_T作为安全会话标识符来抗MITM攻击的另一方式。“Finished”报文或者加密的“Finished”报文,或者外部可观察到的握手报文的整个序列的hash是构成该会话相关标识符(分别为N_T或N_T”’)的其它候选,下面更详细地描述。因此,在本实施例中,利用令牌密钥K_T来构造N_T是可选的。类似地,私有签名密钥k-1同也可以是可选的。
随后,如图10所示,在步骤S51中,用户将认证基础号N_T(作为客户侧生成的询问)和他的个人识别码PIN_U(例如作为码或生物测定数据)输入到未连接到通信终端1的传统C/R令牌设备5中。在步骤S52中,响应步骤S51中输入的值,C/R令牌设备5基于其自身逻辑生成并显示令牌响应值。在步骤S53中,代替步骤S14和S15,用户将来自C/R令牌设备5的令牌响应值作为交易认证号输入到通信终端1中。
在步骤S54中,为响应在步骤S12中接收的请求,通信终端1将先前作为交易认证号TAN输入的令牌响应值传送给服务器4。
基本上,服务器4分别如上面参考图4或7所述来执行步骤S17到S20;然而,对应于C/R令牌设备5的逻辑,服务器4生成并验证令牌响应值来作为交易认证号TAN。如果交易认证号,即令牌响应值的验证结果是肯定的,则通信终端1可以访问服务器4,或者,在实施例中,服务器4分别如图8或9所示继续步骤S41。
例如,C/R令牌设备5基于在数百万银行和信用卡上流通着的EMV芯片(Europay International,MasterCard International和VisaInternational)(见http://www.emvco.com)。由EMV芯片生成的某些令牌响应值不包括个人识别码PIN_U。作为每个MasterCard芯片认证程序(CAP)的卡ICC与服务器(发行者)共享密钥,该密钥具有与先前K_T类似的角色。在正确输入个人识别码PIN_U和询问(认证基础号N_T)后,将会创建除其它以外(比如CVV)还包含询问以及正确个人识别码PIN_U已被呈现的权威确认的密码(通常用3DES)。典型地,未被连接的带数字键区的阅读器用来输入认证基础号N_T和个人识别码PIN_U,并且令牌响应值显示在未被连接的阅读器的显示器上。在认证基础号N_T”’被缩短到4或6位数字的情况下,例如,MITM能与客户端在终端上建立第二欺诈会话的可能性明显增大,因为该客户端的短数据集(hash)决定的对认证基础号N_T”’的输入与在服务器和MITM之间打开的主欺诈会话有冲突。MITM多半可以离线验证是否发现冲突,没有任何一方注意到该无冲突的推测。为了防止这样的攻击,“缩短”算法绝不能是简单hash算法或对MITM完全了解的单向摘要函数,而是需要有进一步的特性。基本上,当使用C/R设备5时,要求离线推测“会话知晓(session awareness)”对于MITM是没有吸引力的,如同要求离线推测个人识别码PIN_U对于任何其它类型的攻击缺乏吸引力一样。这意味着在缩短的hash中找冲突必须不再是离线可验证的,而应该需要与在线权威,即限制推测数量的服务器交互。C/R令牌设备5的对称密钥(具有比用户可预期的更高平均信息量,来记为密码)用来通过加密对MITM隐藏伪随机选择器。这基本上强迫MITM在全部36字节长的hash(数据集)上找冲突,这几乎不可行的。
因此,在实施例中,作为步骤S11的一部分,在客户侧,认证模块2,例如作为客户端应用的一部分(例如浏览器),生成短随机数,如4位数字,后面称为“随机选取数字”。该随机数用来从协议报文,例如从TLS握手的“CertificateVerify”或“Finished”报文的36字节hash,生成的数据集中选择任意比特,例如该任意比特表示另一4位数字。随后,例如,后4位数字和“随机选取数字”作为8位数字的缩短的认证基础号N_T”’在显示器11上显示给用户。在步骤S51中,如上参考图10所述,用户将这个认证基础号N_T”’(作为客户侧生成的询问)和他的个人识别码PIN_U输入到C/R令牌设备5中。步骤S52到S54与如上面图10的上下文中所述的保持相同。
由于所述“随机选取数字”对MITM是未知的,C/R令牌设备5上的算法是适合的,其使得“随机选择数字”以加密形式发送到服务器4。这意味着由C/R令牌设备5生成的作为交易认证号的令牌响应值包括加密形式的“随机选取数字”。因此,服务器4被配置为从其所接收的响应恢复“随机选取数字”。例如,利用3DES(或另一个具有例如64比特块长的加密系统),响应是64比特。例如,对于响应,允许32个字符的包括文字和数字的字符集,因此响应将为13个字符长。因此,用户必须从C/R令牌设备5拷贝13个包括文字和数字的字符到客户端应用,例如浏览器表单域中。从可用性的立场,根据用户常规输入19位信用卡号码(包括CVV),输入用于询问的8位数字,加上用于响应的13个字符被认为是可接受的。这个方法的安全性相对于询问和响应的长度而增加或者减小。
在服务器侧,步骤S18被改变成利用令牌密钥K_T来解密“随机选取数字”,然后用来从数据集(hash)选取缩短的输入以计算缩短的认证基础号N_T”’。任何其他的保持与以前一样。
作为另一实施例,除由用户输入键盘之外,通过例如与http://axsionics.ch上描述的图形闪烁的其他方法将认证基础号N_T输入设备。重要的增强是闪烁-询问,通常完全由服务器创建,需要通过一些客户侧生成的安全会话标识符来修正。由于这种闪烁方法的实现优选具有某个客户侧的有效部件,比如浏览器(java)插件、Flash或者javascript,在某些实施例中,这可以用来获取例如服务器公钥和会话密钥摘要或其它类型的安全会话标识符,且将其包括到闪烁图像生成,即相关协议的询问中。优选对该有效部件进行签名,因为否则MITM容易侵入其更改版本,从而可能会呈现MITM的认证基础号N_T,而不是真正在客户端通信终端1中建立的认证基础号N_T。
在另一子实施例中(“在握手期间无客户端证书认证”),通信终端1的客户端应用软件模块,例如浏览器,设置有认证号生成器26,其配置为通过只读访问安全会话建立协议栈或者甚至通过作为“外来者”能够嗅探/捕获协议报文,来计算认证基础号N_Tiv作为安全会话标识符,抵抗MITM攻击。这样,在该子实施例中,不需要执行客户端证书认证,例如,不需要执行用于单向安全会话的步骤S3-S10,并且不再需要令牌设备驱动器比如MS-CAPI或PKCS11。
在步骤S11中,上述认证号生成器26被配置来计算认证基础号N_Tiv作为安全会话标识符,抵抗MITM攻击,概述如下:
a)基于数据集(hash)生成认证基础号N_Tiv,该数据集基于在通信终端1和服务器4之间交换的安全会话建立协议报文,所述报文不会被MITM知道(例如,由于在被加密作为输入前具有预主密钥);或
b)认证基础号N_Tiv从已知的输入数据和密钥生成,虽然在本实施例中,应该避免在客户端应用中需要令牌密钥K_T;或
c)认证基础号N_Tiv基于MITM也全部知道的输入数据生成,但是通过它们到安全会话建立协议的逻辑连接,确保了对MITM的抵抗。在本实施例中,使用服务器的公钥和确保新鲜度的东西(现时或时间戳)就足够了。例如,加密的预主密钥的hash,即MITM可观察到的报文,可以作为这样的现时。此时,重要的是,C/R令牌设备的逻辑确保,通过掌握询问和观察响应,MITM不能(离线)设置PIN推测攻击。
例如,认证号生成器26被配置为在客户端应用显示该抗MITM的安全认证基础号N_Tiv(询问)。例如,当用户在定义区域上,例如在浏览器中显示的锁上移动鼠标指针时,认证号生成器26使询问在该定义区域内例如在浏览器右下方对用户可见。
如上所述,用户将认证基础号N_Tiv(作为询问)和他的个人识别码PIN_U输入到C/R令牌设备,方法按如上所述的进行。
在客户侧没有密钥只有现时的实施例
如Request for Comments 2246中所描述的,任意响应而不是PKCS1编码签名有可能使CertificateVerify报文结构过载。这有可能使令牌不再需要令牌密码K_T。在本实施例中,与上述“具有可替选交易认证号(TAN)的实施例”相似,在步骤S6中,认证模块2或认证令牌设备20通过利用公钥k_S(现时,为“一次性使用的数”)来加密hash(数据集)、个人识别码PIN_U和附加的一个或两个真实的随机现时N_Tt(和N_Ta)来分别生成密码。公钥k_S必须依次分别预安装在认证模块2或认证令牌设备20上,以防止MITM欺骗系统使用他自己的密钥k_MITM。在多机构情况下,公钥k_S属于服务器4或认证服务器AS(认证服务器与公钥k_AS关联)。可选地,所述密码的输入值在用公钥k_(A)S加密前,用密钥k-1签名。类似地,作为S15的每个子实施例,在加密前可应用加密hash函数(HMAC)。
在步骤S7-S9中,并非如大部分“安全会话建立协议”所需要的传送“电子签名”,而是将所述这个密码作为非结构化的数据传送,没有协议规范强加的任何限制。在其他协议部分也在认证令牌设备20上而不在通信终端1的客户端应用中执行的实施方式中,例如生成会话密钥,其它协议报文比如“ClientKeyExchange”报文可用来传送密码。
在步骤S10中,服务器4解密该密码。这会向服务器提供现时N_Tt、个人识别码PIN_U以及可能的现时N_Ta。现时N_Tt是个“丢弃”现时,作为调味加入来防止pin推测攻击。
在步骤S10中,服务器4还生成如在步骤S4上下文中所描述的“hash”。步骤S11-S17是不需要的。
在步骤S18-S20中,认证模块40不再生成认证基础号N_T和交易认证号TAN,而是仅仅比较hash和在步骤S10中解密的PIN_U。从所述密码导出的hash与服务器4中生成的hash相比较,并且个人识别码PIN_U与存储在数据库41中的个人识别码相比较。如果加密hash函数在S6中使用,在比较前这些值首先也需要在服务器侧进行加密hash运算。所有其它的保持相等。这样所述密码或加密hash作为用于上述交易认证号TAN的可替选数据元素分别生成、交换和验证。
如果服务器4还对用户认证服务器4,服务器仅仅向用户显示从所述密码解密的现时N_Ta,来代替步骤S41到S43的计算。步骤S44-S46的比较保持不变;计算是不需要的,仅在显示器22上简单地显示现时N_Ta。
作为本实施例的补充,还可实现改变个人识别码PIN_U的协议。新的个人识别码PIN_U仅是S6中的密码的另一输入。
尽管事实上安全会话建立协议标准没有针对其协议字段规定固定字段长度,一些客户端应用实现可以严格地限制所分配的例如用于“CertificateVerify”报文的内存。在这种情况下,需要关注空间优化公钥密码系统,比如椭圆曲线密码系统。
本实施例还有一子实施例,其中个人识别码PIN_U由用户计算。为此,在步骤S6中,个人识别码PIN_U被省略。如步骤S31所述将现时N_Tt显示给用户。如步骤S32所述计算交易认证号TAN。用于从上述认证基础号N_T和个人识别号PIN_U生成交易认证号TAN的其它变量可被类似地应用到认证基础号N_T。
具有短(可能单独使用的)密钥的具体实施例
码(或密钥)表如印痕迹列表(scratch-list)或索引的印痕列表(如“iTAN”、“索引的印痕列表”、“访问卡”)被金融机构广泛使用,但它们易受中间人的攻击。上面的“在客户端没有密钥只有现时的实施例”可被扩展以实现“双因素”认证级别:
步骤S6a(在图4、5、6和7中被表示为步骤S6):如果访问卡有比如100个条目,即典型的4-6个数字字符(K_SSU)的短“密钥”,则在步骤S4中生成的数据集(先前握手报文的hash)被压缩直到它可以作为访问卡的密钥表上的查找索引。
在步骤S6b(在图4、5、6和7中被表示为步骤S6)中,被压缩的值(典型的2字符长)(例如被认证模块2或认证令牌设备20)作为索引显示。有可替选的方法将查找索引传递给客户端应用程序。例如,上述“DistinguishedName certificate_authorities”列表作为“隐藏信道”可表示让认证模块2或认证令牌模块20分别知道步骤S6b中显示什么索引的另一方法。
在步骤S6c(在图4、5、6和7中被表示为步骤S6)中,除了先前在步骤S6中输入的值之外,还输入通过会话导出的查找索引来查找的密钥K_SSU。由于现时N_Tt的高度随机性,密钥K_SSU可用几次。如果客户端应用不允许在安全会话建立协议报文(具体是CertificateVerify报文)中传输超出正常报文长度的密码,还有另一基于“没有交易认证号(TAN)的实施例”的实施例,以上内容通过下面步骤扩展:
步骤S6a如上所述保持不变。因为现时N_Tt的随机性不可用,这样的密钥K_SSU只能用一次。在步骤S6b’(代替步骤S6b)中,服务器4记录迄今为止使用的所有查找。如果有冲突,服务器4触发重新握手,其被重复直到到达一个未使用的索引。在这种情况下,“DistinguishedNamecertificate_authorities”方法可能更有效。在某一使用级别之后,新访问卡被带外分发。
在步骤S6c’(代替步骤S6c)中,在没有现时的情况下生成加密hash,并且使用密钥K_SSU来代替密钥K_T。然后,随后的步骤保持不变直到步骤S15。在步骤S15中,因为密钥K_SSU是短的,因此重要的是加密hash函数是这样的:有效加密hash N_SSU=CH_{K_SSU}(hash,PIN_U)不能仅仅由一对个人识别码PIN_U和密钥K_SSU获得,而是被很多对个人识别码PIN_U和密钥K_SSU获得,直到个人识别码PIN_U和密钥K_SSU两者的组合“密钥空间”的尺寸。通过这个,攻击者在推测攻击中将不会知道他是否已发现正确的个人识别码PIN_U,而不得不总是向服务器4给出加密hash N_SSU来验证其推测。还因为hash典型地是40字节长,推测字典(guessing dictionaries)需比这个组合的密钥长很多,另外将会话绑定到认证,这里hash作为“调味”。如果该密钥空间有足够的平均信息量,使得推测攻击占用比典型的服务器侧登陆超时时间更长,那么这可以作为一个低端解决方案。
为防止对个人识别码PIN_U的密钥记录攻击,将个人识别码PIN_U和密钥K_SSU的组合输入终端,来代替单独地将其输入终端。
类似地,密钥K_SSU可用于上述基于交易认证号TAN的主要的和其它的实施例。
Claims (47)
1.一种对使用通信终端通过电信网访问服务器的用户进行认证的方法,所述方法包括:
从所述用户接收个人识别码;
从所述通信终端和所述服务器之间交换的安全会话建立协议报文生成数据集;
使用所述个人识别码,基于所述数据集生成交易认证号;
将所述交易认证号从所述通信终端传送到所述服务器;以及
在所述服务器中基于与所述通信终端交换的所述安全会话建立协议报文验证所述交易认证号。
2.根据权利要求1所述的方法,其中所述方法还包括,在与所述通信终端关联的认证模块中,从所述数据集生成认证基础号;其中使用所述个人识别码,从所述认证基础号生成所述交易认证号;其中所述方法还包括,在所述服务器中,从被交换的所述安全会话建立协议报文生成认证基础号;其中所述交易认证号在所述服务器中使用在所述服务器中生成的所述认证基础号来验证。
3.根据权利要求2所述的方法,其中所述方法还包括,将所述认证基础号和所述个人识别码输入到未连接到所述通信终端的询问/响应令牌设备;其中在所述询问/响应令牌设备中,基于所述认证基础号和所述个人识别码生成所述交易认证号作为令牌响应值;其中所述方法还包括,在将所述交易认证号传送给所述服务器之前,将所述交易认证号输入进所述通信终端。
4.根据权利要求2或3所述的方法,其中从所述数据集生成所述认证基础号包括生成随机数,从所述数据集选择被选数字,所述数字由所述随机数的位数确定,以及根据所述被选数字和所述随机数的位数构成所述认证基础号。
5.根据权利要求1所述的方法,其中在与所述通信终端关联的认证模块中,利用与所述服务器共享的密钥作为密钥,从所述个人识别码以及在所述通信终端和所述服务器之间交换的所述安全会话建立协议报文生成所述交易认证号作为键控加密摘要值;其中所述方法还包括,使用存储在所述服务器中的个人识别码在所述服务器中生成键控加密摘要值;其中所述交易认证号在所述服务器中基于从所述通信终端接收的所述键控加密摘要值和所述服务器中生成的所述键控加密摘要值的比较来验证。
6.根据权利要求5所述的方法,将所述个人识别码以及与所述认证模块关联的令牌密钥中之一用作所述密钥。
7.根据权利要求5所述的方法,其中所述方法还包括,从所述数据集生成查找索引;其中所述方法还包括使用所述查找索引在码表中确定被选码;其中所述被选码用作所述密钥;以及其中所述服务器将来自存储在所述服务器中的码表的被选码用作所述密钥,生成所述键控加密摘要值。
8.根据权利要求7所述的方法,其中所述服务器记录所述通信终端使用的被选码;以及其中对于所述服务器确定被选码先前已被所述通信终端使用的情形,所述服务器重新发起与所述通信终端的会话建立。
9.根据权利要求1所述的方法,其中通过使用公钥加密所述数据集、所述个人识别码和至少一个现时,在与所述通信终端关联的认证模块中生成所述交易认证号作为密码;其中所述方法还包括,在所述服务器中通过使用私钥解密所述密码来确定所接收的数据集和所接收的个人识别码;以及其中,基于所接收的数据集与在所述服务器中从所交换的所述安全会话建立协议报文生成的数据集的比较、以及基于所接收的个人识别码与存储在所述服务器中的个人识别码的比较,在所述服务器中验证所述交易认证号。
10.根据权利要求9所述的方法,其中所述方法还包括,从所述数据集生成查找索引,且使用所述查找索引在码表中确定被选码;其中所述被选码用来生成所述密码;其中所述服务器使用所述私钥,从所述密码确定所接收的被选码;以及其中验证所述交易认证号包括将所接收的被选码和由所述服务器从其存储的码表中确定的被选码进行比较。
11.根据权利要求10所述的方法,其中所述服务器记录所述通信终端使用的被选码;以及其中对于所述服务器确定被选码先前已被所述通信终端使用的情形,所述服务器重新发起与所述通信终端的会话建立。
12.根据权利要求1所述的方法,其中所述交易认证号和用户标识符从所述通信终端传送到所述服务器;以及其中在所述服务器中使用分配给所述用户标识符的所述个人识别码来验证所述交易认证号。
13.根据权利要求12所述的方法,其中从所述用户接收所述个人识别码以及生物测定标识符;以及其中在所述服务器中使用存储在所述服务器中的生物测定标识符来验证所述交易认证号。
14.根据权利要求1所述的方法,其中所述方法还包括,在与所述通信终端关联的认证模块中,使用与所述认证模块关联的密钥对中的私钥,从所述数据集生成数字签名;将所述数字签名从所述通信终端传送到所述服务器;以及在所述服务器中使用所述密钥对中的公钥来验证所述数字签名。
15.根据权利要求2所述的方法,其中在与所述通信终端关联的认证模块中,使用与所述认证模块关联的令牌密钥,从所述数据集生成所述认证基础号;以及其中在服务器中,使用所述令牌密钥,从所交换的安全会话建立协议报文生成所述认证基础号。
16.根据权利要求15所述的方法,其中所述数据集通过将所述认证模块连接到所述通信终端的设备接口,从所述通信终端传送到所述认证模块;以及其中所述令牌密钥存储在所述认证模块中。
17.根据权利要求16所述的方法,其中令牌标识符与所述交易认证号一起从所述通信终端传送到所述服务器;以及其中所述令牌密钥在所述服务器中基于所述令牌标识符来确定。
18.根据权利要求17所述的方法,其中主密钥存储在所述服务器中;以及其中在所述服务器中,使用用于加密所述令牌标识符的所述主密钥从所述令牌标识符生成所述令牌密钥。
19.根据权利要求15所述的方法,其中所述用户为所述认证模块选择多个可能机构范围中的一个;其中所述用户选择的所述机构范围使所述认证模块使用包括多个令牌密钥的令牌密钥集中的一个特定于机构的令牌密钥来生成所述认证基础号;其中所述服务器与特定机构相关联,并使用所述特定于机构的令牌密钥来生成所述认证基础号;以及其中所述服务器使用特定于机构的个人识别码来验证所述交易认证号。
20.根据权利要求2所述的方法,其中所述认证基础号由与所述通信终端关联的认证模块来显示;以及其中在所述通信终端中从所述用户接收所述交易认证号,所述交易认证号由所述用户从所述个人识别码和由所述认证模块显示的所述认证基础号生成。
21.根据权利要求1所述的方法,其中在所述服务器中成功验证所述交易认证号后,在所述服务器中,对所述数据集应用公共函数并使用令牌密钥来加密,而从所述数据集生成服务器认证码;其中所述服务器认证码从所述服务器传送到所述通信终端;其中从所述服务器接收的所述服务器认证码被所述通信终端显示;其中在与所述通信终端关联的认证模块中,对所述数据集应用公共函数并使用所述令牌密钥加密,而从所述数据集生成服务器认证码;以及其中在所述认证模块中生成的所述服务器认证码被所述认证模块显示,以便对所述通信终端显示的所述服务器认证码进行可视验证。
22.一种计算机程序产品,包括用于控制通信终端的一个或多个处理器的计算机程序代码装置,使得所述通信终端
从用户接收个人识别码;
从所述通信终端和服务器之间交换的安全会话建立协议报文生成数据集;
使用所述个人识别码,基于所述数据集生成交易认证号;以及
将所述交易认证号发送给所述服务器来验证。
23.根据权利要求22所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端从所述数据集生成认证基础号,以及使用所述个人识别码从所述认证基础号生成所述交易认证号的计算机程序代码装置。
24.根据权利要求23所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端生成随机数,从所述数据集选择被选数字,以及从所述被选数字和所述随机数的位数构成所述认证基础号的计算机程序代码装置,所述被选数字由所述随机数的位数来确定。
25.根据权利要求22所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端将与所述服务器共享的密钥作为密钥,从所述个人识别码和在所述通信终端与所述服务器之间交换的安全会话建立协议报文生成所述交易认证号作为键控密码摘要值的计算机程序代码装置。
26.根据权利要求25所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端将所述个人识别码和令牌密钥中的一个用作所述密钥的计算机程序代码装置。
27.根据权利要求25所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端从所述数据集生成查找索引,在码表中使用所述查找索引确定被选码,以及将所述被选码用作所述密钥的计算机程序代码装置。
28.根据权利要求22所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端通过使用公钥加密所述数据集、所述个人识别码和至少一个现时来生成所述交易认证号作为密码的计算机程序代码装置。
29.根据权利要求28所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端从所述数据集生成查找索引,在码表中使用所述查找索引确定被选码,以及使用所述被选码生成所述密码的计算机程序代码装置。
30.根据权利要求22所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端通过所述通信终端的传感器从所述用户接收生物测定标识符,且所述通信终端将所述生物测定标识符用作所述个人识别码的计算机程序代码装置。
31.根据权利要求23所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端接收指令来选择多个可能机构范围中的一个,以及使所述通信终端使用包括多个令牌密钥的令牌密钥集中的一个特定于机构的令牌密钥来生成所述认证基础号的计算机程序代码装置。
32.根据权利要求22所述的计算机程序产品,还包括用于控制所述处理器使得所述通信终端从所述服务器接收服务器认证码,使所述通信终端对所述数据集应用公共函数并使用所述令牌密钥加密,而从所述数据集生成服务器认证码,以及使所述通信终端基于由所述通信终端生成的所述服务器认证码来验证从所述服务器接收的所述服务器认证码的计算机程序代码装置。
33.一种计算机化服务器,配置为通过电信网与通信终端交换数据,所述服务器包括用户认证模块,该用户认证模块配置为
从所述通信终端接收交易认证号,所述交易认证号基于从所述通信终端的用户接收的个人识别码,以及基于从所述通信终端和所述服务器之间交换的安全会话建立协议报文生成的数据集;以及
基于与所述通信终端交换的所述安全会话建立协议报文来验证接收的所述交易认证号。
34.根据权利要求33所述的服务器,其中所述用户认证模块配置为从所交换的所述安全会话建立协议报文生成认证基础号,并使用所生成的所述认证基础号和所述个人识别码来验证接收的所述交易认证号。
35.根据权利要求34所述的服务器,其中所述用户认证模块配置为通过生成随机数,通过从所述数据集选择被选数字,所述数字由所述随机数的位数确定,以及通过从所述被选数字和所述随机数的所述位数构成所述认证基础号,来生成所述认证基础号。
36.根据权利要求33所述的服务器,其中所述用户认证模块配置为使用存储在所述服务器中的个人识别码,且将与所述通信终端共享的密钥用作密钥,从所述个人识别码和在所述通信终端与所述服务器之间交换的所述安全会话建立协议报文生成交易认证号作为键控加密摘要值;基于所接收的所述交易认证号和在所述服务器中生成的所述键控加密摘要值的比较来验证接收的所述交易认证号。
37.根据权利要求36所述的服务器,其中所述用户认证模块配置为,将与用户关联的所述个人识别码和令牌密钥中的一个用作所述密钥,来生成所述键控加密摘要值。
38.根据权利要求36所述的服务器,其中所述用户认证模块配置为,将来自存储在所述服务器中的码表中的被选码用作所述密钥,来生成所述键控加密摘要值。
39.根据权利要求33所述的服务器,其中所述用户认证模块配置为,通过使用公钥加密所述数据集、所述个人识别码和至少一个现时,生成交易认证号作为密码;通过使用私钥解密从所述通信终端接收的密码来确定接收的数据集和接收的个人识别码;基于所接收的数据集与在所述服务器中从所交换的安全会话建立协议报文生成的数据集的比较,以及基于所接收的个人识别码与存储在所述服务器中的个人识别码的比较,来验证接收的所述交易认证号。
40.根据权利要求39所述的服务器,其中所述用户认证模块配置为,使用所述私钥,根据从所述通信终端接收的所述密码来确定所接收的被选码;当验证所述交易认证号时,将所接收的被选码与从存储在所述服务器中的码表所确定的被选码进行比较。
41.根据权利要求38或40所述的服务器,其中所述用户认证模块配置为,记录用于所述通信终端的被选码,并且,对于被选码先前已由所述通信终端使用的情形,重新发起与所述通信终端的会话建立。
42.根据权利要求33所述的服务器,其中所述用户认证模块配置为,接收包括所述用户的生物测定标识符的个人识别码;以及使用存储在所述服务器中的生物测定标识符来验证所述交易认证号。
43.根据权利要求34所述的服务器,其中所述用户认证模块配置为,使用令牌密钥,从所交换的所述安全会话建立协议报文生成所述认证基础号。
44.根据权利要求43所述的服务器,其中所述用户认证模块配置为,从所述通信终端接收令牌标识符和所述交易认证号,以及基于所述令牌标识符确定所述令牌密钥。
45.根据权利要求43所述的服务器,其中所述服务器还包括所存储的主密钥,以及其中所述用户认证模块配置为,使用用于加密所述令牌标识符的主密钥,从所述令牌标识符生成所述令牌密钥。
46.根据权利要求33所述的服务器,其中所述用户认证模块配置为,在成功验证所述交易认证号后,对所述数据集应用公共函数且使用所述令牌密钥加密,而从所述数据集生成服务器认证码,并将所述服务器认证码传送到所述通信终端。
47.一种由使用通信终端通过电信网访问服务器的用户改变个人识别码的方法,所述方法包括:
从所述用户接收旧的个人识别码;
从所述用户接收新的个人识别码;
从在所述通信终端和所述服务器之间交换的安全会话建立协议报文生成数据集;
在与所述通信终端关联的认证模块中,使用与所述认证模块关联的令牌密钥,从所述数据集生成认证基础号;
从所述认证基础号、所述旧的个人识别码以及所述新的个人识别码生成识别改变码;
将所述识别改变码从所述通信终端传送到所述服务器;
在所述服务器中,使用所述令牌密钥,从交换的所述安全会话建立协议报文生成认证基础号;以及
在所述服务器中,使用所述旧的个人识别码和在所述服务器中生成的所述认证基础号,从所述识别改变码导出所述新的个人识别码。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72346905P | 2005-10-05 | 2005-10-05 | |
US60/723,469 | 2005-10-05 | ||
EP05405693.2 | 2005-12-08 | ||
EP05405716.1 | 2005-12-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101278538A true CN101278538A (zh) | 2008-10-01 |
Family
ID=39996606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800369414A Pending CN101278538A (zh) | 2005-10-05 | 2006-10-05 | 用于用户认证的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101278538A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102264068A (zh) * | 2010-05-28 | 2011-11-30 | 中国移动通信集团公司 | 共享密钥协商方法与系统、网络平台及终端 |
CN102685121A (zh) * | 2012-05-03 | 2012-09-19 | 飞天诚信科技股份有限公司 | 一种数字签名方法和装置 |
WO2013004065A1 (zh) * | 2011-07-01 | 2013-01-10 | 飞天诚信科技股份有限公司 | 一种基于图像采集的信息安全方法及系统 |
CN105122251A (zh) * | 2013-02-04 | 2015-12-02 | Hsc收购有限责任公司 | 认证出席推广活动的系统和方法 |
CN105900375A (zh) * | 2014-01-13 | 2016-08-24 | 维萨国际服务协会 | 用于在认证交易中保护身份的高效方法 |
CN107005413A (zh) * | 2014-10-24 | 2017-08-01 | 奈飞公司 | 安全连接及相关服务的高效启动 |
CN107111814A (zh) * | 2014-12-17 | 2017-08-29 | 耐瑞唯信有限公司 | 保护通过移动设备所执行的非接触式支付 |
CN109076080A (zh) * | 2016-04-25 | 2018-12-21 | 株式会社电子暴风 | 认证方法及系统 |
CN109154953A (zh) * | 2016-05-20 | 2019-01-04 | 系统美捷斯株式会社 | 认证系统 |
CN111078331A (zh) * | 2018-10-18 | 2020-04-28 | 甲骨文国际公司 | 与web服务集成的电子表格界面中的自适应认证 |
CN111934883A (zh) * | 2020-07-16 | 2020-11-13 | 中国民航信息网络股份有限公司 | 一种信用卡号令牌化方法及系统 |
CN113872989A (zh) * | 2021-10-19 | 2021-12-31 | 南方电网数字电网研究院有限公司 | 基于ssl协议的认证方法、装置、计算机设备和存储介质 |
US11399019B2 (en) | 2014-10-24 | 2022-07-26 | Netflix, Inc. | Failure recovery mechanism to re-establish secured communications |
US11533297B2 (en) | 2014-10-24 | 2022-12-20 | Netflix, Inc. | Secure communication channel with token renewal mechanism |
-
2006
- 2006-10-05 CN CNA2006800369414A patent/CN101278538A/zh active Pending
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102264068B (zh) * | 2010-05-28 | 2014-04-02 | 中国移动通信集团公司 | 共享密钥协商方法与系统、网络平台及终端 |
CN102264068A (zh) * | 2010-05-28 | 2011-11-30 | 中国移动通信集团公司 | 共享密钥协商方法与系统、网络平台及终端 |
WO2013004065A1 (zh) * | 2011-07-01 | 2013-01-10 | 飞天诚信科技股份有限公司 | 一种基于图像采集的信息安全方法及系统 |
CN102685121A (zh) * | 2012-05-03 | 2012-09-19 | 飞天诚信科技股份有限公司 | 一种数字签名方法和装置 |
CN102685121B (zh) * | 2012-05-03 | 2016-05-25 | 飞天诚信科技股份有限公司 | 一种数字签名方法和装置 |
CN105122251A (zh) * | 2013-02-04 | 2015-12-02 | Hsc收购有限责任公司 | 认证出席推广活动的系统和方法 |
CN105900375B (zh) * | 2014-01-13 | 2020-02-07 | 维萨国际服务协会 | 用于在认证交易中保护身份的设备、系统和方法 |
CN105900375A (zh) * | 2014-01-13 | 2016-08-24 | 维萨国际服务协会 | 用于在认证交易中保护身份的高效方法 |
US10666428B2 (en) | 2014-01-13 | 2020-05-26 | Visa International Service Association | Efficient methods for protecting identity in authenticated transmissions |
CN107005413B (zh) * | 2014-10-24 | 2021-03-12 | 奈飞公司 | 安全连接及相关服务的高效启动 |
CN107005413A (zh) * | 2014-10-24 | 2017-08-01 | 奈飞公司 | 安全连接及相关服务的高效启动 |
US11533297B2 (en) | 2014-10-24 | 2022-12-20 | Netflix, Inc. | Secure communication channel with token renewal mechanism |
US11399019B2 (en) | 2014-10-24 | 2022-07-26 | Netflix, Inc. | Failure recovery mechanism to re-establish secured communications |
CN107111814A (zh) * | 2014-12-17 | 2017-08-29 | 耐瑞唯信有限公司 | 保护通过移动设备所执行的非接触式支付 |
CN109076080B (zh) * | 2016-04-25 | 2021-11-23 | 株式会社电子暴风 | 认证方法及系统 |
CN109076080A (zh) * | 2016-04-25 | 2018-12-21 | 株式会社电子暴风 | 认证方法及系统 |
CN109154953A (zh) * | 2016-05-20 | 2019-01-04 | 系统美捷斯株式会社 | 认证系统 |
CN111078331A (zh) * | 2018-10-18 | 2020-04-28 | 甲骨文国际公司 | 与web服务集成的电子表格界面中的自适应认证 |
CN111078331B (zh) * | 2018-10-18 | 2024-03-19 | 甲骨文国际公司 | 与web服务集成的电子表格界面中的自适应认证 |
CN111934883A (zh) * | 2020-07-16 | 2020-11-13 | 中国民航信息网络股份有限公司 | 一种信用卡号令牌化方法及系统 |
CN111934883B (zh) * | 2020-07-16 | 2024-01-26 | 中国民航信息网络股份有限公司 | 一种信用卡号令牌化方法及系统 |
CN113872989A (zh) * | 2021-10-19 | 2021-12-31 | 南方电网数字电网研究院有限公司 | 基于ssl协议的认证方法、装置、计算机设备和存储介质 |
CN113872989B (zh) * | 2021-10-19 | 2023-12-05 | 南方电网数字平台科技(广东)有限公司 | 基于ssl协议的认证方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101278538A (zh) | 用于用户认证的方法和设备 | |
EP1941698B1 (en) | Method and devices for user authentication | |
US9117324B2 (en) | System and method for binding a smartcard and a smartcard reader | |
US8689290B2 (en) | System and method for securing a credential via user and server verification | |
US9338163B2 (en) | Method using a single authentication device to authenticate a user to a service provider among a plurality of service providers and device for performing such a method | |
EP2166697B1 (en) | Method and system for authenticating a user by means of a mobile device | |
US7975139B2 (en) | Use and generation of a session key in a secure socket layer connection | |
KR102177848B1 (ko) | 액세스 요청을 검증하기 위한 방법 및 시스템 | |
WO2001084761A1 (en) | Method for securing communications between a terminal and an additional user equipment | |
EP1773018A1 (en) | Method and devices for user authentication | |
JP2009510644A (ja) | 安全な認証のための方法及び構成 | |
CN102017578A (zh) | 用于在令牌与验证器之间进行认证的网络助手 | |
US20070255951A1 (en) | Token Based Multi-protocol Authentication System and Methods | |
CN102187619A (zh) | 认证系统 | |
EP2127199A2 (en) | Method and device for mutual authentication | |
KR20210095093A (ko) | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 | |
Das | A secure and robust password-based remote user authentication scheme using smart cards for the integrated epr information system | |
JP2018026631A (ja) | Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム | |
JP2001243196A (ja) | 携帯電話とicカードを利用した個人認証システム | |
KR102372503B1 (ko) | 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버 | |
Resende et al. | PUF-based mutual multifactor entity and transaction authentication for secure banking | |
JP5405057B2 (ja) | 情報通信装置および公開鍵認証方法 | |
KR20190017370A (ko) | 해시체인 기반의 일회용 패스워드를 이용한 사용자 인증 방법 및 장치 | |
US20240171380A1 (en) | Methods and devices for authentication | |
KR20180089951A (ko) | 전자화폐 거래 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20081001 |