CN104378374A - 一种基于安全套接层建立通信的方法及系统 - Google Patents

一种基于安全套接层建立通信的方法及系统 Download PDF

Info

Publication number
CN104378374A
CN104378374A CN201410650365.9A CN201410650365A CN104378374A CN 104378374 A CN104378374 A CN 104378374A CN 201410650365 A CN201410650365 A CN 201410650365A CN 104378374 A CN104378374 A CN 104378374A
Authority
CN
China
Prior art keywords
module
information
balancing device
load
client computer
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.)
Granted
Application number
CN201410650365.9A
Other languages
English (en)
Other versions
CN104378374B (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.)
NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER)
Original Assignee
NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER)
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 NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER) filed Critical NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER)
Priority to CN201410650365.9A priority Critical patent/CN104378374B/zh
Publication of CN104378374A publication Critical patent/CN104378374A/zh
Application granted granted Critical
Publication of CN104378374B publication Critical patent/CN104378374B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • 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/32Cryptographic 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/3271Cryptographic 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/3273Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种基于安全套接层建立通信的方法及系统,该方法首先使客户机与负载均衡设备于所述安全套接层中相互握手,然后相互认证,认证后客户机与负载均衡设备建立通信。该发明的有益效果为:通过采用SSL协议为客户端与服务器端提供可靠快速的数据通信,并设计通过设计组合公钥提高SSL运算效率,降低相同强度下的密钥长度,提高网络的灵活性及可用性。

Description

