用于通过网关认证移动用户的方法和系统的制作方法

文档序号:7665086阅读:207来源:国知局
专利名称:用于通过网关认证移动用户的方法和系统的制作方法
技术领域
本发明涉及认证并且特别地,但是不是专门涉及通信系统。在一个实施方案中,其涉及无线通信系统。
在互联网上的通信使用TCP/IP协议族。TCP指传输控制协议并且IP指互联网协议。TCP/IP指由互联网工程任务组(IETF)规定的一大组协议。TCP/IP是基本互联网和内联网通信协议。其允许信息通过中间设备和单独的网络从一个计算机发送到其目的地。
TCP/IP的很大的灵活性导致其被全世界接受。同时,TCP/IP允许信息通过中间设备的事实使得第三方以下列方式干预通信成为可能偷听。信息保持未被动过。但是其秘密被泄密。例如,第三方可以发现信用卡的细节或截获机密信息。
篡改。运送中的信息被改变并且然后被发送到计划的接收者。例如,第三方可以修改货物定单。
扮演。信息传递给佯装为计划的接收者的第三方。扮演可以涉及假装是其他某个人或者尽管不是一个真实组织却将自己错误表示为该真实组织的第三方。例如第三方可以将自己表示为商人并且在不发送货物的情况下接受支付。
虽然这些问题在有线环境中存在,但是因为第三方可以独立于固定位置接收无线传输并且进行其他无线传输,所以在无线环境中它们尤其受到关注。
加密(密码术)被用于解决这些问题。加密使信息能够被秘密呈递因此对偷听者难以理解。这样其提供了保密性。接收者可以检验信息在运送中没有被修改或者检测其何时被修改。接收者可以确定信息源自其声称的源,并且因此可以被认证。除此之外,加密可以提供禁止信息的发送者在稍后的时期声称其没有发送该信息的非否认。
加密的一种形式是对称密钥加密。在对称密钥加密中,密钥可以从解密密钥中被计算或者相反。利用大多数对称算法,相同的密钥用于加密和解密。对称密钥加密的实现可以有很高的效率,因此用户没有经历作为加密和解密过程的结果的任何显著的时间延迟。对称密钥加密还提供一定程度的认证,因为用一个对称密钥加密的信息不能用任何其它对称密钥解密。
只有对称密钥由涉及的双方保持秘密,对称密钥加密才是有效的。如果其他人发现了密钥,则其影响机密性和认证。具有未授权的对称密钥的人不仅可以解密用该密钥发送的消息,还可以加密新的消息并且将其发送,就象其来自最初使用该密钥的两方之一。
另一种形式的加密是公共密钥加密。公共密钥加密的一个版本是基于RSA数据安全算法。公共密钥(也称为不对称密钥)涉及与需要电子地鉴别其身份或者签名或者加密数据的一方相关的一对密钥,公共密钥和私有密钥。公用密钥必须是可靠的。公用密钥可以被公布,而对应的私有密钥必须保密。利用公共密钥和加密算法加密的消息仅可以用私有密钥解密。因此如果一方已经被给予公共密钥,则其可以使用这个密钥来加密仅可以利用该私有密钥解密的消息。这样,提供了保密性和机密性。相反地,利用私有密钥加密的消息仅可以利用公共密钥解密。因此,如果一方有私有密钥,则该方可以使用这个密钥来加密可以由具有公共密钥的另一方来解密的消息。可以被利用公共密钥解密的消息仅可以来自拥有相应私有密钥的一方。这样,提供了认证或签名。
很显然确保任何公共密钥来自其声称的源很重要。例如,发送方可产生私有和公共密钥对并且将公共密钥发送给接收者因此接收者可以确信由私有密钥签名的消息是来自该发送者。但是,如果第三方截获了发送者的公共密钥并且用其自己的私有和公共密钥对代替所述公共密钥,则第三方可以从发送者截获消息,用发送者的公共密钥将消息打开并且然后将其改变并且用自己的私有密钥对其数字签名。一接收到这样的数字签名的消息,接收者将相信其来自发送者。这不仅应用于改变的消息,而且还应用于扮演,也就是第三方可以发送完全伪造的消息。
为解决这个问题,如

