CN101567784B - 一种获取密钥的方法、系统和设备 - Google Patents

一种获取密钥的方法、系统和设备 Download PDF

Info

Publication number
CN101567784B
CN101567784B CN200810093122.4A CN200810093122A CN101567784B CN 101567784 B CN101567784 B CN 101567784B CN 200810093122 A CN200810093122 A CN 200810093122A CN 101567784 B CN101567784 B CN 101567784B
Authority
CN
China
Prior art keywords
server
open parameter
client
ibe
message
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.)
Expired - Fee Related
Application number
CN200810093122.4A
Other languages
English (en)
Other versions
CN101567784A (zh
Inventor
黄敏
刘利锋
万适
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN200810093122.4A priority Critical patent/CN101567784B/zh
Priority to PCT/CN2009/071371 priority patent/WO2009129734A1/zh
Priority to EP09735103A priority patent/EP2271025A4/en
Publication of CN101567784A publication Critical patent/CN101567784A/zh
Priority to US12/871,646 priority patent/US8769287B2/en
Application granted granted Critical
Publication of CN101567784B publication Critical patent/CN101567784B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key 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
    • H04L9/0847Key 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 involving identity based encryption [IBE] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public 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
    • H04L9/3073Public 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 involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种获取密钥的方法、系统和设备,属于通信领域。所述方法包括:服务器确认支持基于标识加密的安全认证IBE;获取用于所述IBE的公开参数和私钥;所述服务器接收IBE加密后的预主密钥,根据所述公开参数和私钥获取所述预主密钥的明文。所述系统包括:客户端和服务器。所述客户端包括:IBE协商模块、公开参数协商模块、服务器标识获取模块和处理模块。所述服务器包括:IBE协商模块、公开参数协商模块、私钥获取模块和处理模块。通过将IBE技术与SSL技术结合,丰富了现有SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的。

Description

一种获取密钥的方法、系统和设备
技术领域
本发明涉及通信领域,特别涉及一种获取密钥的方法、系统和设备。
背景技术
随着Internet的迅速普及,基于Web的各种应用得到极大的发展,远程接入增多,随之而来的是各种安全问题的凸显。Nescape公司为了解决浏览器访问互联网资源过程中出现的安全问题,提出了SSL(SecureSocketLayer,安全套接层)协议。
基于SSL技术的VPN(VirtualPrivateNetwork,虚拟专用网)是通过SSL来保证用户远程接入网络的安全性和可靠性,以达到像专用网络一样的数据的安全传输。目前,SSLVPN设备从过去单一的支持Web访问安全保证,到现在针对各种应用的安全支持,已经发展成为不可或缺的安全产品之一。
其中,SSL通信双方使用相同的密钥导出函数,以相同的预主密钥(PreMasterSecret)和随机数为参数,计算出通信过程中所有的密钥。由于随机数以明文传输,因此,预主密钥的安全是SSL通信过程中最关键的因素。
发明人在实现本发明时发现,现有的SSL的握手协议中的预主密钥是由SSL通信双方中的客户端根据服务器的私钥生成并发送的,生成的形式单一,限制了SSL协议使用范围,不利于SSL协议的扩展。
发明内容
为了实现通信双方的安全通信握手,减少证书管理和维护的开销,本发明实施例提供了获取密钥的方法、系统和设备。所述技术方案如下:
一方面,提供了一种获取密钥的方法,服务器与客户端通过安全套接层协议SSL报文进行交互,所述方法包括:
所述服务器和客户端进行基于标识加密算法IBE加密的安全认证的协商;
所述服务器和所述客户端协商用于所述IBE的公开参数,所述服务器接收所述客户端利用获取的所述服务器标识和所述协商获取的公开参数而生成的所述IBE加密后的预主密钥,利用获取的私钥对所述接收的预主密钥进行解密以获取所述预主密钥的明文;
其中,所述服务器和客户端进行基于标识加密算法IBE加密的安全认证的协商,包括:
所述客户端向所述服务器发送客户端握手请求消息ClientHello,所述ClientHello中携带使用IBE进行认证的密码套件;
所述服务器收到所述ClientHello,判断自身支持使用IBE进行认证后,向所述客户端返回作为所述ClientHello响应消息的服务器握手请求消息ServerHello,所述ServerHello消息中携带所述服务器确认选择的IBE认证的密码套件;
相应地,所述服务器和所述客户端协商用于所述IBE的公开参数,所述服务器接收所述客户端利用获取的所述服务器标识和所述协商获取的公开参数而生成的所述IBE加密后的预主密钥,利用获取的私钥对所述接收的预主密钥进行解密以获取所述预主密钥的明文包括:
所述服务器同意使用IBE进行认证后,向所述客户端发送服务器密钥交换消息ServerKeyExchange,所述ServerKeyExchange用于和所述客户端协商进行IBE认证所需要的公开参数的相关信息;
所述服务器向所述客户端发送服务器握手请求完成消息ServerHelloDone,所述ServerHelloDone用于通告客户端服务器方的认证准备工作已经完成;
所述客户端向所述服务器发送客户端密钥交换消息ClientKeyExchange,所述ClientKeyExchange携带利用预先获取的所述服务器标识和所述协商获取的公开参数完成IBE加密的预主密钥;
所述服务器收到所述ClientKeyExchange后,根据所述ClientKeyExchange携带的IBE加密的预主密钥,利用预先从PKG获取的私钥对IBE加密的预主密钥进行解密,得到所述预主密钥的明文。
本发明实施例提供的技术方案的有益效果是:
通过SSL服务器支持基于IBE的SSL握手协商,利用获取的用于所述IBE的公开参数和私钥,解密IBE加密后的预主密钥,获取到预主密钥的明文,将IBE技术和SSL技术结合,简化了证书管理,节省了网络应用层的建设、管理CA的成本和维护一系列数字证书的开销,实现了通信双方的安全通信握手,并且,充分扩展了现有的SSL协议的使用范围,丰富现有了的SSL协议中预主密钥的生成形式。
附图说明
图1是本发明实施例1提供的获取密钥的方法流程图;
图2是本发明实施例1提供的获取密钥的信息交互示意图;
图3是本发明实施例1提供的获取密钥的一种通信场景示意图;
图4是本发明实施例1提供的实现获取密钥的SSLVPN的设备示意图;
图5是本发明实施例2提供的获取密钥的系统示意图;
图6是本发明实施例3提供的客户端示意图;
图7是本发明实施例4提供的服务器示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本领域技术人员可以获知,IBE(Identity-BasedEncryption,基于标识的加密)技术最早是由Shamir于1984年提出,其初衷是简化电子邮件系统中的证书管理,能够满足任何一对用户之间安全通信以及在不需要交换私钥和公钥的情况下验证每个人的签名。IBE认证体系是一种将用户的公开标识作为公钥的加密方式,不需要通过证书绑定用户的身份及其公钥。其中,上述公开标识具体可以为能够代表用户身份的任意公开的字符串信息,例如用户的邮箱地址,IP地址,身份证号或手机号码等。而对端用于解密的私钥则由IBE认证体系中的预设的PKG(PrivateKeyGenerator,私钥生成器)发放的。
IBE与基于PKI的传统方案相比,由于取消了第三方认证机构(CA,CertificationAuthority)。因此在应用层面节省了建设、管理CA的成本,省去了产生,更新,撤销等一系列对数字证书的维护工作;在技术层面避免了交叉认证中信任的起点和信任如何传递,以及当用户数量增多时CA负担过重等难题,节省带宽资源,存储空间需求小。
本发明实施例提供的获取密钥的方法,利用上述IBE技术的优点,以将IBE技术与SSL技术结合为例,方法内容如下:SSLVPN系统中的客户端和服务器进行基于标识加密的安全认证IBE的协商,即服务器确认支持基于标识加密的安全认证IBE;然后服务器获取用于IBE的公开参数(通过和客户端协商获取)和私钥;服务器接收IBE加密后的预主密钥(即客户端利用获取的服务器标识和协商获取的公开参数,生成并发送的),根据公开参数和私钥获取预主密钥的明文。从而实现了通信双方的安全通信握手,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的。
实施例1
参见图1,本发明实施例提供了一种获取密钥的方法,为了与标准的SSL协议保持一致,SSL使用IBE进行握手的过程详见下述内容:
101:客户端向服务器发送客户端握手请求消息ClientHello,该ClientHello中携带使用IBE进行认证的密码套件。
其中,在客户端向服务器发送客户端握手请求消息ClientHello时,除了SSL标准中规定的各项内容外,还需要提供包含了使用IBE进行认证的密码套件列表,该密码套件列表中包含了IBE算法、认证算法、加密算法、摘要算法等内容,其中,该密码套件列表用于向服务器请求协商使用IBE进行认证。本发明实施例不限制在具体应用时,客户端向服务器发送客户端握手请求消息ClientHello中是否还携带使用其它方法进行认证的密码套件。
102:服务器收到客户端发送的客户端握手请求消息ClientHello,判断自身支持使用IBE进行认证后,向客户端返回作为客户端握手请求消息ClientHello响应消息的服务器握手请求消息ServerHello。
其中,服务器返回的服务器握手消息ServerHello,该消息用于表明服务器同意使用IBE进行认证,例如,当在步骤101中客户端发送了包括IBE密码套件在内的多套用于进行认证的密码套件时,则可以通过该ServerHello消息中携带服务器确认选择的IBE认证的密码套件。本发明实施例不限制该服务器握手消息ServerHello的具体实现形式。如果服务器判断自身不支持使用IBE进行认证时,相应地,需要返回响应消息通告客户端不能进行IBE进行认证。
103:服务器同意使用IBE进行认证后,向客户端发送服务器密钥交换消息ServerKeyExchange,用于和客户端协商进行IBE认证所需要的公开参数的相关信息。
其中,针对该步骤103中涉及到的公开参数,本领域技术人员可以获知使用IBE进行认证时,一方面需要使用对端设备标识生成预主密钥,同时还需要使用公开参数对生成的预主密钥进行加密后,需要将加密后的预主密钥发送到对端设备,其中,用于进行IBE加密的公开参数通常为一套数据包含一系列的参数,例如根据系统的需要配置的安全曲线、算法等等。
104:服务器向客户端发送服务器握手请求完成消息ServerHelloDone,用于通告客户端服务器方的认证准备工作已经完成。
其中,该步骤中服务器发送的服务器握手请求完成消息ServerHelloDone可以采用标准的SSL握手消息。
105:客户端向服务器发送客户端密钥交换消息ClientKeyExchange。其中,该消息包括两部分内容:
1、协商IBE公开参数的相关信息,用于作为对步骤103中的服务器密钥交换消息ServerKeyExchange消息的响应。
2、向服务器发送通过协商得到的公开参数和预先获取的服务器标识完成IBE加密的预主密钥。
106:服务器收到客户端发送的客户端密钥交换消息ClientKeyExchange后,根据其中携带的IBE加密的预主密钥,利用预先从PKG获取的私钥,对IBE加密的预主密钥进行解密,从而得到预主密钥的明文。
参见图2,为基于本发明实施例提供的获取密钥的方法的SLL使用IBE的握手过程示意图,详细的交互过程如前文所述,不再赘述。
综上,客户端和服务器通过ClientHello和ServerHello消息确认使用IBE进行认证,使用ServerKeyExchange和ClientKeyExchange完成对公开参数的协商,其中,在具体实现时,协商方式可以有以下几种,说明如下:
(一)如果客户端和服务器预共享唯一的一套公开参数,服务器和客户端还不使用任何包含公开参数的消息进行交互,而表明双方默认使用了该预共享公开参数。
其中,具体实现时,上述步骤103中服务器不用发送ServerKeyExchange消息,即用ServerHelloDone来表示服务器握手消息的结束,服务器通过这种方式表明默认使用预共享的公开参数;相应地,上述步骤105中,客户端在ClientKeyExchange消息中不用包含公开参数的相关信息(确认使用了默认的预共享的公开参数),只用包含一项内容即通过该ClientKeyExchange消息直接将使用预共享公开参数和服务器标识加密的预主密钥发送至服务器。
(二)如果客户端和服务器预共享唯一的一套公开参数,服务器使用ServerKeyExchange消息通知客户端使用预共享的公开参数,客户端使用ClientKeyExchange消息响应;
其中,具体实现时,上述步骤103中服务器可以通过ServerKeyExchange发送一个预设标识,用于通告客户端使用预共享的公开参数,而不需要携带任何有关于公开参数的实质内容;相应地,上述步骤105中,客户端对使用预共享参数进行确认,通过ClientKeyExchange传递预设标识,用于确认使用了预共享的公开参数,而不需要公开参数的实质内容。
其中,上述唯一的一套公开参数是事先客户端和服务器分别向PKG获取后,进行保存的。
(三)如果客户端和服务器共享了多套公开参数,服务器使用ServerKeyExchange消息通知客户端它建议使用的公开参数的对应标识,客户端使用ClientKeyExchange消息响应;
其中,具体实现时,上述步骤103中服务器根据具体的系统部署策略,从共享的多套公开参数中,选择至少一套公开参数,其中,每套公开参数可以对应与唯一的标识,参见表1,提供了一种公开参数和标识的对应表,通过ServerKeyExchange将选择出的公开参数的对应的标识发送到客户端;
表1
标识 公开参数
1 第一套公开参数
2 第二套公开参数
3 第三套公开参数
相应地,由于多套公开参数为客户端和服务器所共享,所以相应的代表每套公开参数的标识也是一致,在步骤104中,客户端根据服务器提供的标识获取到对应的一套公开参数,然后通过发送ClientKeyExchange携带该套公开参数对应的标识响应服务器。
进一步地,当服务器向客户端发送的公开参数标识为多个时,客户端根据服务器提供的多个标识,根据自身的选择策略选择出一个,使用该选择的标识对应的公开参数。
进一步,客户端收到服务器发送的公开参数标识后,还可以根据自身的选择策略选择不使用服务器发送的公开参数标识对应的公开参数,而根据自身的策略,选择出使用的一套公开参数,并相应地,通过ClientKeyExchange携带该套公开参数对应的标识响应服务器。
其中,上述多套公开参数是事先客户端和服务器分别向PKG获取后,进行保存的。
(四)如果客户端和服务器未预先共享公开参数,则服务器使用ServerKeyExchange消息将加密需要使用的一套公开参数发送给客户端;或者服务器使用ServerKeyExchange消息将多套公开参数发送给客户端;相应地,客户端从收到的多套公开参数中,选择出一套使用的公开参数后,通过ClientKeyExchange消息响应服务器选择使用的公开参数。
其中,在具体实现时,服务器可以采用通过ServerKeyExchange消息发送公开参数以及其对应标识的形式;相应地,客户端在使用ClientKeyExchange消息响应服务器时,可以仅通过携带标识的形式实现。
(五)如果采用远程获取的方式获取公开参数,则服务器使用ServerKeyExchange消息将产生公开参数的PKG的地址、域名等用于定位公开参数的标识发送给客户端,相应地,当客户端收到该ServerKeyExchange消息后,根据其中携带的定位公开参数的标识信息,去PKG获取公开参数后,使用ClientKeyExchange通告服务器其选择的公开参数。
进一步地,服务器使用ServerKeyExchange消息发送用于定位公开参数的标识时,可以发送多个PKG的标识,相应地,客户端根据自身的策略(如出于安全、方便等角度出发制定策略),从多个标识中选择出一个PKG标识,向该PKG获取公开参数。参见图3,为该情况下通信场景,服务器向客户端发送PKG1、PKG2和PKG3地址标识,客户端收到后,根据自身的策略配置,从中选择出PKG2,向PKG2获取公开参数。
(六)如果采用远程获取的方式获取公开参数,并且预设了用于存储多套公开参数的公开参数服务器(其中,该公开参数服务器做为一个功能实体既可以单独存在也可以集成在现有的PKG设备中),则服务器使用ServerKeyExchange消息将公开参数在公开参数服务器中的保存的地址发送给客户端,参见表2,提供了一种公开参数和地址的对应关系表;相应地,当客户端收到该ServerKeyExchange消息后,根据携带的地址信息向公开参数服务器获取公开参数后,通过ClientKeyExchange通告服务器其选择的公开参数的地址。
表2
公开参数 地址
第一套公开参数 A
第二套公开参数 B
第三套公开参数 C
进一步地,服务器使用ServerKeyExchange消息将向客户端发送地址时,还可以发送多个地址,由客户端根据自身的策略从中选择出一个做为获取公开参数的地址。
进一步,参见表3,还可以为公开参数以及地址配置标识的形式,相应地,服务器使用ServerKeyExchange消息将公开参数的标识发送给客户端,客户端根据收到的标识向对应的地址获取公开参数后,通过ClientKeyExchange通告服务器其选择的公开参数的标识。
表3
标识 公开参数 地址
1 第一套公开参数 A
2 第二套公开参数 B
3 第三套公开参数 C
综上,上述第五种方式和第六种方式中,由于客户端需要从第三方(PKG或者公开参数服务器)获取公开参数,因此客户端应该根据服务器提供的可选项中,根据自身制定的安全选择策略,选择出自己信任的第三方来申请公开参数,防止可能出现的中间人攻击。客户端需要维护一个可信任第三方的列表。
本领域技术人员可以获知SSLVPN在SSL通信的过程中多数情况下扮演服务器的角色,但也能成为客户端(如在SSLVPN在建立站点到站点的隧道的情况下),因此,参见图4,SSLVPN必须具备以下功能模块才能满足支持对IBE的支持,其中,支持IBE的SSL通信模块完成SSL握手。在握手过程中如果IBE需要获得加密和解密的公开参数:如果使用上述第一种、第二种和第三种协商方式,则调用预共享公开参数管理模块从本地获得公开参数;如果使用上述第四种、第五种和第六种协商方式,则调用远程公开参数获取模块从远程获得公开参数。
综上所述,本发明实施例提供的获取密钥的方法,通过将IBE技术与SSL技术结合,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的,并且SSL客户端和服务器通过上述五种方式的任意一种,可以唯一确定了加密和解密运算过程中使用的公开参数,实现了预主密钥的安全传输。
实施例2
参见图5,本发明实施例提供了一种获取密钥的系统,包括:系统包括客户端201和服务器202;
客户端201,用于和服务器202进行基于标识加密的安全认证IBE的协商后,和服务器202协商用于IBE的公开参数;并利用获取的服务器标识和协商获取的公开参数,生成并发送IBE加密后的预主密钥;
服务器202,用于和客户端201进行基于标识加密的安全认证IBE的协商后,和客户端201协商用于IBE的公开参数;并用于接收客户端201发送的IBE加密后的预主密钥,利用获取的私钥进行解密后获取预主密钥的明文。
(一)本发明实施例提供的获取密钥的系统中的客户端201具体包括:
IBE协商模块,用于向服务器202发送客户端请求消息,客户端请求消息中携带用于进行基于标识加密的安全认证IBE的密码套件;并接收服务器202返回的IBE确认消息;
公开参数获取模块,用于获取用于进行IBE认证的公开参数;
服务器标识获取模块,用于获取服务器标识;
处理模块,用于利用公开参数获取模块获取的公开参数,和服务器标识获取模块获取的服务器标识,生成并发送IBE加密后的预主密钥。
其中,该客户端201的公开参数获取模块具体包括:
(a)公开参数保存单元,用于保存一套公开参数;公开参数选择单元,用于获取公开参数保存单元中保存的公开参数。该情况即对应着当客户端201和服务器202进行了IBE认证协商后,默认使用了该套预共享的公开参数。
或者;
(b)公开参数保存单元,用于保存至少一套公开参数;公开参数选择单元,用于根据服务器202的通知,从公开参数保存单元中选择一套公开参数;响应单元,用于当公开参数选择单元选择了一套公开参数后,响应服务器202选择的公开参数。
或者;
(c)公开参数获取单元,用于获取服务器202发送的至少一套公开参数;公开参数选择单元,用于从公开参数获取单元中获取的公开参数中,选择出一套公开参数;响应单元,用于当公开参数选择单元选择了一套公开参数后,通知服务器202选择的公开参数。
或者;
(d)当系统还包括:至少一个私钥生成器PKG时,其中PKG用于提供公开参数;相应地,公开参数获取模块具体包括:PKG标识获取单元,用于获取服务器202发送的至少一个私钥生成器PKG标识;PKG标识选择单元,用于从PKG标识获取单元获取的PKG标识中,选择一个PKG标识;公开参数获取单元,用于根据PKG标识选择单元选择的PKG标识,向选择的PKG标识对应的PKG获取公开参数;通知单元,用于当PKG标识选择单元选择了PKG标识后,通知服务器202选择的PKG标识。
或者;
(e)当系统还包括:能够提供至少一套公开参数的公开参数服务器时,相应地,公开参数获取模块具体包括:
地址标识获取单元,用于获取服务器202发送的公开参数服务器中保存的至少一个公开参数的地址标识;地址标识选择单元,用于根据地址标识获取单元获取的地址标识中,选择一个地址标识;公开参数获取单元,用于根据地址标识选择单元选择的地址标识,根据选择的地址标识向公开参数服务器获取公开参数;通知单元,用于当地址标识选择单元选择了地址标识后,通知服务器202选择的地址标识。
(二)本发明实施例提供的获取密钥的系统中的服务器202具体包括:
IBE协商模块,用于接收客户端201发送的客户端请求消息,客户端请求消息中携带用于进行基于标识加密的安全认证IBE的密码套件;判断支持IBE认证后,向客户端201返回确认消息;
公开参数协商模块,用于和客户端201协商用于进行IBE认证的公开参数;
私钥获取模块,用于获取私钥,私钥用于解密IBE加密的预主密钥;
处理模块,用于接收客户端201发送的IBE加密后的预主密钥,利用私钥获取模块获取的私钥进行解密后,获取预主密钥的明文。
其中,该服务器202的公开参数协商模块具体包括:
(a)公开参数保存单元,用于保存一套公开参数;公开参数选择单元,用于获取公开参数保存单元中保存的公开参数。该情况即对应着当客户端201和服务器202进行了IBE认证协商后,默认使用了该套预共享的公开参数。
(b)公开参数保存单元,用于保存至少一套公开参数;通知单元,用于根据公开参数保存单元保存的公开参数,向客户端201发送通知;接收单元,用于接收客户端201返回的选择的公开参数的响应。
(c)发送单元,用于向客户端201发送至少一套公开参数;接收单元,用于接收客户端201返回的选择的公开参数的响应。
(d)当系统还包括:至少一个私钥生成器PKG时,其中PKG用于提供公开参数;相应地,公开参数协商模块具体包括:
PKG标识发送单元,用于向客户端201发送至少一个私钥生成器PKG标识;接收单元,用于接收客户端201返回的选择的PKG标识;获取单元,用于接收单元接收的PKG标识,获取一套用于IBE的公开参数。
(e)当系统还包括:能够提供至少一套公开参数的公开参数服务器时,相应地,公开参数获取模块具体包括:
地址标识发送单元,用于向客户端201发送公开参数服务器中保存的至少一个公开参数的地址标识;接收单元,用于接收客户端201返回的选择的地址标识。获取单元,用于接收单元接收的地址标识,获取一套用于IBE的公开参数。
综上所述,本发明实施例提供的获取密钥的系统,通过将IBE技术与SSL技术结合,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的,并且SSL客户端和服务器多种公开参数协商模式中的任意一种,可以唯一确定了加密和解密运算过程中使用的公开参数,实现了预主密钥的安全传输。
实施例3
参见图6,本发明实施例提供了一种客户端,所述客户端包括:
IBE协商模块301,用于和服务器进行基于标识加密的安全认证IBE的协商;
公开参数协商模块302,用于和服务器协商用于IBE的公开参数;
服务器标识获取模块303,用于获取服务器标识;
处理模块304,用于根据服务器标识获取模块303获取的服务器标识和公开参数协商模块302协商获取的公开参数,生成并发送IBE加密后的预主密钥;
其中,IBE协商模块301具体用于向服务器发送客户端请求消息,客户端请求消息中携带用于进行基于标识加密的安全认证IBE的密码套件;并接收服务器返回的IBE确认消息;
其中,公开参数协商模块302具体包括:
公开参数保存单元,用于保存一套公开参数;公开参数选择单元,用于获取公开参数保存单元中保存的公开参数。该情况即对应着当客户端和服务器进行了IBE认证协商后,默认使用了该套预共享的公开参数。
或者具体包括:
公开参数保存单元,用于保存至少一套公开参数;
公开参数选择单元,用于根据服务器的通知,从公开参数保存单元中选择一套公开参数;
响应单元,用于当公开参数选择单元选择了一套公开参数后,响应服务器选择的公开参数;
或者具体包括:
公开参数获取单元,用于获取服务器发送的至少一套公开参数;
公开参数选择单元,用于从公开参数获取单元中获取的公开参数中,选择出一套公开参数;
响应单元,用于当公开参数选择单元选择了一套公开参数后,通知服务器选择的公开参数;
或者具体包括:
PKG标识获取单元,用于获取服务器发送的至少一个私钥生成器PKG标识;
PKG标识选择单元,用于从PKG标识获取单元获取的PKG标识中,选择一个PKG标识;
公开参数获取单元,用于根据PKG标识选择单元选择的PKG标识,向选择的PKG标识对应的PKG获取公开参数;
通知单元,用于当PKG标识选择单元选择了PKG标识后,通知服务器选择的PKG标识。
或者具体包括:
地址标识获取单元,用于获取服务器发送的公开参数服务器中保存的至少一个公开参数的地址标识;
地址标识选择单元,用于根据地址标识获取单元获取的地址标识中,选择一个地址标识;
公开参数获取单元,用于根据地址标识选择单元选择的地址标识,根据选择的地址标识向公开参数服务器获取公开参数;
通知单元,用于当地址标识选择单元选择了地址标识后,通知服务器选择的地址标识。
综上所述,本发明实施例提供的客户端,通过将IBE技术与SSL技术结合,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的,并且SSL客户端和服务器多种公开参数协商模式中的任意一种,可以唯一确定了加密和解密运算过程中使用的公开参数,实现了预主密钥的安全传输。
实施例4
参见图7,本发明实施例提供了一种服务器,包括:
IBE协商模块401,用于和客户端进行基于标识加密的安全认证IBE的协商;
公开参数协商模块402,用于和客户端协商用于进行IBE认证的公开参数;
私钥获取模块403,用于获取私钥,私钥用于解密IBE加密的预主密钥;
处理模块404,用于接收客户端发送的IBE加密后的预主密钥,利用私钥获取模块获取的私钥进行解密后,获取预主密钥的明文。
其中,IBE协商模块401具体用于接收客户端发送的客户端请求消息,客户端请求消息中携带用于进行基于标识加密的安全认证IBE的密码套件;判断支持IBE认证后,向客户端返回确认消息。
其中,公开参数协商模块402具体包括:
公开参数保存单元,用于保存一套公开参数;公开参数选择单元,用于获取公开参数保存单元中保存的公开参数。该情况即对应着当客户端和服务器进行了IBE认证协商后,默认使用了该套预共享的公开参数。
或者具体包括:
公开参数保存单元,用于保存至少一套公开参数;
通知单元,用于根据公开参数保存单元保存的公开参数,向客户端发送通知;
接收单元,用于接收客户端返回的选择的公开参数响应;
获取单元,用于根据接收单元接收的响应,获取公开参数保存单元中保存的公开参数。
或者具体包括:
发送单元,用于向客户端发送至少一套公开参数;
接收单元,用于接收客户端返回的选择的公开参数响应;
获取单元,用于根据接收单元接收的响应,获取一套公开参数。
或者具体包括:
PKG标识发送单元,用于向客户端发送至少一个私钥生成器PKG标识;
接收单元,用于接收客户端返回的选择的PKG标识;
获取单元,用于接收单元接收的PKG标识,获取一套用于IBE的公开参数。
或者具体包括:
地址标识发送单元,用于向客户端发送公开参数服务器中保存的至少一个公开参数的地址标识;
接收单元,用于接收客户端返回的选择的地址标识;
获取单元,用于接收单元接收的地址标识,获取一套用于IBE的公开参数。
综上所述,本发明实施例提供的服务器,通过将IBE技术与SSL技术结合,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的,并且SSL客户端和服务器多种公开参数协商模式中的任意一种,可以唯一确定了加密和解密运算过程中使用的公开参数,实现了预主密钥的安全传输。
实施例5
本发明实施例提供了一种提供设备,该提供设备用于在服务器和客户端在基于IBE的安全套接层SSL协议的协商认证过程中,根据服务器和客户端的协商结果提供用于IBE的公开参数,其中,公开参数用于客户端根据公开参数和服务器标识生成并发送IBE加密的预主密钥;相应地,服务器根据公开参数和获取的私钥,获取IBE加密的预主密钥的明文。
其中,本领域技术人员可以获知使用IBE进行认证时,需要获取用于IBE认证的公开参数,其中,该公开参数通常为一套数据包含一系列的参数,例如根据系统的需要配置的安全曲线、算法等等。具体实现时,可以为每套公开参数设置对应的标识,通过查看标识便可以知道具体使用了哪套对应的公开参数。
进一步地,本发明实施例提供的能够提供公开参数的提供设备,还可以用于向服务器提供私钥,其中,该私钥用于当获取到IBE解密后的预主密钥后,对该预主密钥进行解密,从而获取到该预主密钥的明文。
本发明实施例涉及的提供设备在具体实施时,可以通过现有的PKG设备来实现,通过PKG设备实现提供公开参数的实体功能,每个PKG设备中配置的公开参数不同,相应地,在系统配置时,需要提供多个PKG设备来支持提供多套公开参数的目的,优选地,还可以通过单独设置公开参数服务器来实现提供至少一套公开参数的实体功能,事先将至少一套公开参数配置在该公开参数服务器中,对应与每套公开参数还可以为其配置对应的标识,本发明实施例不限制在具体实施时的具体的实现形式。
综上所述,本发明实施例提供的技术方案,通过将IBE技术与SSL技术结合,丰富现有的SSL协议中预主密钥的生成形式,实现了充分扩展了现有的SSL协议的使用范围的目的,并且SSL客户端和服务器多种公开参数协商模式中的任意一种,可以唯一确定了加密和解密运算过程中使用的公开参数,实现了预主密钥的安全传输。本领域技术人员可以获知,当服务器获取到预主密钥之后的SSL协商和通信过程和现有的标准SSL一致。本发明实施例还可以应用于使用IBE的其他技术方案中。
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的具体实施例,并不用以限制本发明,对于本技术领域的普通技术人员来说,凡在不脱离本发明原理的前提下,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种获取密钥的方法,其特征在于,服务器与客户端通过安全套接层协议SSL报文进行交互,所述方法包括:
所述服务器和客户端进行基于标识加密算法IBE加密的安全认证的协商;
所述服务器和所述客户端协商用于所述IBE的公开参数,所述服务器接收所述客户端利用获取的所述服务器标识和所述协商获取的公开参数而生成的所述IBE加密后的预主密钥,利用获取的私钥对所述接收的预主密钥进行解密以获取所述预主密钥的明文;
其中,所述服务器和客户端进行基于标识加密算法IBE加密的安全认证的协商,包括:
所述客户端向所述服务器发送客户端握手请求消息ClientHello,所述ClientHello中携带使用IBE进行认证的密码套件;
所述服务器收到所述ClientHello,判断自身支持使用IBE进行认证后,向所述客户端返回作为所述ClientHello响应消息的服务器握手请求消息ServerHello,所述ServerHello消息中携带所述服务器确认选择的IBE认证的密码套件;
相应地,所述服务器和所述客户端协商用于所述IBE的公开参数,所述服务器接收所述客户端利用获取的所述服务器标识和所述协商获取的公开参数而生成的所述IBE加密后的预主密钥,利用获取的私钥对所述接收的预主密钥进行解密以获取所述预主密钥的明文包括:
所述服务器同意使用IBE进行认证后,向所述客户端发送服务器密钥交换消息ServerKeyExchange,所述ServerKeyExchange用于和所述客户端协商进行IBE认证所需要的公开参数的相关信息;
所述服务器向所述客户端发送服务器握手请求完成消息ServerHelloDone,所述ServerHelloDone用于通告客户端服务器方的认证准备工作已经完成;
所述客户端向所述服务器发送客户端密钥交换消息ClientKeyExchange,所述ClientKeyExchange携带利用预先获取的所述服务器标识和所述协商获取的公开参数完成IBE加密的预主密钥;
所述服务器收到所述ClientKeyExchange后,根据所述ClientKeyExchange携带的IBE加密的预主密钥,利用预先从私钥生成器PKG获取的私钥对IBE加密的预主密钥进行解密,得到所述预主密钥的明文。
2.如权利要求1所述的获取密钥的方法,其特征在于,当客户端和所述服务器预共享了一套公开参数时,所述服务器和所述客户端协商用于所述IBE的公开参数,具体为:
所述服务器应用所述ServerHelloDone表示所述服务器握手消息的结束、使用预共享的公开参数;
相应地,所述客户端向所述服务器发送客户端密钥交换消息ClientKeyExchange时,所述客户端通过所述ClientKeyExchange消息将使用预共享公开参数和服务器标识加密的预主密钥发送至服务器。
3.如权利要求1所述的获取密钥的方法,其特征在于,当客户端和所述服务器预共享了唯一的一套公开参数时,所述服务器和所述客户端协商用于所述IBE的公开参数,具体为:
所述服务器通过所述ServerKeyExchange发送预设标识,通告所述客户端使用预共享的公开参数;
相应地,所述客户端向所述服务器发送客户端密钥交换消息ClientKeyExchange时,所述客户端对使用预共享参数进行确认,通过所述ClientKeyExchange传递预设标识,确认使用了预共享的公开参数。
4.如权利要求3所述的获取密钥的方法,其特征在于,当所述客户端和所述服务器预共享了多套公开参数时,服务器和所述客户端协商用于所述IBE的公开参数;具体为:
所述服务器从共享的多套公开参数中选择至少一套公开参数,并通过所述ServerKeyExchange将选择出的公开参数的对应的标识发送到所述客户端,其中,每套公开参数对应与唯一的标识;
相应地,所述客户端根据所述服务器提供的标识获取到对应的一套公开参数,通过所述ClientKeyExchange携带获取的公开参数对应的标识响应服务器。
5.如权利要求1所述的获取密钥的方法,其特征在于,所述服务器和所述客户端协商用于所述IBE的公开参数,具体为:
如果所述客户端和所述服务器未预先共享公开参数,则所述服务器使用所述ServerKeyExchange消息将加密需要使用的一套公开参数发送给所述客户端;或者所述服务器使用所述ServerKeyExchange消息将多套公开参数发送给所述客户端;
相应地,所述客户端从收到的多套公开参数中,选择出一套使用的公开参数后,通过所述ClientKeyExchange消息响应所述服务器选择使用的公开参数。
6.如权利要求1所述的获取密钥的方法,其特征在于,所述服务器和所述客户端协商用于所述IBE的公开参数,具体为:
如果采用远程获取的方式获取公开参数,则所述服务器使用所述ServerKeyExchange消息将用于定位公开参数的标识发送给客户端,所述用于定位公开参数的标识包括产生公开参数的PKG的地址、域名;
相应地,所述客户端收到所述ServerKeyExchange消息后,根据所述ServerKeyExchange携带的定位公开参数的标识,去对应的PKG获取公开参数后,使用所述ClientKeyExchange通告所述服务器其选择的公开参数。
7.如权利要求1所述的获取密钥的方法,其特征在于,所述服务器和所述客户端协商用于所述IBE的公开参数,具体为:
如果采用远程获取的方式获取公开参数,并且预设了用于存储多套公开参数的公开参数服务器,则所述服务器使用所述ServerKeyExchange消息将公开参数在公开参数服务器中的保存的地址发送给所述客户端;
相应地,当所述客户端收到所述ServerKeyExchange消息后,根据所述ServerKeyExchange消息携带的地址向所述公开参数服务器获取公开参数后,通过所述ClientKeyExchange通告所述服务器其选择的公开参数的地址。
CN200810093122.4A 2008-04-21 2008-04-21 一种获取密钥的方法、系统和设备 Expired - Fee Related CN101567784B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN200810093122.4A CN101567784B (zh) 2008-04-21 2008-04-21 一种获取密钥的方法、系统和设备
PCT/CN2009/071371 WO2009129734A1 (zh) 2008-04-21 2009-04-20 一种获取密钥的方法、系统和设备
EP09735103A EP2271025A4 (en) 2008-04-21 2009-04-20 METHOD, SYSTEM AND DEVICE FOR RECORDING A KEY
US12/871,646 US8769287B2 (en) 2008-04-21 2010-08-30 Method, system, and device for obtaining keys

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810093122.4A CN101567784B (zh) 2008-04-21 2008-04-21 一种获取密钥的方法、系统和设备

Publications (2)

Publication Number Publication Date
CN101567784A CN101567784A (zh) 2009-10-28
CN101567784B true CN101567784B (zh) 2016-03-30

Family

ID=41216432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810093122.4A Expired - Fee Related CN101567784B (zh) 2008-04-21 2008-04-21 一种获取密钥的方法、系统和设备

Country Status (4)

Country Link
US (1) US8769287B2 (zh)
EP (1) EP2271025A4 (zh)
CN (1) CN101567784B (zh)
WO (1) WO2009129734A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789865B (zh) * 2010-03-04 2011-11-30 深圳市华信安创科技有限公司 一种用于加密的专用服务器及加密方法
US9065637B2 (en) * 2012-01-25 2015-06-23 CertiVox Ltd. System and method for securing private keys issued from distributed private key generator (D-PKG) nodes
JP5981761B2 (ja) * 2012-05-01 2016-08-31 キヤノン株式会社 通信装置、制御方法、プログラム
CN102801616B (zh) * 2012-08-02 2015-04-15 华为技术有限公司 报文发送和接收的方法、装置和系统
CN103905384B (zh) * 2012-12-26 2017-11-24 北京握奇数据系统有限公司 基于安全数字证书的嵌入式终端间会话握手的实现方法
CN104142866B (zh) * 2013-05-06 2018-11-06 深圳市腾讯计算机系统有限公司 应用程序与数据平台系统的交互控制方法及系统
CN104967590B (zh) * 2014-09-18 2017-10-27 腾讯科技(深圳)有限公司 一种传输通信消息的方法、装置和系统
CN104468560B (zh) * 2014-12-02 2017-09-19 中国科学院声学研究所 网络保密数据明文的采集方法及系统
CN105743847A (zh) * 2014-12-09 2016-07-06 北京大唐高鸿数据网络技术有限公司 基于WebSocket实现SIP信令安全传输的方法
CN108111467B (zh) * 2016-11-24 2021-04-09 华为技术有限公司 身份认证方法与设备及系统
CN107454079B (zh) * 2017-08-04 2020-07-07 西安电子科技大学 基于物联网平台的轻量级设备认证及共享密钥协商方法
US10764328B2 (en) * 2017-11-03 2020-09-01 International Business Machines Corporation Altering cipher and key within an established session
CN112152978B (zh) * 2019-06-28 2021-07-20 北京金山云网络技术有限公司 一种秘钥管理方法、装置、设备及存储介质
CN113067823B (zh) * 2021-03-22 2021-11-23 西安电子科技大学 邮件用户身份认证和密钥分发方法、系统、设备及介质
US20230171099A1 (en) * 2021-11-27 2023-06-01 Oracle International Corporation Methods, systems, and computer readable media for sharing key identification and public certificate data for access token verification

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349538B2 (en) * 2002-03-21 2008-03-25 Ntt Docomo Inc. Hierarchical identity-based encryption and signature schemes
US6886096B2 (en) * 2002-11-14 2005-04-26 Voltage Security, Inc. Identity-based encryption system
US7571321B2 (en) * 2003-03-14 2009-08-04 Voltage Security, Inc. Identity-based-encryption messaging system
GB0311621D0 (en) * 2003-05-20 2003-06-25 Nokia Corp A system for crytographical authentication
US7860247B2 (en) * 2004-11-12 2010-12-28 Dublin City University Identity based encryption
CN1262087C (zh) * 2005-01-14 2006-06-28 南相浩 基于标识的密钥产生方法
CA2526791C (en) * 2005-11-14 2012-01-10 Bce Inc. Method and system for providing personalized service mobility
US20080065729A1 (en) * 2006-09-08 2008-03-13 Pitney Bowes Incorporated Method and system for service provider to be compensated for delivering e-mail messages while reducing amount of unsolicited e-mail messages

Also Published As

Publication number Publication date
EP2271025A1 (en) 2011-01-05
WO2009129734A1 (zh) 2009-10-29
EP2271025A4 (en) 2012-01-18
US20100325436A1 (en) 2010-12-23
CN101567784A (zh) 2009-10-28
US8769287B2 (en) 2014-07-01

Similar Documents

Publication Publication Date Title
CN101567784B (zh) 一种获取密钥的方法、系统和设备
CN101459506B (zh) 密钥协商方法、用于密钥协商的系统、客户端及服务器
CN104702611B (zh) 一种保护安全套接层会话密钥的设备及方法
CN104270249B (zh) 一种从无证书环境到基于身份环境的签密方法
WO2016107320A1 (zh) 网站安全信息的加载方法和浏览器装置
CN102082796B (zh) 一种基于http的产生会话密钥的方法及系统
CN108650227A (zh) 基于数据报安全传输协议的握手方法及系统
US20170201382A1 (en) Secure Endpoint Devices
CN103237305B (zh) 面向移动终端上的智能卡密码保护方法
CN104301108B (zh) 一种从基于身份环境到无证书环境的签密方法
CN102404347A (zh) 一种基于公钥基础设施的移动互联网接入认证方法
CN111756529B (zh) 一种量子会话密钥分发方法及系统
CN102932350B (zh) 一种tls扫描的方法和装置
CN101667916A (zh) 一种基于分离映射网络使用数字证书验证用户身份的方法
CN109586908A (zh) 一种安全报文传输方法及其系统
CN101242426B (zh) 建立传输层安全连接的方法、系统及装置
CN111756528B (zh) 一种量子会话密钥分发方法、装置及通信架构
CN101296083A (zh) 一种加密数据传输方法和系统
CN115567210A (zh) 采用量子密钥分发实现零信任访问的方法及系统
CN103716280B (zh) 数据传输方法、服务器及系统
CN108574571A (zh) 私钥生成方法、设备以及系统
CN105791285A (zh) 一种支持iec62351加密mms报文在线分析方法
CN104869000A (zh) 一种基于标识密码跨域安全通信方法及系统
Ćurguz Vulnerabilities of the SSL/TLS Protocol
CN116366262A (zh) 双SSL证书web服务器设置方法和web服务系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Applicant after: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Applicant before: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES Co.,Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD. TO: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220909

Address after: No.1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan, 611730

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160330

CF01 Termination of patent right due to non-payment of annual fee