一种基于安全套接层建立通信的方法及系统
技术领域
本发明涉及数据通信技术领域,尤其涉及一种基于安全套接层建立通信的方法及系统。
背景技术
随着互联网技术高速发展的今天,随着业务量的提高,随之而来的用户访问量和数据流量的暴增对服务器的承受并发能力以及突发的流量增长提出了更高的要求。由于单一服务器设备有限的负载能力根本无法承担越来越大的处理速度和计算强度要求。对于这个瓶颈问题,单纯靠淘汰现有设备做设备硬件升级,将造成现有资源浪费并且无法满足再次业务量提升的出现的情况。常用方法是使用多个设备节点组成服务器组,并使用负载均衡(又称为负载分担)技术,将负载(工作任务)进行平衡、分摊到多个操作单元上执行。如何在提高服务器组负载能力的同时满足数据通信安全性的要求,针对互联网络环境下新的安全和风险问题,使用认证技术保证敏感数据的安全保护是亟待解决的问题。
组合公钥(CPK,Conbined Public Key),是我国信息安全专家南湘浩教授于1999年提出的,是我国拥有自主知识产权的认证技术,对于规模化认证及鉴别系统不依赖层次化的CA机构链和在线目录(LDAP,Lightweight DirectoryAccess Protocol),能快捷的进行实体鉴别和身份认证。CPK认证系统可以高效、快捷的管理和控制密钥和认证行为,更加适用于我国银行、金融、军事等网络实体。
安全套接层(secure socket layer,SSL)协议具有保护传输数据以及识别通信机器的功能。SSL主要采用公开密钥加密体制和X.509数字证书技术在Internet基础上提供服务器认证、SSL链路上的数据完整性和SSL链路上数据的保密性等安全性保证。负载均衡设备通过采用SSL协议来实现数据的保密性、消息完整性和端点认证。在SSL会话中,常用证书来验证双方身份、协商加密算法、生成密钥等,而基于RSA的非对称加密算法交换密钥存在性能上的不足,在本方案中采用了性能更加出色的CPK算法,CPK算法本质上是利用椭圆曲线加密方法,与RSA方法相比,它的安全性能更高,例如160位椭圆曲线算法与1024位RSA、DSA有相同的安全强度。并且CPK的计算量小,处理速度快。存储空间占用小,由于CPK的密钥长度要求和系统参数相比RSA小很多,所以占用的存储空间小得多,带宽的要求低也使得CPK算法较RSA有更大的优势。
由于RSA加密算法进行加密存在以上不足,为此,本发明提出将组合公钥椭圆曲线加密算法应用于SSL安全握手中,并设计客户端的CPK算法插件。这样,可以大大提高运算效率,并在相同的安全强度下减少密钥的长度,其运算量较小,复杂度也随之降低。
发明内容
本发明要解决的技术问题在于,针对上述现有技术中RSA加密算法占用存储空间大、宽带要求高的问题,提供一种基于安全套接层建立通信的方法及系统。
本发明解决其技术问题所采用的技术方案是:一方面,构造一种基于安全套接层建立通信的方法,包括以下步骤:
S1、客户机与负载均衡设备于所述安全套接层中相互发送握手请求信息;
S2、所述客户机与所述负载均衡设备握手之后,所述负载均衡设备将包括公钥及私钥的数字证书及其证书链发送给所述客户机;
S3、所述客户机认证所述数字证书及所述证书链,并根据所述负载均衡设备的公钥认证所述负载均衡设备;
S4、所述客户机依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备;
S5、所述负载均衡设备使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息,并向所述客户机发出一提问信息;
S6、所述客户机对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机的公钥至所述负载均衡设备;
S7、所述负载均衡设备依据所述数字签名后的提问信息以及所述客户机的公钥认证所述客户机;
S8、所述客户机与所述负载均衡设备相互认证成功后建立通信。
在本发明所述的方法中,所述步骤S1包括以下子步骤:
S11、所述客户机向所述负载均衡设备发出第一握手消息,所述第一握手消息包括:客户机所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;
S12、所述负载均衡设备接收到所述第一握手消息之后,向所述客户机返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机的安全套接层版本号、会话ID。
在本发明所述的方法中,所述步骤S2包括以下子步骤:
S21、所述负载均衡设备生成包括唯一身份标识信息的安全套接层属性信息;
S22、所述负载均衡设备依据所述安全套接层属性信息获取第一哈希值;
S23、所述负载均衡设备依据所述负载均衡设备的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;
S24、所述负载均衡设备将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机。
在本发明所述的方法中,所述步骤S3包括以下子步骤:
S31、所述客户机计算所述证书链中颁发者的公钥;
S32、所述客户机依据所述颁发者的公钥获取第二哈希值;
S33、验证所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等,若相等,则执行步骤S34;
S34、所述客户机计算访问方中的公钥;
S35、依据所述访问方的公钥获取第三哈希值,并判断所述第一哈希值与所述第三哈希值是否相等,若相等,则执行步骤S36;
S36、依据所述访问方中的公钥验证所述第一数字签名。
在本发明所述的方法中,所述步骤S5包括以下子步骤:
S51、所述负载均衡设备使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息,
S52、所述客户端依据所述握手请求信息向所述负载均衡设备发送第一消息认证码;
S53、所述负载均衡设备依据所述握手请求信息向所述客户端发送第二消息认证码;
S54、所述客户端接收到所述第二消息认证码之后向所述负载均衡设备发送一完成信息;
S55、所述负载均衡设备依据所述完成信息向所述客户机发出一提问信息。
另一方面,提供一种基于安全套接层建立通信的系统,包括客户机及负载均衡设备;
所述客户机包括客户机握手模块、客户机认证模块、主密钥生成模块、数字签名模块、以及客户机通信模块;所述负载均衡设备包括设备握手模块、发送模块、恢复模块、设备认证模块、以及设备通信模块;
所述客户机握手模块以及所述设备握手模块用于在所述安全套接层中相互发送握手请求信息;
所述发送模块用于将包括公钥及私钥的数字证书及其证书链发送给所述客户机;
所述客户机认证模块用于认证所述数字证书及所述证书链,并根据所述负载均衡设备的公钥认证所述负载均衡设备;
所述主密钥生成模块用于依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备;
所述恢复模块用于使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息,并向所述客户机发出一提问信息;
所述数字签名模块用于对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机的公钥至所述负载均衡设备;
所述设备认证模块用于依据所述数字签名后的提问信息以及所述客户机的公钥认证所述客户机;
所述客户机通信模块以及所述设备通信模块用于在相互认证成功后建立通信。
在本发明所述的系统中,所述客户机握手模块还用于向所述负载均衡设备发出第一握手消息,所述第一握手消息包括:客户机所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;
所述设备握手模块还用于接收到所述第一握手消息之后,向所述客户机返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机的安全套接层版本号、会话ID。
在本发明所述的系统中,所述发送模块包括属性生成模块、第一获取模块、第一数字签名模块、以及信息发送模块;
所述属性生成模块用于生成包括唯一身份标识信息的安全套接层属性信息;
所述第一获取模块用于依据所述安全套接层属性信息获取第一哈希值;
所述第一数字签名模块用于依据所述负载均衡设备的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;
所述信息发送模块用于将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机。
在本发明所述的系统中,所述客户机认证模块包括颁发者公钥计算模块、第二获取模块、第一判断模块、访问方计算模块、第三获取模块、第二判断模块、以及验证模块;
所述颁发者公钥计算模块用于计算所述证书链中颁发者的公钥;
所述第二获取模块用于依据所述颁发者的公钥获取第二哈希值;
所述第一判断模块用于判断所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等;
所述访问方计算模块用于计算访问方中的公钥;
所述第三获取模块用于依据所述访问方的公钥获取第三哈希值;
所述第二判断模块用于判断所述第一哈希值与所述第三哈希值是否相等;
所述验证模块用于依据所述访问方中的公钥验证所述第一数字签名。
在本发明所述的系统中,所述恢复模块包括恢复子模块、第一消息认证模块、第二消息认证模块、完成消息生成模块、以及提问消息生成模块;
所述恢复子模块用于使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息;
所述第一消息认证模块用于依据所述握手请求信息向所述负载均衡设备发送第一消息认证码;
所述第二消息认证模块用于依据所述握手请求信息向所述客户端发送第二消息认证码;
所述完成消息生成模块用于在接收到所述第二消息认证码之后向所述负载均衡设备发送一完成信息;
所述提问消息生成模块用于依据所述完成信息向所述客户机发出一提问信息。
上述公开的一种基于安全套接层建立通信的方法及系统具有以下有益效果:通过采用SSL协议为客户端与服务器端提供可靠快速的数据通信,并通过设计组合公钥提高SSL运算效率,降低相同强度下的密钥长度,提高网络的灵活性及可用性。
附图说明
图1为本发明一实施例提供的一种基于安全套接层建立通信的方法的流程图;
图2为本发明一实施例提供的一种基于安全套接层建立通信的系统的方框图;
图3为本发明一实施例提供的一种基于安全套接层建立通信的系统的结构示意图;
图4为CPK插件运算负载均衡设备组合公钥的生成流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供了一种基于安全套接层建立通信的方法及系统,本发明涉及服务器负载均衡技术和支持CPK密钥管理体制的SSL安全通信协议,具体为应用支持基于椭圆曲线离散对数问题构建的CPK算法的SSL加速的服务器负载均衡的设计方法及步骤。通过引入CPK加密算法的SSL协议为客户端与服务器端提供可靠快速的数据通信,并设计组合公椭圆曲线钥CPK加密算法SSL加速模块SSLbaseCPK-ProcessUnit、SSL客户端CPK算法插件,为提高SSL运算效率,降低相同强度下的密钥长度,提高网络的灵活性及可用性。
参见图1,图1为本发明一实施例提供的一种基于安全套接层建立通信的方法的流程图,该方法设计了负载均衡设备2中的CPK加密算法SSL加速模块SSLbaseCPK-ProcessUnit、以及客户端CPK算法插件。SSLbaseCPK-ProcessUnit处理器(即SSL-BaseCPK-PU)负责处理支持CPK算法的SSL协议的解封装,在客户端与此处理器之间为密文传输,将解密后的明文数据递交给负载均衡模块,负载均衡模块使用指定的负载均衡算法将会话定位到服务器节点,服务器节点收到用户请求后,将明文数据递交给负载均衡设备2,SSLbaseCPK-ProcessUnit再将明文数据加密后发送给客户端,由于现阶段的浏览器不支持CPK算法的,应在客户端浏览器中安装支持的算法插件。由于传统的SSL协议要求使用非对称加密算法协商密钥,使得使用RSA加密算法的SSL服务器的CPU被大部分的时间都在处理SSL加解密,只有少量约20%的时间处理应用程序。本发明提出使用灵活性远远高于RSA算法的CPK加密算法,应用到SSL协议的握手协议过程中。在保证用户与服务器通信交互的安全性的基础上,加速负载均衡SSL的计算。具体的,该方法包括以下步骤:
S1、客户机1与负载均衡设备2于所述安全套接层中相互发送握手请求信息;其中,步骤S1包括以下子步骤:
S11、所述客户机1向所述负载均衡设备2发出第一握手消息,所述第一握手消息包括:客户机1所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;例如,参见图3,图3是本发明另一实施例提供的一种基于安全套接层建立通信的系统的结构示意图,图3中,SSL握手的第一阶段启动逻辑连接,建立这个连接的安全能力。首先客户机1向负载均衡设备2中的SSL-BaseCPK-PU发出Client hello消息,即第一握手消息并等待PU响应,Client hello消息包括:
Version:客户端可以支持的SSL最高版本号;
Random:32字节随机数;
Session id:确定该会话的会话id;
Cipher suite:一个客户端可以支持的密码套件列表,Compression method:一个客户端可以支持的压缩算法列表等信息。
其中,常见密码套件列表如下表:
序号 名称
1 TLS_RSA_WITH_NULL_MD5 0x0001
2 TLS_RSA_WITH_NULL_SHA 0x0002
3 TLS_RSA_EXPORT_WITH_RC4_40_MD5 0x0003
4 TLS_RSA_WITH_RC4_128_MD5 0x0004
5 TLS_RSA_WITH_RC4_128_SHA 0x0005
6 TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 0x0006
常见国密协议的密码套件列表如下表:
序号 名称
1 ECDHE_SM1_SM3 {0xe,0x01}
2 ECDHE_SM1_SHA1 {0xe,0x02}
3 ECC_SM1_SM3 {0xe,0x03}
4 ECC_SM1_SHA1 {0xe,0x04}
5 IBSDH_SM1_SM3 {0xe,0x05}
6 IBSDH_SM1_SHA1 {0xe,0x06}
7 IBC_SM1_SM3 {0xe,0x07}
8 IBC_SM1_SHA1 {0xe,0x08}
9 RAS_SM1_SM3 {0xe,0x09}
10 RAS_SM1_SHA1 {0xe,0x0a}
如:*_ECDH_ECDSA_*的密钥交换算法为ECDH、签名算法为ECDSA,当使用组合密钥CPK算法时也可配合国密椭圆曲线算法SM2进行。
S12、所述负载均衡设备2接收到所述第一握手消息之后,向所述客户机1返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机1的安全套接层版本号、会话ID。例如:SSL-BaseCPK-PU向客户机1返回server hello消息,即第二握手消息,对client hello消息中的信息进行确认,确认信息包括:
version:版本号取值,用于生成主密钥的32字节随机数;
session ID:从client hello中选择支持的一个密码套件和压缩方法,本文中选取套件定为的SM2_ECDH_ECDSA_*,值选取为{0xe,0x0b}。选取SM2国密算法为非对称密钥的原因是,SM2选取的椭圆曲线确定,使用CPK算法在密钥生成中心已经使用SM2推荐椭圆曲线使用CPK组合策略,生成负载均衡设备2证书的中包含的公私钥对。
S2、所述客户机1与所述负载均衡设备2握手之后,所述负载均衡设备2将包括公钥及私钥的数字证书及其证书链发送给所述客户机1;SSL-BaseCPK-PU启动SSL握手第2阶段,SSL-BaseCPK-PU将自己的数字证书(这里选取椭圆曲线取为的sm2算法数字证书)和到根CA整个链发给客户端,使客户端能用服务器证书中的服务器公钥认证服务器,具体的,步骤S2包括以下子步骤:
S21、所述负载均衡设备2生成包括唯一身份标识信息的安全套接层属性信息;例如,SSL_BaseCPK_data={IDs,random},定义为SSL_BaseCPK_data,其中内容包括:ssl_cpk处理单元的唯一标识IDs,这里不需要发送公钥Ps,是由于CPK算法可以利用唯一标识和公钥矩阵生成公钥,生成随机数random;
S22、所述负载均衡设备2依据所述安全套接层属性信息获取第一哈希值;例如:MD1=Hash(SSL_BaseCPK_data),SSL_BaseCPK_data数据求Hash值MD1。
S23、所述负载均衡设备2依据所述负载均衡设备2的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;例如:SIGs=SIGS(MD1),数字签名:对MD用处理单元私钥做CPK数字签名,得到签名:SIGs。
S24、所述负载均衡设备2将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机1。例如,MSG S→C:SSL_BaseCPK_data||MD1||signs||Cs。式子中的“→”表示“计算得出”的意思。
将SSL_BaseCPK_data、MD、sign、SSL-BaseCPK-PU数字证书及证书链发送至客户端。
此外,还可以交换服务器密钥,这里视密钥交换算法而定,配套使用ECDH密钥交换算法。
证书请求:SSL-BaseCPK-PU可能会要求客户自身进行验证(如果负载均衡设备2上采用双向认证)。
S3、所述客户机1认证所述数字证书及所述证书链,并根据所述负载均衡设备2的公钥认证所述负载均衡设备2;客户端收到SSL-BaseCPK-PU的信息,首先对SSL-BaseCPK-PU证书进行认证:利用sm2证书中的ID号计算。具体的,步骤S3包括以下子步骤:
S31、所述客户机1计算所述证书链中颁发者的公钥;例如,σ(IDs)→PKs,验证方插件计算数字证书链中颁发者公钥PKCA
S32、所述客户机1依据所述颁发者的公钥获取第二哈希值;例如,Hash(Cs)=MDCA,验证方插件计算数字证书的Hash值MDCA
S33、验证所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等,若相等,则执行步骤S34;例如,判断SIG-1(MDCA)=SIGca,验证数字证书中颁发者签名signatureValue的值是否与SIGca相等,相等则继续,不等则拒绝访问。
S34、所述客户机1计算访问方中的公钥;例如,σ(IDs)→PKS,验证方计算请求访问方主体公钥PKS
S35、依据所述访问方的公钥获取第三哈希值,并判断所述第一哈希值与所述第三哈希值是否相等,若相等,则执行步骤S36;例如,MD2=Hash(Request_data),请求访问数据求Hash值MD2,比较MD1与MD2是否相等。
S36、依据所述访问方中的公钥验证所述第一数字签名。例如,SIG-1(MD2)=SIG,验证数字签名,用对方公钥PKS验证签名SIGs,验证发方用户发来的签名SIGs的值是否与SIG相等。
S4、所述客户机1依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备2的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备2;验证完数字证书后,生成主密钥pre_master_secret(pre_master_secret是一个48字节的值,其中由两个版本号字节以及跟在后面的46个安全随机数产生的字节),并且使用SSL-BaseCPK-PU的公钥对主密钥进行加密,并发送给SSL-BaseCPK-PU。
S5、所述负载均衡设备2使用所述负载均衡设备2的私钥恢复所述主密钥中的认证信息,并向所述客户机1发出一提问信息;步骤S5包括以下子步骤:
S51、所述负载均衡设备2使用所述负载均衡设备2的私钥恢复所述主密钥中的认证信息;SL-BaseCPK-PU使用私钥恢复该主密钥认证信息,客户端和CPK认证单元都可以根据拿到的pre_master_secret以及客户端与SSL-BaseCPK-PU的随机数值各自计算加密密钥。
S52、所述客户端依据所述握手请求信息向所述负载均衡设备2发送第一消息认证码;客户端将握手阶段的MAC值发送给SSL-BaseCPK-PU。
S53、所述负载均衡设备2依据所述握手请求信息向所述客户端发送第二消息认证码;SSL-BaseCPK-PU将握手阶段的MAC值发送给客户端。这样SSL-BaseCPK-PU能够判断要使用的加密算法是否是安全商定的。如果判断成功客户端将会发送Finish消息。
S54、所述客户端接收到所述第二消息认证码之后向所述负载均衡设备2发送一完成信息;SSL-BaseCPK-PU收到客户端的Finish消息,则说明,SSL-BaseCPK-PU通过了客户端的认证。
S55、所述负载均衡设备2依据所述完成信息向所述客户机1发出一提问信息。为了认证客户端,SSL-BaseCPK-PU将会发送一个提问:Change_Cipher_Spec,客户端返回数字签名后的提问和自己的公开密钥,从而使得SSL-BaseCPK-PU得以认证客户端。
S6、所述客户机1对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机1的公钥至所述负载均衡设备2;即客户端返回数字签名后的提问和自己的公开密钥。
S7、所述负载均衡设备2依据所述数字签名后的提问信息以及所述客户机1的公钥认证所述客户机1;SSL-BaseCPK-PU认证客户端。
S8、所述客户机1与所述负载均衡设备2相互认证成功后建立通信。双方SSL认证结束,客户端将和负载均衡设备2开始通信,客户端将应用数据传给SSL-BaseCPK-PU,SSL-BaseCPK-PU将数据解密后传送给负载均衡模块,并且使用配置的负载均衡策略进行服务器选择,将明文数据发送到选中的服务器设备,服务器作出相应的明文数据回应给负载均衡设备2,负载均衡设备2的SSL-BaseCPK-PU使用客户端的公钥,将数据进行加密并发送给客户端。客户端使用自己私钥进行解密。从而使得客户端与服务器完成一次会话交互过程。
参见图2,图2为本发明一实施例提供的一种基于安全套接层建立通信的系统100的方框图,该系统100包括客户机1及负载均衡设备2。
所述客户机1包括客户机握手模块11、客户机认证模块12、主密钥生成模块13、数字签名模块14、以及客户机通信模块15;所述负载均衡设备2包括设备握手模块21、发送模块22、恢复模块23、设备认证模块24、以及设备通信模块25;参见图3,图3是本发明一实施例提供的一种基于安全套接层建立通信的系统的结构示意图,本发明中,设备握手模块21、发送模块22、恢复模块23、设备认证模块24、以及设备通信模块25实质上是设置于SSL-BaseCPK-PU中。
所述客户机握手模块11以及所述设备握手模块21用于在所述安全套接层中相互发送握手请求信息;具体的,所述客户机握手模块11还用于向所述负载均衡设备2发出第一握手消息,所述第一握手消息包括:客户机1所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;所述设备握手模块21还用于接收到所述第一握手消息之后,向所述客户机1返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机1的安全套接层版本号、会话ID。
所述发送模块22用于将包括公钥及私钥的数字证书及其证书链发送给所述客户机1;具体的,所述发送模块22包括属性生成模块、第一获取模块、第一数字签名模块14、以及信息发送模块22;所述属性生成模块用于生成包括唯一身份标识信息的安全套接层属性信息;所述第一获取模块用于依据所述安全套接层属性信息获取第一哈希值;所述第一数字签名模块14用于依据所述负载均衡设备2的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;所述信息发送模块22用于将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机1。
所述客户机认证模块12用于认证所述数字证书及所述证书链,并根据所述负载均衡设备2的公钥认证所述负载均衡设备2;具体的,所述客户机认证模块12包括颁发者公钥计算模块、第二获取模块、第一判断模块、访问方计算模块、第三获取模块、第二判断模块、以及验证模块;所述颁发者公钥计算模块用于计算所述证书链中颁发者的公钥;所述第二获取模块用于依据所述颁发者的公钥获取第二哈希值;所述第一判断模块用于判断所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等;所述访问方计算模块用于计算访问方中的公钥;所述第三获取模块用于依据所述访问方的公钥获取第三哈希值;所述第二判断模块用于判断所述第一哈希值与所述第三哈希值是否相等;所述验证模块用于依据所述访问方中的公钥验证所述第一数字签名。
所述主密钥生成模块13用于依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备2的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备2;
所述恢复模块23用于使用所述负载均衡设备2的私钥恢复所述主密钥中的认证信息,并向所述客户机1发出一提问信息;具体的,所述恢复模块23包括恢复子模块、第一消息认证模块、第二消息认证模块、完成消息生成模块、以及提问消息生成模块;所述恢复子模块用于使用所述负载均衡设备2的私钥恢复所述主密钥中的认证信息,所述第一消息认证模块用于依据所述握手请求信息向所述负载均衡设备2发送第一消息认证码;所述第二消息认证模块用于依据所述握手请求信息向所述客户端发送第二消息认证码;所述完成消息生成模块用于在接收到所述第二消息认证码之后向所述负载均衡设备2发送一完成信息;所述提问消息生成模块用于依据所述完成信息向所述客户机1发出一提问信息。
所述数字签名模块14用于对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机1的公钥至所述负载均衡设备2;
所述设备认证模块24用于依据所述数字签名后的提问信息以及所述客户机1的公钥认证所述客户机1;
所述客户机通信模块15以及所述设备通信模块25用于在相互认证成功后建立通信。
本发明具体实施过程如下:
一、相关的数学基础说明:
组合公钥CPK算法:
CPK组合公钥密钥管理体制是依据离散对数难题的数学原理构建公钥与私钥矩阵,然后采用杂凑函数与密码变换将实体的标识通过行映射及列置换算法得出矩阵的行、列坐标序列,从而按照相应的序列选取及组合矩阵元素,实现基于标识的超大规模密钥生产与分发。
构建CPK密钥管理体制既能够基于一般有限域离散对数问题,也能够基于椭圆曲线离散对数问题。鉴于椭圆曲线离散对数问题在密码应用中具有在相同安全条件下所占用的资源小于一般有限域离散对数问题的优势,CPK密钥管理体制是基于椭圆曲线离散对数问题构建的。
组合公钥体制采用有限域Fp上的选定一条椭圆曲线E:y2=(x3+ax+b)modn,以参数(a,b,G,n,p)定义。其中a,b是系数,a,b,x,y∈p,适当选取Ep(a,b)中的元素G为加法群的基点。n是以G为基点群的阶。根据上文ECC复合定理可知在椭圆曲线密码ECC中,任意多对公、私钥间,其私钥之和与公钥之和构成新的公、私钥对。
组合公钥(CPK,Combined Public Key)认证体系是利用ECC复合定理,由规模很少的矩阵通过组合生成数量极为庞大的海量公私钥对,以达到密钥管理规模化的目的。
假设适当的选取m×h个元素记为rij(1≤rij≤(n-1))作为私钥因子,私钥矩阵记为SSK。由SSK中的元素相应的可以得到m×h个倍点(xij,yij)==rijG,从而得到对应的公钥种子矩阵,公钥矩阵记为PSK,则
私钥矩阵及相应的公钥种子矩阵为:
本发明具体实施:
如图3所示,客户端用户试图对服务器进行访问,负载设备中的SSL-BaseCPK-PU与客户端进行基于CPK算法的SSL密文传输,负载均衡设备2与服务器之间采用明文传输,这样使得传统基于RSA加密算法的SSL服务器CPU 80%处理SSL加密解密的情况得到改变,服务器的应用程序逻辑处理能力得到加强。
在SSL握手阶段,客户端与负载均衡器的数据请求过程大概可分为以下四个过程:
第一阶段:客户端与负载均衡设备2就保护数据的算法达成一致,确定SSL版本、与服务器的会话的session ID、交换的随机数、压缩算法等;
第二阶段:发送负载均衡设备2国密标准SM2的证书,证书链,负载均衡设备2对签至客户端,客户端控件使用CPK认证方法对负载均衡设备2进行认证;
第三阶段:负载均衡设备2如启动双向认证,可选客户端发送客户端SM2证书进行认证;
第四阶段:SSL-BaseCPK-PU将会发送一个提问:Change_Cipher_Spec,客户端返回数字签名后的提问和自己的公开密钥,从而使得SSL-BaseCPK-PU得以认证客户端。
二、在客户端的CPK插件的设计:
1.标识组合密钥生成模块的实现
关于标识组合密钥的生成,是由包括唯一标识Hash函数变换、坐标映射算法和组合公私钥点加运算三个步骤得到的,这其中的Hash运算,选取的SM2选取的椭圆曲线上的加密运算和点加运算都是客户端插件实现过程的重要部分。
2.Hash函数模块
唯一标识的变换首先需要作Hash运算,这里将介绍Hash接口函数的实现,本文的Hash函数模块的接口函数提供了包括MD5、SHA1、SHA224、SHA256、SHA384、SHA512。由于篇幅的关系,这里只介绍SHA1函数接口的核心代码如下:
函数的功能是使用SHA1函数对输入的唯一标识字符串做Hash摘要,函数的参数分别为字符串指针,字符串大小,以及Hash变换后的字符串指针,该指针作为运算结果返回值。这里需要说明的是,由于接口函数的类型是constunsigned char*的,所以在运行中接收到CString类型的唯一标识输入应先使用CString类的GetBuffer()函数转换为char*,然后才可以转换为unsigned char*类型。
3.坐标映射函数模块
最简单的映射算法采用的是随机映射,根据SSL-BaseCPK-PU对客户端发来的唯一标识可以计算出对应的映射值,从而将唯一标识与对应的映射值相联系。唯一标识是约定好的负载均衡设备2CPK证书的CN项,只要是验证方能够认可的名称即可。这样在负载均衡设备2唯一标识与映射值之间就建立了一种确定关系,所以负载均衡设备2唯一标识在没有告知验证方的情况下不能随意更改,显然,唯一标识与组合公钥的捆绑将有利于公钥的计算。
在CPK组合公钥体系中,用户实体使用的公私钥是利用映射算法从公私钥因子矩阵中计算出来的。唯一标识做Hash运算后,就可以利用映射函数对唯一标识所对应的矩阵坐标进行映射,这里将映射函数接口的核心代码介绍如下:
由于公私钥矩阵为32*32,横坐标取值为1~32,所以将唯一标识的前32位转换为整数,每位加1,这里的映射函数,为了所得到的坐标数值比较均匀,将每位与32位(实验系统为32位机)的理想乘数相乘,这个“理想乘数”的得出与黄金分割法则有关,具体可以详见描述黄金分割法则的经典表达式斐波那契数列。最后得到的数字对横坐标的上限32取模,从而得到坐标映射序列。四、组合密钥的计算
由上节得到密钥矩阵横坐标的映射值序列{W1,W2,W3...W32},矩阵纵坐标顺序{1,2,3,…,32}选取,得到坐标序列{(W1,1),(W2,2),(W3,3)...(W32,32)}接着程序将根据选定的坐标序列计算组合私钥值:
CSK = ( r w 1 , 1 + r w 2 , 2 + r w 3 , 3 + . . . + r w 32 , 32 ) mod n , - - - ( 4.1 )
以及组合公钥(点加运算):
CPK = ( x w 1 , 1 , y w 1 , 1 ) + ( x w 2 , 2 , y w 2 , 2 ) + . . . + ( x w 32 , 32 , y w 32 , 32 ) = r w 1 , 1 · G + r w 2 , 2 · G + r w 3 , 3 · G + . . . + r w 32 , 32 · G - - - ( 4.2 )
这里将组合密钥函数接口的核心代码介绍如下:
由于公钥矩阵文件在插件中是公开的,利用映射得到的公钥矩阵坐标值,计算出组合公钥值。最后程序中的变量pubkey便是得到的组合公私钥值,当验证的收方需要获取用户的公钥时,由于负载均衡设备2唯一标识的映射算法对于某一个具体的系统来说是唯一的,由此验证方同样可以根据发方的负载均衡设备2唯一标识以及映射算法得出与用户的映射序列,根据公钥因子矩阵是公开的这一特性,任何验证方都可以计算出用户的公钥。上述代码,所采用的加法是椭圆曲线上的点加运算,进行n-1次点加运算的代价是相当小的。经过运算之后组合私钥和组合公钥就可以一一对应了,一旦有了组合公私钥对,就能够用基于以选取的SM2椭圆曲线的数字签名(ECDSA)或D-H密钥交换协议等等用来继续SSL中的数字签名和密钥交换。
三、插件实现范例:
浏览器CPK插件在计算负载均衡设备2的组合公钥的运算时,负载均衡设备2会提供唯一标识,然后做Hash函数变换、坐标映射算法和组合公钥的的加法点加运算,如图4所示,图4为CPK插件运算负载均衡设备2组合公钥的生成流程图。
设定的发起访问的负载均衡设备2唯一标识是:“负载均衡设备2管理员”,浏览器CPK插件可以提供包括MD5,SHA1,SHA224,SHA256,SHA384,SHA512在内的散列函数,这里选用的是SHA1算法,得到结果:
Hash(负载均衡设备2管理员)
=D6D3B295C0B330EA640F270451A9C0A095E2E62D
根据上面描述的坐标映射算法,将唯一标识的前32位转换为整数,每位加1,然后每位与32位(实验系统为32位机)的理想乘数相乘,最后得到的数字对横坐标的上限32取模:
最终得到矩阵的坐标映射序列:
(30,1)(15,2)(30,3)(4,4)(12,5)(11,6)(26,7)(22,8)(5,9)(25,10)(12,11)(4,12)(4,13)(25,14)(23,15)(19,16)(15,17)(29,18)(25,19)(16,20)(11,21)(8,22)(25,23)(29,24)(22,25)(18,26)(19,27)(26,28)(5,29)(25,30)(19,31)(25,32)。
插件根据坐标序列和公开的公钥矩阵计算组合公钥,映射坐标序列、公钥CPK运算结果如下:
CPK=(x30,1,y30,1)+(x15,2,y15,2)+…+(x25,32,y25,32)
=(r30,1·G+r15,2·G+…+r25,32·G)
=039C44C0A7F6AD94FEA8BD6D832D9DB81FC692D59AA817F752
接下来在SSL握手认证阶段,唯一标识为“负载均衡设备2管理员”的SSL-BaseCPK-PU向客户端发送定义为SSL_BaseCPK_data的数据,其中内容包括:负载均衡设备2的唯一标识IDs,这里不需要发送公钥Ps,是由于CPK算法可以利用唯一标识和公钥矩阵生成公钥,以及生成随机数random;
1、SSL_BaseCPK_data={IDs,random}={负载均衡设备2管理员,2014-07-02 10:53:35}
2、MD1=Hash(SSL_BaseCPK_data)=3399B9F83BA1C4A092D281A81E6B284E4E56897
3、signs=SIGS(MD1)=3036021900AFD2B30B92E1BB8C00DF0C7D2CE4009BC98FE151A76AFD4A021900A98C7B9B427DC1F66448AD223607270C1644EAB15C8A33A5
4、MSG S→C:SSL_BaseCPK_data||MD1||signs||Cs
对MD1用负载均衡设备2证书的私钥做ECDSA数字签名,得到签名:signs;将SSL_BaseCPK_data、MD1、signs、负载均衡设备2的数字证书发送客户端,也可将SSL_BaseCPK_data利用负载均衡设备2公钥PKS作加密操作后发送,则发送数据为MD1、signs、Cs证书。
SSL握手阶段客户端插件的CPK验证:
当CPK插件收到SSL-BaseCPK-PU发来的MD1、signs、Cs证书:
1、 SSL _ BaseCPK _ data = D SK S ( E PK S ( SSL _ BaseCPK _ data ) )
2、σ(IDS)→PKS=039C44C0A7F6AD94FEA8BD6D832D9DB81FC692D59AA817F752
3、MD2=Hash(SSL_BaseCPK_data)=13399B9F83BA1C4A092D281A81E6B284E4E56897=MD1
4、SIG-1(MD2)=signs’=3036021900AFD2B30B92E1BB8C00DF0C7D2CE4009BC98FE151A76AFD4A021900A98C7B9B427DC1F66448AD223607270C1644EAB15C8A33A5=signs
客户端CPK验证插件,利用负载均衡设备2的唯一主体标识“负载均衡设备2管理员”计算请求负载均衡设备2公钥PKs;接着对负载均衡设备2发来的SSL_BaseCPK_data数据求Hash值MD2,比较MD1与MD2是否相等,此处相等后,就可以验证发来SSL_BaseCPK_data数据的签名值是否相等。如果相等则可继续SSL握手流程。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (10)