图1所示使用认证机构。这个方案显示发送者12、接收者14以及认证机构(CA)16。CA 16连接到发送者12以及接收者14并且由两者信任。发送者12有私有密钥(S-SK)和公共密钥(S-PK),接收者14有私有密钥(R-SK)和公共密钥(R-PK),并且CA有私有密钥(CA-SK)和公共密钥(CA-PK)。CA-PK被提供给发送者12和接收者14以便用于认证的通信发生。显然,CA-PK必须被以认证的方式提供,因此发送者12和接收者14可以确信其源。
发送者12生成证书签名请求(CSR),其被发送到CA 16。发送者12向CA 16提供其身份(或者利用发送者12的用户发送一些个人数据或者利用呈现给发送者12的被使用的私有代码)。发送者12还在CSR中发送其公共密钥S-PK。CA 16用唯一的数字签名签署个人数据或私有代码以及公共密钥S-PK以便证明它们一致。签名的证书被返回到发送者12。接收者14与CA 16执行类似的过程以便获得其自己签名的证书。当发送者12想要与接收者14谈话时,需要它们之间的握手,其中发送者12和接收者14交换其数字证书(这个交换不加密)。
然后发送者12和接收者14可以利用CA-PK来验证接收的签名的证书以便确保其由CA 16认证并且因此可以被信任。固为发送者12和接收者14现在每个都有另一个的公共密钥,机密的和认证的通信可以发生。实际上发送者12和接收者14可以发送认证证书(下面讨论)而不是仅仅发送认证的公共密钥。
一般CA被按来自公共根的分层结构排列。这个分层结构被称为公共密钥基础结构。这意味着CA可以彼此认证。
与对称密钥加密相比,公共密钥加密需要更多的计算并且因此不总是适合于大量的数据。因此,RSA或某个其他形式的公共密钥加密仅用于通信的协议握手部分以便生成主要的秘密。这显示在图2中,其中公共密钥加密被用于协商会话密钥。因为数据通信是双向的,下面将参考客户端和服务器端而不是发送者和接收者。
最初,客户端22和服务器端24有来自认证机构(CA-PK)的公共密钥。客户端22和服务器端24每个都进入认证机构以便获得认证的证书,其由认证机构的CA-SK签名。除了(例如客户端22或服务器端24的)公共密钥之外,证书包括其识别的实体的名称(以区别的名称形式)、到期日期(有效期)、发布证书的认证机构的名称(以区别的名称形式,下面称为DN)、序号以及其他信息。最重要的,证书总包括发行认证机构的数字签名。认证机构的数字签名使得证书能够作为知道并且信任该授权机构但是不知道由该证书识别的实体的用户的“介绍信”。
DN是个人的唯一识别符,例如用于识别一个人或一个终端节点。如果DN被包括在数字证书中并且该证书由受信任的CA签名,则相信识别的个人是真实的并且具有对应于证书中公共密钥的私有密钥的个人是这个真实的个人。实际上,由认证机构发行的证书将一个特定公共密钥合并在该证书识别的实体或多个实体的名称中。在CA签名证书之前,其验证个人是声称的那个。这个验证包括个人识别信息的分析、签名或者其他信息。在这个实施方案中,区别的名称(DN)识别客户端22或者服务器端24。
虽然数字证书包括上述所有元件,下面仅讨论公共密钥和该方的DN。
一旦认证的证书已经被交换,其签名就可以被验证并且因此由客户端22和服务器端24利用CA-PK来认证以便每方能够获得另一方的公共密钥。每一方生成一个随机数(RND1以及RND2)并且用另一方的公共密钥对其加密。然后加密的随机数被发送到对方并且可以利用私有密钥被解密。因为现在双方都拥有两个随机数,所以这些可以被组合以便生成主要秘密(也称为会话密钥)。一旦这个被生成,客户端22和服务器端24就可以利用相当快的对称密钥加密方法如DES、3DES或RC5通信。图2被显示和简单地描述以便说明涉及的原理。例如利用SSL或WTLS的图2的方案的特定实现实际上会更复杂。
当来自TCP/IP的以及来自具有其自己的保密层的另一种通信协议的加密方法一起使用时,出现了问题。例如,当根据无线应用协议(WAP)操作的移动终端被用于访问互联网时,可出现这种情况。为了提供保密连接,互联网使用如传输层保密(TLS)(由RFC 2246规定)以及加密套接字协议层(SSL)(由网景公司开发的一个事实上的标准)的保密协议层。在WAP网中使用的等价的协议层是无线传输层保密(WTLS)(由WAP论坛标准化)。
虽然互联网和WAP网非常类似,但是它们不兼容并且因此需要执行超文本标记语言(HTML)和无线标记语言(WML)之间以及HTTP和WSP层之间的内容转换。参考图3说明了这个问题。WAP协议栈32(包含在客户端)通过网关36连接到TCP/IP协议栈34(包含在服务器端)。WAP协议栈32有协议层无线数据报协议(WDP)、无线传输层保密(WTLS)、无线交易协议(WTP)以及无线会话协议(WSP)。其提供WML内容。TCP/IP协议栈34有协议层互联网协议(IP)、交易控制协议(TCP)、加密套接字协议层(SSL)以及超文本传输协议(HTTP)。其提供HTML内容。
在WAP和TCP/IP协议栈的情况下,如果WTLS和SSL层是活动的,并且网关36不拥有必需的密钥来解密被发送的消息,则位于加密层之上的层在网关中不能被修改并且因此它们之间(WSP和HTTP之间或者WML和HTML之间)的转换不可能。因为网关不能访问需要的密钥(通常其以不能被从中该出的方式存储在物理地抵御篡改的设备中),所以应使用另一种加密方案。客户端应该认证网关并且网关应该认证发端服务器并且服务器应该认证网关并且网关应该认证客户端。在这个方案中必须双方都信任该网关。因为当前的加密协议(SSL、TLS、WTLS)假设端到端的已加密连接因此它们不能支持这种加密方案。
根据本发明的第一个方面,提供了一种用于通过网关使第一方和第二方彼此认证的方法,该方法包括步骤提供具有网关公共密钥以及相应的网关私有密钥的网关;为第一方和网关提供通用公共密钥以便认证从一个发送到另一个的信息源;以及为第二方提供网关公共密钥以便认证从网关接收的信息,该网关公共密钥不同于通用公共密钥。
优选地第一方是客户端。优选地第二方是服务器。
优选地第二方被告知该网关公共密钥是来自认证机构的公共密钥。因此,当第二方从网关接收到已经由网关私有密钥签名的证书时,第二方使用网关公共密钥来验证这个签名的证书来自与网关公共密钥相同的源,并且因此就象该证书来自认证机构一样接受。这样,网关能够将其发送到第二方来说服第二方该网关实际上是第一方的信息包括在证书中。
优选地通用公共密钥是真实并且被信任的认证机构的公共密钥。
根据本发明的第二个方面,提供了一种通过网关向第二方认证第一方的方法,第一方利用其自身和网关之间的加密协议并且第二方使用自己和网关之间的加密协议,该方法包括步骤在第二方中设置网关是被信任的认证机构;网关发行认证第一方的数字证书;以及第二方验证该数字证书以便向第二方确认该数字证书来自被信任的认证机构。
优选地第一方和网关之间以及第二方和网关之间的加密协议是不同的。优选地第一方和网关之间的加密协议是WTLS。优选地网关和第二方之间的加密协议是SSL。
根据本发明的第三个方面,提供了一种用于通过网关使客户端和服务器彼此认证的方法,该方法包括步骤为客户端提供客户端公共密钥以及相应的客户端私有密钥;为客户端提供客户端证书;为服务器提供服务器公共密钥以及相应的服务器私有密钥;为服务器提供服务器证书;为网关提供网关公共密钥以及相应的网关私有密钥;以及为网关提供网关证书。
优选地客户端证书由通用CA发行。优选地客户端证书包含客户端的区别的名称以及客户端公共密钥。客户端证书被签名,并且因此被信任的认证机构认证。
优选地服务器证书包含服务器的区别的名称以及服务器公共密钥。其还包含其他信息项。这个服务器证书被签名,并且因此被信任的认证机构认证。优选地这个认证机构与签名客户端证书的是同一个。替代的其可以是不同的认证机构。
优选地网关证书包含服务器的区别的名称以及网关公共密钥。这个网关证书可以被签名并且因此被信任的认证机构认证。优选地这个认证机构与签名服务器证书的是同一个。替代的其可以是不同的认证机构。只有在服务器和网关属于相同的组织的情况下,被信任的认证机构才可以签署网关证书(包含服务器的区别名称),这是因为只有一个组织对于不同的公共密钥拥有相同的区别名称。
优选地网关模仿认证机构。优选地为服务器提供的网关公共密钥被作为认证机构的公共密钥指示给服务器。优选地网关为每个客户端生成不同的公共-私有密钥对,每个密钥对包含一个生成的客户端公共密钥和一个生成的客户端私有密钥。网关能够以不同的客户端的名义生成不同的证书。网关可以用网关私有密钥签署这些证书。优选地这些证书包含客户端的区别名称以及生成的客户端公共密钥。作为扩展,这些生成的客户端证书包括原始的客户端证书以便使服务器得到可靠的客户端公共密钥。
优选地该方法包括为服务器提供指示其起源的识别符的步骤。优选地其包括为网关提供指示与服务器的通用起源的识别符的步骤。优选地其包括步骤为服务器和网关请求对应于该服务器和网关的通用识别符,但是包含分别属于服务器和网关的不同的公共密钥的证书。
优选地该方法包括握手以便使每一方向另一方认证并且协商一个或多个会话密钥。这可以是双重握手。在一个实施方案中,客户端和网关执行(利用客户端证书以及网关证书)彼此认证以及协商主要秘密(从中可以计算出会话密钥)的通用的第一次握手。一旦客户端被认证到网关,则网关使用属于被认证的客户端的生成的客户端私有密钥以及生成的客户端证书来执行与服务器的第二次握手(在服务器端服务器使用其服务器证书)。这两次握手彼此重叠。作为第二次握手的结果,网关和服务器协商通用的主要秘密(从中可以计算出会话密钥)。
这样,因为在网关证书中包括服务器的区别名称并且该证书由被信任的认证机构签署,所以本发明提供了客户端从网关接受认证。而且,因为在生成的客户端证书中客户端的区别名称被包括并且该证书由服务器接受作为信任的认证机构的网关签署,所以服务器从网关接受认证。
握手可以是在根据WTSL的通信之前发生的握手。其可以是在SSL或TLS之前的握手。优选地其包括在通过WTLS和SSL或者TLS的通信之前的握手过程。
本发明还被认为是将根据第一个协议加密的内容转换成根据第二个协议的内容的方法或者是用于使这样的转换能够发生的方法。这样的方法需要每一方通过中间网关被认证到另一方并且因此可以使用根据本发明的先前方面的认证方法。
根据本发明的第四个方面,提供了包含第一方和第二方的交易系统,其通过在需要利用第一方和网关之间的加密协议以及第二方和网关之间的加密协议来向第二方认证第一方的各方之间的网关通信来通信,其中网关包括数字证书签名装置来发行认证第一方的数字证书;第二方包括对应于网关的数字证书签名装置的数字证书验证装置,其验证数字证书以便向第二方确认该网关签名的数字证书是可靠的。
优选地该交易系统是通信系统。
根据本发明的第五个方面,提供了通过其第一方和第二方可以通信的网关,各方之间的通信需要利用第一方和网关之间的加密协议以及第二方和网关之间的加密协议将第一方向第二方认证,该网关包括数字证书签名装置来发行数字证书认证第一方,网关的签名装置对应于第二方的验证装置,其验证数字证书以便向第二方确认该网关签名的数字证书是可靠的。
根据本发明的第六个方面,提供了用于通过网关向第二方认证第一方的计算机程序产品,第一方使用其自己和网关之间的加密协议并且第二方使用其自己和网关之间的加密协议,该计算机程序产品包括向第二方指示该网关是被信任的认证机构的计算机可执行代码装置;使得网关能够发行数字证书来认证第一方的计算机可执行代码装置;以及使得第二方能够验证该数字证书以便向第二方确认该数字证书是由被信任的认证机构发行的计算机可执行代码装置。
根据本发明的第七个方面,提供了通过通信网从内容提供者向终端的内容交付的方法,其中内容提供者和终端通过网关彼此认证,该方法包括步骤为网关提供网关公共密钥和相应的网关私有密钥;为终端和网关提供通用公共密钥来认证从一个发送到另一个的信息源;以及为内容提供者提供网关公共密钥以便认证从网关接收的信息,该网关公共密钥不同于通用公共密钥。
根据本发明的第八个方面,提供了通过通信网从内容提供者向终端的内容交付的方法,其中内容提供者和终端通过网关彼此认证,终端使用其自己和网关之间的加密协议并且内容提供者使用自己和网关之间的加密协议,该方法包括步骤内容提供者确定该网关是被信任的认证机构;网关发行数字证书认证该终端;以及内容提供者验证数字证书以便向内容提供者确认该数字证书来自被信任的认证机构。
根据本发明的第九个方面,提供了通过通信网从内容提供者向终端的内容交付的方法,其中内容提供者和终端通过网关彼此认证,该方法包括步骤为客户端提供客户端公共密钥和相应的客户端私有密钥;为客户端提供客户端证书;为服务器提供服务器公共密钥和相应的服务器私有密钥;为服务器提供服务器证书;为网关提供网关公共密钥和相应的网关私有密钥;以及为网关提供网关证书;本发明适合于电信,并且特别适合于移动终端,如移动电话、个人数字助理、电子图书或浏览器。其可应用于利用移动终端安全地访问互联网。在一个实施方案中其可以被用于提供利用无线应用协议(WAP)的移动终端和利用互联网安全协议的WWW服务器之间的端到端的安全性。
现在将参考附图描述本发明的一个实施方案,其中图1显示发送者和接收者之间的通信;图2显示生成主要秘密的步骤;图3显示通过网关的通信;图4显示根据本发明通过网关的通信;并且图5显示步骤的流程图。
图4显示包括具有WAP协议栈的客户端42(如移动电话)、具有TCP/IP协议栈的发端服务器44、网关46以及认证机构(CA)48的通信系统40。网关46由发端服务器44的操作者所有,也就是发端服务器44和网关46在共同控制下。CA 48可由客户端42访问,发端服务器44和网关46用于认证属于各方的每一方。发端服务器44位于通信网中。在本发明的这个实施方案中,其位于无线电信网中。
CA 48是独立的机构,其发行数字证书来验证一方将其身份证实给CA。因为每一方信任CA,因此它们接受已经由CA数字签名的显示其他方已经由CA亲自识别的数字证书。CA 48有私有和公共密钥对CA-SK和CA-PK。
客户端42有包括公共密钥(C-PK)和私有密钥(C-SK)的密钥对。其有包含下列信息的证书(i)C-PK;(ii)证书的有效期;(iii)客户端的DN;(iv)发行者的DN(CA的DN);以及(v)由发行者的私有密钥(CA-SK)签名的上述信息的数字签名。
客户端42还有来自CA 48的CA-PK。这可以被预先安装,例如在制造客户端或者制造客户端的一部分(例如SIM卡的制造或配置)时,或者可以在后来的时候被安装。
发端服务器44有包括公共密钥(S-PK)和私有密钥(S-SK)的密钥对。其有包含下列信息的证书(i)S-PK;(ii)证书的有效期;(iii)发端服务器的DN;(iv)发行者的DN(CA的DN);以及(v)由发行者的私有密钥(CA-SK)签名的上述信息的数字签名。
代替来自CA 48的CA-PK,发端服务器44有如下面解释的来自网关46的公共密钥。
网关46有包括公共密钥(G-PK)和私有密钥(G-SK)的密钥对。其有包含下列信息的证书(i)G-PK;(ii)证书的有效期;(iii)网关的DN(其与服务器的组织相同或者至少属于与服务器相同的组织);(iv)发行者的DN(CA的DN);以及(v)由发行者的私有密钥(CA-SK)签名的上述信息的数字签名。
网关服务器46也具有来自CA 48的CA-PK。CA-PK被以可信赖的方式呈现给网关46。例如,CA-PK被通过软盘加载到网关46。
上述与其中所有证书由相同的CA发行的实施方案相关。但是,有几个CA。例如,有用私有密钥CA-C-SK签名客户端的证书的CA-C、用私有密钥CA-G-SK签名网关的证书的CA-G以及用私有密钥CA-S-SK签名服务器的证书的CA-S。将公共密钥CA-C-PK和CA-S-PK给网关并且将公共密钥CA-G-PK给客户端。将网关公共密钥G-PK给服务器。
如上面提到的,G-PK而不是CA-PK被加载到发端服务器44。发端服务器44被通知G-PK实际是CA-PK。因为发端服务器44和网关46在相同的组织控制下并且可位于相同(物理被保护)的位置中(并且可能甚至在相同的机器上),将CA-PK加载到网关46以及将G-PK作为CA-PK加载到发端服务器44是直接的。公共密钥可以被直接加载或者在连接上被提供。所有重要的是G-PK应该以可信的方式被下载。
可能有发端服务器44和网关46不在相同组织的控制下的情况。虽然这在某些环境下是可接受的,但这会导致较低的安全等级。
应该理解在发端服务器44和网关46的证书中,如有效期和发行者的DN的扩展是相同的。除此之外,发端服务器的DN和网关的DN是相同的。但是,在本发明的一个实施方案中,网关的DN和发端服务器的DN有些不同但是相同的足够指示DN表示相同的组织。例如,发端服务器的DN可表示银行服务器并且网关的DN可表示相同银行的另一个服务器。
现在将参考图5的步骤流程图来描述本系统的操作。客户端42和网关46之间的协议握手被执行如下。客户端的证书(由CA 48的CA-SK签名)被发送到网关46。网关46能够利用CA-PK验证这个签名的证书并且因此其获得C-PK,其最初由CA 48认证。在响应中,网关46将其(由CA-SK签名的)证书发送到客户端42。客户端42能够利用CA-PK验证这个签名的证书并且因此其获得G-PK,其最初由CA 48认证。因为网关证书具有发端服务器的DN,所以客户端相信网关46是发端服务器44。因为客户端42和网关46每个有另一个的公共密钥,所以其可以以可信的并且机密的方式通信并且同意根据要使用的加密协议(如WTLS)的主要秘密。客户端42和网关46现在可以利用WTLS加密通信。
现在发端服务器44和网关46之间的协议握手被执行如下。网关46为每个客户端生成公共密钥G-C-PK和私有密钥G-C-SK对。优选地使用客户端特定密钥对以便为不同的客户端提供不同的密钥(为不否认的目的)。
网关46生成包括生成的客户端公共密钥(G-C-PK)和客户端的DN的新的证书。新的证书由网关46的G-SK签名并且被发送到发端服务器44。这样,网关46生成发端服务器将象其来自客户端一样接受的证书。发端服务器44还能够利用G-PK来验证这个签名的证书并且因此其获得生成的客户端公共密钥(G-C-PK)以及客户端的DN。(注意因为网关46不参与证书的分层结构,所以这个证书将仅由发端服务器44接受并且将对于任何其他方不合法,因此在其他情况下网关46不能扮演客户端。)因此,因为生成的客户端证书有客户端的DN并且SSL层的内部变量指示有到客户端的安全连接,所以发端服务器44认为其在与客户端42通信。这样在发端服务器44的应用层的程序将不注意任何的差别并且将接受该认证。因为原始的客户端证书被信任的CA签名,所以网关认为客户端的DN与应该信任的一方相关。发端服务器44的证书被CA-SK签名并且将这个签名的证书发送到网关46。网关46能够利用CA-PK验证这个签名的证书并且因此其获得S-PK,其最初由CA 48认证。
因为发端服务器44有生成的网关的客户端公共密钥(在这种情况下是G-C-PK)并且网关46有发端服务器的公共密钥(S-PK),发端服务器44和网关46可以以安全的方式通信并且以与图2相关的上述描述中类似的方式同意一个主要秘密。现在发端服务器44和网关46可以利用SSL(或者TLS)加密来通信。
因此,在上面讨论的过程之后,现在客户端42和发端服务器44可以保密地与网关46通信。由任一方发送的消息可以被网关46解密,在网关46中在WML和HTML之间被转换,并且因此在被发送到计划的接收者之前以发送者的名义被重新加密。网关46被客户端42和发端服务器44视为可信任的解释者,因为双方都在SSL或WTLS安全连接直接与其谈话。
应该注意上面网关46与发端服务器44相关作为认证机构运行。但是,应该注意在这个角色中,网关46不参与证书的分层结构并且不作为对除服务器44之外的其他方的正式的认证机构运行。另一方面,网关46与客户端42相关的作为服务器运行并且有来自真实的认证机构,也就是CA 48的签名的证书。发端服务器44和网关46在共同控制下并且因此发端服务器44可以信任网关46并且客户端可以接受其属于相同的组织。
在优选实施方案中,网关46在与发端服务器44相同的机器上运行,也就是其有相同的IP地址、区别的名称以及证书。在这种情况下,客户端42将不会注意关于转换的任何异常。
如果建立客户端42和发端服务器44之间的安全通信的速度很重要,则可缩放的基于硬件的算法可以被用于该网关。替代的或额外的,在实际握手之前可以计算生成的客户端密钥。
以相同的方式客户端特定的密钥对可被用于网关和服务器之间,服务器特定的网关可被用于客户端和网关之间。如果对于不同的服务器有多个不同的密钥时就是这样的情况。
固为网关为诸如支付的特定操作解密和加密所有的消息,优选地使用另一个应用等级的解决方案。在这种情况下,网关46可以将客户端的原始证书作为附件插入生成的客户端证书中,因此可以执行应用等级之上的真实的端到端认证。然后原始的证书可被用于评估数字签名。
可以很容易地看到这个解决方案独立于WTLS和SSL之间的差异并且在客户端或服务器或两者不被认证的情况下起作用。换句话说,在SSL和WTLS中,客户端或服务器端认证是可选的。如果我们禁止这些认证之一,则本发明提供的方法也能够处理该情况。
本发明的一个优点是其不需要在客户端42和网关46之间的WAP通信中也不需要在发端服务器44和网关46之间的TCP/IP通信中进行修改。这样其与合适的标准兼容。
本发明以使各个协议栈的SSL和WTLS层之间能够以无缝会话的方式提供互联网服务器和WAP客户端之间的端到端的保密。
已经描述了本发明的特定实现和实施方案。对于本领域的技术人员很显然本发明不限于上述实施方案的细节,而是在不背离本发明的特征的情况下其可以利用等价装置在其他实施方案中被实现。本发明的范围仅受所附的权利要求书的限制。
权利要求
1.一种通过网关(46)向第二方(44)认证第一方(42)的方法,第一方使用自己和所述网关之间的加密协议并且第二方使用自己和所述网关之间的加密协议,所述方法包括步骤在第二方中设置网关是被信任的认证机构;所述网关发行一个认证第一方的数字证书;并且第二方验证所述数字证书以便向第二方确认所述数字证书来自被信任的认证机构。
2.根据权利要求1的方法,其中第一方(42)和网关(46)之间以及第二方(44)和网关之间的加密协议是不同的。
3.根据权利要求2的方法,其中第一方(42)和网关(46)之间的加密协议是WTLS并且网关和第二方(44)之间的加密协议是SSL。
4.根据前述任何一个权利要求的方法,其中网关公共密钥被提供给第二方(44)并且被向第二方(44)指示作为被信任的认证机构(48)的公共密钥。
5.根据前述任何一个权利要求的方法,其中网关(46)为多个第一方生成不同的公共私有密钥对,每个密钥对包括生成的第一方(42)公共密钥以及生成的第一方私有密钥。
6.根据权利要求5的方法,其中网关(46)以不同的第一方的名义生成不同的证书。
7.根据权利要求6的方法,其中网关(46)用网关私有密钥签署这些不同的证书。
8.根据权利要求6或7的方法,其中这些不同的证书包含第一方(42)的区别的名字以及第一方公共密钥。
9.根据前述任何一个权利要求的方法,包括为第二方(44)提供指示其起源的识别符的步骤。
10.根据权利要求9的方法,包括为网关(46)提供指示与第二方(44)的通用起源的识别符的步骤。
11.根据权利要求10的方法,包括为对应于第二方和网关的通用识别符,但是包含属于第二方和网关的不同公共密钥的第二方(44)和网关(46)请求证书的步骤。
12.根据前述任何一个权利要求的方法,其包括握手以便将每一方认证给对方并且协商一个或多个会话密钥。
13.根据权利要求12的方法,其中握手是两次握手。
14.根据前述任何一个权利要求的方法,其中第一方(42)和网关(46)执行通用第一次握手来彼此认证并且协商主要秘密。
15.根据权利要求14的方法,其中网关(46)使用第一方(42)私有密钥以及第一方证书来执行与第二方(44)的第二次握手。
16.根据权利要求14或15的方法,其中至少一次握手是在根据WTLS的通信之前的发生的握手。
17.根据权利要求14或15的方法,其中至少一次握手是在SSL或TLS之前发生的握手。
18.根据前述任何一个权利要求的方法,其中第一方(42)是客户端并且第二方(44)是服务器。
19.根据前述任何一个权利要求的方法,其包括为第一方(42)和网关(46)提供通用公共密钥来认证从一个发送到另一个的信息的源的步骤,通用公共密钥是被信任的认证机构(48)的公共密钥。
20.包括第一方(42)和第二方(44)的交易系统(40),所述第一方和第二方通过网关(46)传送在要求利用第一方和网关之间的加密协议以及第二方和网关之间的加密协议向第二方认证第一方的各方之间的通信,其中网关包括数字证书签名人(48)来发行一个认证第一方的数字证书;第二方包括对应于网关的数字证书签名人的数字证书证实者,其验证数字证书以便向第二方确认网关签名的数字证书是可靠的。
21.根据权利要求20的交易系统(40)包括通信系统。
22.根据权利要求21的交易系统(40)包括具有网络和多个移动终端的无线电信系统。
23.一种网关(46),第一方(42)和第二方(44)可以通过该网关通信,该通信是在要求利用第一方和网关之间的加密协议以及第二方和网关之间的加密协议向第二方认证第一方的各方之间的通信,网关包括数字证书签名人(48)来发行一个认证第一方的数字证书认证,网关的签名人对应于第二方的证实者,其验证数字证书以便向第二方确认网关签名的数字证书是可靠的。
24.根据权利要求23的网关(46)包括服务器(44)。
25.用于通过网关(46)向第二方(44)认证第一方(42)的计算机程序产品,第一方使用自己和网关之间的加密协议并且第二方使用自己和网关之间的加密协议,所述计算机程序产品包括向第二方指示网关是被信任的认证机构(48)的计算机可执行代码;使得网关能够发行一个认证第一方的数字证书的计算机可执行代码;以及计算机可执行代码,它使得第二方能够验证数字证书以便向第二方确认数字证书已经由被信任的认证机构发行。
26.根据权利要求25的计算机程序产品,其被存储在计算机可该介质上。
27.通过通信网从内容提供者(44)到终端(42)的内容交付的方法,其中内容提供者和终端通过网关(46)彼此认证,终端使用自己和网关之间的加密协议并且内容提供者使用自己和网关之间的加密协议,所述方法包括步骤内容提供者确定网关是被信任的认证机构(48);网关发行一个认证终端的数字证书;以及内容提供者验证数字证书以便向内容提供者确认所述数字证书来自被信任的认证机构。
28.用于通过网关使第一方(42)和第二方(44)彼此认证的方法,所述方法包括步骤为网关提供网关公共密钥和相应的网关私有密钥;为第一方和网关提供通用公共密钥以便认证从一个发送到另一个的信息的源;以及为第二方提供网关公共密钥以便认证从网关接收的信息,网关公共密钥不同于通用公共密钥。
全文摘要
一种通过网关(46)使客户端(42)和服务器(44)彼此认证的方法,其中客户端使用自己和网关之间的第一个加密协议并且服务器使用自己和网关之间的第二个加密协议,该方法包括以下步骤在服务器上设置网关是被信任的认证机构(48);网关发行数字证书认证客户端;以及服务器验证数字证书以便向自己确认该数字证书来自被信任的认证机构。
文档编号H04L9/32GK1468488SQ01816850
公开日2004年1月14日 申请日期2001年8月6日 优先权日2000年8月18日
发明者Z·霍尔纳克, Z 霍尔纳克 申请人:诺基亚有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1