1.一种基于安全套接层建立通信的方法,其特征在于,包括以下步骤:
S1、客户机与负载均衡设备于所述安全套接层中相互发送握手请求信息;
S2、所述客户机与所述负载均衡设备握手之后,所述负载均衡设备将包括公钥及私钥的数字证书及其证书链发送给所述客户机;
S3、所述客户机认证所述数字证书及所述证书链,并根据所述负载均衡设备的公钥认证所述负载均衡设备;
S4、所述客户机依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备;
S5、所述负载均衡设备使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息,并向所述客户机发出一提问信息;
S6、所述客户机对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机的公钥至所述负载均衡设备;
S7、所述负载均衡设备依据所述数字签名后的提问信息以及所述客户机的公钥认证所述客户机;
S8、所述客户机与所述负载均衡设备相互认证成功后建立通信。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1包括以下子步骤:
S11、所述客户机向所述负载均衡设备发出第一握手消息,所述第一握手消息包括:客户机所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;
S12、所述负载均衡设备接收到所述第一握手消息之后,向所述客户机返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机的安全套接层版本号、会话ID。
3.根据权利要求2所述的方法,其特征在于,所述步骤S2包括以下子步骤:
S21、所述负载均衡设备生成包括唯一身份标识信息的安全套接层属性信息;
S22、所述负载均衡设备依据所述安全套接层属性信息获取第一哈希值;
S23、所述负载均衡设备依据所述负载均衡设备的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;
S24、所述负载均衡设备将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机。
4.根据权利要求3所述的方法,其特征在于,所述步骤S3包括以下子步骤:
S31、所述客户机计算所述证书链中颁发者的公钥;
S32、所述客户机依据所述颁发者的公钥获取第二哈希值;
S33、验证所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等,若相等,则执行步骤S34;
S34、所述客户机计算访问方中的公钥;
S35、依据所述访问方的公钥获取第三哈希值,并判断所述第一哈希值与所述第三哈希值是否相等,若相等,则执行步骤S36;
S36、依据所述访问方中的公钥验证所述第一数字签名。
5.根据权利要求4所述的方法,其特征在于,所述步骤S5包括以下子步骤:
S51、所述负载均衡设备使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息;
S52、所述客户端依据所述握手请求信息向所述负载均衡设备发送第一消息认证码;
S53、所述负载均衡设备依据所述握手请求信息向所述客户端发送第二消息认证码;
S54、所述客户端接收到所述第二消息认证码之后向所述负载均衡设备发送一完成信息;
S55、所述负载均衡设备依据所述完成信息向所述客户机发出一提问信息。
6.一种基于安全套接层建立通信的系统,其特征在于,包括客户机及负载均衡设备;
所述客户机包括客户机握手模块、客户机认证模块、主密钥生成模块、数字签名模块、以及客户机通信模块;所述负载均衡设备包括设备握手模块、发送模块、恢复模块、设备认证模块、以及设备通信模块;
所述客户机握手模块以及所述设备握手模块用于在所述安全套接层中相互发送握手请求信息;
所述发送模块用于将包括公钥及私钥的数字证书及其证书链发送给所述客户机;
所述客户机认证模块用于认证所述数字证书及所述证书链,并根据所述负载均衡设备的公钥认证所述负载均衡设备;
所述主密钥生成模块用于依据所认证的所述数字证书及所述证书链生成包括认证信息的主密钥,并使用所述负载均衡设备的公钥对所述主密钥进行加密,将加密后的主密钥发送至所述负载均衡设备;
所述恢复模块用于使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息,并向所述客户机发出一提问信息;
所述数字签名模块用于对所述提问信息进行数字签名,并返回数字签名后的提问信息以及客户机的公钥至所述负载均衡设备;
所述设备认证模块用于依据所述数字签名后的提问信息以及所述客户机的公钥认证所述客户机;
所述客户机通信模块以及所述设备通信模块用于在相互认证成功后建立通信。
7.根据权利要求6所述的系统,其特征在于,所述客户机握手模块还用于向所述负载均衡设备发出第一握手消息,所述第一握手消息包括:客户机所支持的安全套接层版本号、随机数、会话ID、密码套件信息、以及压缩算法信息;
所述设备握手模块还用于接收到所述第一握手消息之后,向所述客户机返回第二握手消息,从而对所述第一握手信息进行确认,所述第二握手信息包括:所述客户机的安全套接层版本号、会话ID。
8.根据权利要求7所述的系统,其特征在于,所述发送模块包括属性生成模块、第一获取模块、第一数字签名模块、以及信息发送模块;
所述属性生成模块用于生成包括唯一身份标识信息的安全套接层属性信息;
所述第一获取模块用于依据所述安全套接层属性信息获取第一哈希值;
所述第一数字签名模块用于依据所述负载均衡设备的私钥对所述第一哈希值进行数字签名,以获得第一数字签名;
所述信息发送模块用于将所述安全套接层属性信息、所述第一哈希值、所述第一数字签名、所述数字证书及其证书链发送给所述客户机。
9.根据权利要求8所述的系统,其特征在于,所述客户机认证模块包括颁发者公钥计算模块、第二获取模块、第一判断模块、访问方计算模块、第三获取模块、第二判断模块、以及验证模块;
所述颁发者公钥计算模块用于计算所述证书链中颁发者的公钥;
所述第二获取模块用于依据所述颁发者的公钥获取第二哈希值;
所述第一判断模块用于判断所述数字证书中颁发者的第二数字签名是否与预设的颁发数字签名相等;
所述访问方计算模块用于计算访问方中的公钥;
所述第三获取模块用于依据所述访问方的公钥获取第三哈希值;
所述第二判断模块用于判断所述第一哈希值与所述第三哈希值是否相等;
所述验证模块用于依据所述访问方中的公钥验证所述第一数字签名。
10.根据权利要求9所述的系统,其特征在于,所述恢复模块包括恢复子模块、第一消息认证模块、第二消息认证模块、完成消息生成模块、以及提问消息生成模块;
所述恢复子模块用于使用所述负载均衡设备的私钥恢复所述主密钥中的认证信息;
所述第一消息认证模块用于依据所述握手请求信息向所述负载均衡设备发送第一消息认证码;
所述第二消息认证模块用于依据所述握手请求信息向所述客户端发送第二消息认证码;
所述完成消息生成模块用于在接收到所述第二消息认证码之后向所述负载均衡设备发送一完成信息;
所述提问消息生成模块用于依据所述完成信息向所述客户机发出一提问信息。
CN201410650365.9A 2014-11-14 2014-11-14 一种基于安全套接层建立通信的方法及系统 Active CN104378374B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410650365.9A CN104378374B (zh) 2014-11-14 2014-11-14 一种基于安全套接层建立通信的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410650365.9A CN104378374B (zh) 2014-11-14 2014-11-14 一种基于安全套接层建立通信的方法及系统

Publications (2)

Publication Number Publication Date
CN104378374A true CN104378374A (zh) 2015-02-25
CN104378374B CN104378374B (zh) 2017-11-07

Family

ID=52557030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410650365.9A Active CN104378374B (zh) 2014-11-14 2014-11-14 一种基于安全套接层建立通信的方法及系统

Country Status (1)

Country Link
CN (1) CN104378374B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104915153A (zh) * 2015-06-09 2015-09-16 山东超越数控电子有限公司 一种基于scst的双控缓存同步设计方法
CN106685915A (zh) * 2016-10-28 2017-05-17 努比亚技术有限公司 移动终端与服务器安全通信的方法、服务器及移动终端
CN107623571A (zh) * 2016-07-15 2018-01-23 腾讯科技(深圳)有限公司 一种握手处理方法、客户端及服务器
CN107707564A (zh) * 2017-11-06 2018-02-16 山东渔翁信息技术股份有限公司 一种基于云网络的安全通道建立系统
CN107771320A (zh) * 2015-05-08 2018-03-06 思杰系统有限公司 用于改善安全套接字层(ssl)通信安全性的系统和方法
CN108063667A (zh) * 2018-01-03 2018-05-22 广州杰赛科技股份有限公司 密钥分配方法和装置
CN108933757A (zh) * 2017-05-22 2018-12-04 李海磊 一种硬件设备的安全可靠联网接入方法
CN110535628A (zh) * 2019-08-29 2019-12-03 阿里巴巴集团控股有限公司 通过证书签发进行多方安全计算的方法及装置
CN110690969A (zh) * 2018-07-06 2020-01-14 武汉信安珞珈科技有限公司 一种多方协同完成双向ssl/tls认证的方法和系统
CN112422560A (zh) * 2020-11-17 2021-02-26 中国电力科学研究院有限公司 基于安全套接层的轻量级变电站安全通信方法及系统
US11038699B2 (en) 2019-08-29 2021-06-15 Advanced New Technologies Co., Ltd. Method and apparatus for performing multi-party secure computing based-on issuing certificate
CN114780164A (zh) * 2022-02-28 2022-07-22 深圳开源互联网安全技术有限公司 基于浏览器插件筛选网页信息的方法及系统
CN114979105A (zh) * 2022-05-31 2022-08-30 杭州迪普科技股份有限公司 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置
US11523274B2 (en) * 2017-03-27 2022-12-06 Huawei Technologies Co., Ltd. Data transmission method, user equipment, and control plane node

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859091A (zh) * 2006-06-06 2006-11-08 南相浩 一种基于cpk的可信连接安全认证系统和方法
EP2176055A2 (en) * 2007-08-14 2010-04-21 The Penn State Research Foundation 3-d printing of near net shape products
US20120023336A1 (en) * 2009-12-10 2012-01-26 Vijayarangan Natarajan System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
CN103118027A (zh) * 2013-02-05 2013-05-22 中金金融认证中心有限公司 基于国密算法建立tls通道的方法
CN103338215A (zh) * 2013-07-26 2013-10-02 中金金融认证中心有限公司 基于国密算法建立tls通道的方法
CN103905348A (zh) * 2014-03-04 2014-07-02 哈尔滨工程大学 基于相关函数线性预测和泰勒分解的双阶段频率估计方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859091A (zh) * 2006-06-06 2006-11-08 南相浩 一种基于cpk的可信连接安全认证系统和方法
EP2176055A2 (en) * 2007-08-14 2010-04-21 The Penn State Research Foundation 3-d printing of near net shape products
US20120023336A1 (en) * 2009-12-10 2012-01-26 Vijayarangan Natarajan System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
CN103118027A (zh) * 2013-02-05 2013-05-22 中金金融认证中心有限公司 基于国密算法建立tls通道的方法
CN103338215A (zh) * 2013-07-26 2013-10-02 中金金融认证中心有限公司 基于国密算法建立tls通道的方法
CN103905348A (zh) * 2014-03-04 2014-07-02 哈尔滨工程大学 基于相关函数线性预测和泰勒分解的双阶段频率估计方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107771320A (zh) * 2015-05-08 2018-03-06 思杰系统有限公司 用于改善安全套接字层(ssl)通信安全性的系统和方法
CN107771320B (zh) * 2015-05-08 2021-08-31 思杰系统有限公司 用于改善安全套接字层(ssl)通信安全性的系统和方法
CN104915153B (zh) * 2015-06-09 2017-09-22 山东超越数控电子有限公司 一种基于scst的双控缓存同步设计方法
CN104915153A (zh) * 2015-06-09 2015-09-16 山东超越数控电子有限公司 一种基于scst的双控缓存同步设计方法
CN107623571B (zh) * 2016-07-15 2020-10-09 腾讯科技(深圳)有限公司 一种握手处理方法、客户端及服务器
CN107623571A (zh) * 2016-07-15 2018-01-23 腾讯科技(深圳)有限公司 一种握手处理方法、客户端及服务器
CN106685915A (zh) * 2016-10-28 2017-05-17 努比亚技术有限公司 移动终端与服务器安全通信的方法、服务器及移动终端
US11523274B2 (en) * 2017-03-27 2022-12-06 Huawei Technologies Co., Ltd. Data transmission method, user equipment, and control plane node
CN108933757B (zh) * 2017-05-22 2021-09-17 北京君泊网络科技有限责任公司 一种硬件设备的安全可靠联网接入方法
CN108933757A (zh) * 2017-05-22 2018-12-04 李海磊 一种硬件设备的安全可靠联网接入方法
CN107707564A (zh) * 2017-11-06 2018-02-16 山东渔翁信息技术股份有限公司 一种基于云网络的安全通道建立系统
CN108063667A (zh) * 2018-01-03 2018-05-22 广州杰赛科技股份有限公司 密钥分配方法和装置
CN110690969A (zh) * 2018-07-06 2020-01-14 武汉信安珞珈科技有限公司 一种多方协同完成双向ssl/tls认证的方法和系统
CN110690969B (zh) * 2018-07-06 2023-06-16 武汉信安珞珈科技有限公司 一种多方协同完成双向ssl/tls认证的方法和系统
CN110535628B (zh) * 2019-08-29 2020-07-17 阿里巴巴集团控股有限公司 通过证书签发进行多方安全计算的方法及装置
CN110535628A (zh) * 2019-08-29 2019-12-03 阿里巴巴集团控股有限公司 通过证书签发进行多方安全计算的方法及装置
US11038699B2 (en) 2019-08-29 2021-06-15 Advanced New Technologies Co., Ltd. Method and apparatus for performing multi-party secure computing based-on issuing certificate
US11228450B2 (en) 2019-08-29 2022-01-18 Advanced New Technologies Co., Ltd. Method and apparatus for performing multi-party secure computing based-on issuing certificate
CN112422560A (zh) * 2020-11-17 2021-02-26 中国电力科学研究院有限公司 基于安全套接层的轻量级变电站安全通信方法及系统
CN114780164B (zh) * 2022-02-28 2023-04-25 深圳开源互联网安全技术有限公司 基于浏览器插件筛选网页信息的方法及系统
CN114780164A (zh) * 2022-02-28 2022-07-22 深圳开源互联网安全技术有限公司 基于浏览器插件筛选网页信息的方法及系统
CN114979105A (zh) * 2022-05-31 2022-08-30 杭州迪普科技股份有限公司 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置
CN114979105B (zh) * 2022-05-31 2023-06-27 杭州迪普科技股份有限公司 通过ssl负载均衡设备自动识别国密和商密业务的方法和装置

Also Published As

Publication number Publication date
CN104378374B (zh) 2017-11-07

Similar Documents

Publication Publication Date Title
CN104378374A (zh) 一种基于安全套接层建立通信的方法及系统
CN108111301B (zh) 基于后量子密钥交换实现ssh协议的方法及其系统
CN108989053B (zh) 一种基于椭圆曲线的无证书公钥密码体制实现方法
US9379891B2 (en) Method and system for ID-based encryption and decryption
EP2792100B1 (en) Method and device for secure communications over a network using a hardware security engine
JP4527358B2 (ja) 鍵供託を使用しない、認証された個別暗号システム
EP2302834B1 (en) System and method for providing credentials
CN107437993A (zh) 一种基于无证书两方认证密钥协商方法和装置
CN101442522B (zh) 一种基于组合公钥的通信实体标识认证方法
CN114730420A (zh) 用于生成签名的系统和方法
CN115549887A (zh) 用于信息的安全交换的公共秘密的确定和层级确定性密钥
CN108886468A (zh) 用于分发基于身份的密钥资料和证书的系统和方法
US9705683B2 (en) Verifiable implicit certificates
US11223486B2 (en) Digital signature method, device, and system
CN107342859A (zh) 一种匿名认证方法及其应用
CN104270249A (zh) 一种从无证书环境到基于身份环境的签密方法
CN104301108A (zh) 一种从基于身份环境到无证书环境的签密方法
JP6758476B2 (ja) デバイス間の共通セッション鍵を取得するシステムおよび方法
Limkar et al. A mechanism to ensure identity-based anonymity and authentication for IoT infrastructure using cryptography
CN113098681B (zh) 云存储中口令增强且可更新的盲化密钥管理方法
CN112601221B (zh) 一种基于时间信息的物联网动态ntru接入认证方法
CN114124375A (zh) 一种用于物联网环境的多阶段密钥协商方法
KR20080005344A (ko) 인증서버가 사용자단말기를 인증하는 시스템
CN116232759A (zh) 一种雾-区块链协助的智能电网聚合认证方法
Dikii Authentication algorithm for internet of things networks based on MQTT protocol

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant