CN106027646A - 一种加速https的方法及装置 - Google Patents
一种加速https的方法及装置 Download PDFInfo
- Publication number
- CN106027646A CN106027646A CN201610339509.8A CN201610339509A CN106027646A CN 106027646 A CN106027646 A CN 106027646A CN 201610339509 A CN201610339509 A CN 201610339509A CN 106027646 A CN106027646 A CN 106027646A
- Authority
- CN
- China
- Prior art keywords
- https
- arithmetic facility
- website
- private key
- appointment
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000001133 acceleration Effects 0.000 title abstract description 21
- 238000004891 communication Methods 0.000 claims abstract description 27
- 230000008569 process Effects 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 9
- 230000008901 benefit Effects 0.000 abstract description 9
- 230000007246 mechanism Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000005303 weighing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种加速HTTPS的方法及装置,该方法包括:建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。本发明技术方案通过网络通信协议,采用具有认证关系的指定运算设备对HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算,解决了HTTPS网站的密码运算瓶颈问题,进而提升系统性能。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种加速HTTPS的方法及装置。
背景技术
HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer,安全套接字层超文本传输协议),是以安全为目标的HTTP通道,即HTTP的安全版。HTTPS的安全基础是SSL/TLS协议,HTTPS默认使用端口443,而不是像HTTP那样默认使用端口80来通信。HTTPS使用X.509数字认证以确认网站或者用户的身份。HTTPS因为安全可靠,并且由浏览器内置支持,被广泛用于互联网的网站和APP。
目前,Web服务器已能够很容易使用证书配置HTTPS,由于HTTPS使用的SSL/TLS涉及大量的密码运算,消耗CPU计算资源严重,所以采用HTTPS的网站会影响用户访问速度,而且更容易受到DDoS攻击,导致系统性能下降严重。对此,现有技术中主要存在以下解决方案,一个解决方案是使用专用的硬件加密卡来完成密码运算,以减轻Web服务器的CPU负担。另外一个解决方案是使用前置HTTPS网关来做所谓的SSL/TLS“卸载”工作,用户使用HTTPS和网关通信,网关使用HTTP和后端Web服务器通信。
但是,当用户在云计算环境下时,用户使用的是云主机(虚拟机),一方面,比如在公有云的环境下,可能无法直接为Web服务器的云主机加装硬件加密卡,或者为其部署HTTPS网关。另一方面,硬件加密卡和HTTPS网关是非云环境下的产物,整合到云计算环境需要做大量调整和开发,而且硬件加密资源的利用率不高。
发明内容
鉴于上述问题,本发明提出了一种加速HTTPS的方法及装置,有效地解决了HTTPS网站的密码运算瓶颈问题,提升系统性能。
根据本发明的第一方面,提供了一种加速HTTPS的方法,该方法包括:
建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;
通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
其中,在所述建立HTTPS网站与指定运算设备之间的认证关系之前,所述方法还包括:
获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;
接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述建立HTTPS网站与指定运算设备之间的认证关系,进一步包括:在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
其中,所述采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密和签名运算,包括:
当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;
当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;
接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
其中,所述指定运算设备为运算集群时;
所述方法还包括:
发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
其中,所述指定运算设备为运算集群时;
所述方法还包括:
采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
根据本发明的第二方面,提供了一种加速HTTPS的装置,该装置包括:
认证模块,用于建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;
处理模块,用于通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
其中,所述装置还包括:
第一发送模块,用于在所述建立HTTPS网站与指定运算设备之间的认证关系之前,获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;
接收模块,用于接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述认证模块,具体用于在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
其中,所述处理模块,包括:
建立单元,用于当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;
发送单元,用于当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;
接收单元,用于接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
其中,所述指定运算设备为运算集群时;
所述装置还包括:
第二发送模块,用于发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
其中,所述指定运算设备为运算集群时;
所述装置还包括:
第三发送模块,用于采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
本发明的有益效果为:
本发明提供的加速HTTPS的方法及装置,通过网络通信协议,采用具有认证关系的指定运算设备对HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算,解决了HTTPS网站的密码运算瓶颈,同时对HTTPS网站不带来任何网络拓扑和应用的改变和影响;实现了密码运算的弹性计算,充分利用了密码计算资源;完美支持云主机HTTPS网站,而且与HTTPS网关操作系统和web服务器类型无关;进一步地,由于HTTPS网站不用设置RSA和ECC私钥,增强了HTTPS的安全性。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提出的加速HTTPS的方法的流程图;
图2为本发明实施例提出的加速HTTPS的方法的应用场景示意图;
图3为本发明另一实施例提出的加速HTTPS的方法的具体实现流程图;
图4为本发明实施例提出的加速HTTPS的方法中负载匀衡方案的实现原理图;
图5为本发明另一实施例提出的加速HTTPS的方法中负载匀衡方案的实现原理图;
图6为本发明另一实施例提出的加速HTTPS的装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
图1示出了本发明实施例的加速HTTPS的方法的流程图。
参照图1,本发明实施例提出的加速HTTPS的方法具体包括以下步骤:
S101、建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群。
需要说明的是,本发明(简称KeyOffload)实施例中的指定运算设备为独立的RSA/ECC运算主机或者集群,以下称为KeyOffload云。KeyOffload云可同时支持多个HTTPS网站,以实现密码计算资源的充分利用。
具体实现上,KeyOffload云可以采用专门的硬件加密卡,包括ASIC、FPGA和GPU,来实现RSA/ECC密码运算。同时KeyOffload云作为云平台的一个组成部分,为HTTPS网站提供SaaS的网络API接口,HTTPS网站的SSL/TLS可以直接调用该API,将RSA私钥解密和RSA/ECC私钥签名运算交由KeyOffload云完成。
可理解的,HTTPS网站为采用HTTPS进行数据传输的网站,在本发明实施例中具体指的是HTTPS网站主机或web服务器。
S102、通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
深入分析HTTPS的SSL/TLS协议,可知SSL/TLS内部密码运算主要涉及非对称密运算(比如RSA、ECC)、对称密码运算(比如AES)和Hash运算(比如SHA256)。其中对称密码运算和Hash运算计算较快,比如AES算法还能够有CPU内置支持,因此性能瓶颈为非对称密码运算,即RSA运算和ECC运算。RSA运算主要是私钥的解密和签名最为消耗CPU计算资源。
本发明实施例,通过将HTTPS网站的RSA运算和ECC运算,通过网络交由第三方独立的KeyOffload云完成,如图2所示。解决了HTTPS网站的密码运算瓶颈,同时对HTTPS网站不带来任何网络拓扑和应用的改变和影响;实现了密码运算的弹性计算,充分利用了密码计算资源;完美支持云主机HTTPS网站,而且与HTTPS网关操作系统和web服务器类型无关;进一步地,由于HTTPS网站不用设置RSA和ECC私钥,增强了HTTPS的安全性。
在本发明的一个实施例中,在图1中示出的步骤S101之前,所述方法还包括以下附图中未示出的步骤:
获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;
接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述步骤S101,进一步包括:在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
在实际应用中,如图3所示,在步骤建立HTTPS网站与指定运算设备之间的认证关系之前,具体包括以下实现流程:
步骤S11:将HTTPS网站的RSA或者ECC私钥提交给KeyOffload云;
步骤S12:KeyOffload云返回私钥对应的ID和口令等信息。
在本发明的一个实施例中,图1中示出的步骤S102中的采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密和签名运算,进一步包括以下步骤:
当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;
当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;
接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
在实际应用中,如图3所示,在完成HTTPS网站与指定运算设备之间的认证关系之后,采用具有认证关系的指定运算设备对所述HTTPS网站的通信数据进行密码运算的实现方案具体包括以下实现流程:
步骤S21:用户通过浏览器访问HTTPS网站时;
步骤S22:浏览器客户端发起SSL/TLS握手请求,然后浏览器和HTTPS网站进入SSL/TLS握手过程;
步骤S23:在SSL/TLS握手过程中HTTPS网站需要使用RSA私钥解密EncryptedPreMasterSecret数据或使用RSA/ECC私钥对ServerKeyExchange中的数据进行签名;
步骤S24:HTTPS网站和KeyOffload云完成认证,并将需要处理的待解密/签名数据发送到KeyOffload云;
步骤S25:KeyOffload云完成认证并接收数据后,根据认证的ID检索出对应RSA或者ECC私钥,使用RSA或者ECC私钥完成解密或者签名运算;
步骤S26:然后将解密的明文或者签名数据返回给HTTPS网站;
步骤S27:HTTPS网站根据使用明文/签名数据继续完成SSL/TLS握手过程;
步骤S28:用户和HTTPS网站之间使用达成的SSL/TLS通道完成后续HTTP请求和应答处理。
下面以云主机为例,通过一个具体实施例对本发明技术方案进行清楚地解释说明。
云主机上的HTTPS网站A部署了单向认证的RSA证书C,将RSA私钥K提交给KeyOffload云,并接收KeyOffload云为HTTPS网站A分配的一个ID和口令,然后将SSL/TLS的RSA私钥运算通过KeyOffload云API指向KeyOffload云,配置必要的API参数,包括ID、口令和其他必要参数。
用户浏览器通过HTTPS访问HTTPS网站A,在用户浏览器和HTTPS网站A完成SSL/TLS握手的过程中,在HTTPS网站A需要处理RSA私钥解密运算时和KeyOffload云完成认证,并将EncryptedPreMasterSecret数据,通过API传给KeyNetwork,KeyOffload云完成认证并收到EncryptedPreMasterSecret后,根据ID取出对应的RSA私钥K,用RSA私钥K解密EncryptedPreMasterSecret数据,得到对应的预主私密PreMasterSecret,并将PreMasterSecret返回给HTTPS网站A,HTTPS网站A使用PreMasterSecret继续完成SSL/TLS握手以及后续的HTTPS处理。
在本发明的一个实施例中,当指定运算设备为运算集群时;
该加速HTTPS的方法还包括以下步骤:发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
在本发明的一个实施例中,当指定运算设备为运算集群时;
该加速HTTPS的方法还包括以下步骤:采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
在实际应用中,当指定运算设备为运算集群时,运算集群KeyOffload云自身提供集群机制,可通过两种方式为HTTPS网站提供API,一种是HTTPS网站通过某种均衡策略,如图4所示,比如轮询、一致性Hash等,直接调用KeyOffload云的节点;另外一种KeyOffload云自己提供负载均衡机制,如图5所示,HTTPS网站只需把API请求发给KeyOffload云的负载均衡即可,以使KeyOffload云的负载均衡实现对所述HTTPS网站的通信数据的密码运算任务的分配。
本发明实施例提供的加速HTTPS的方法,具有以下有益效果:一是解决了HTTPS网站的密码运算瓶颈,同时对HTTPS网站不带来任何网络拓扑和应用的改变和影响;二是实现了密码运算的弹性计算,本发明实施例中的KeyOffload云可同时支持多个HTTPS网站,充分利用了密码计算资源;三是完美支持云主机HTTPS网站,而且与HTTPS网关操作系统和web服务器类型无关;四是HTTPS网站不用设置RSA和ECC私钥,增强了HTTPS的安全性。
本发明提供的加速HTTPS的方法可定义为KeyOffload机制,KeyOffload机制即将私钥运算“卸载”到远程加密设备进行处理的方法,KeyOffload云即KeyOffload机制中的加密设备。
需要说明的是,本发明实施例提供的加速HTTPS的方法中,KeyOffload云提供的API,自身需要高性能和安全。在具体实现上,KeyOffload云的API支持UDP和TCP,安全上自身支持SSL/TLS协议,或者类似RADIUS的Hash加密协议、或者建立在其他安全通道之上,本领域技术人员可根据实际应用进行选择配置,对此本发明不作具体限定。
可理解的,本发明实施例中的HTTPS网站不局限于云主机,同样也适用于物理主机。
本发明实施例提供的加速HTTPS的方法不局限于网站的HTTPS加速,也适用其他基于SSL/TLS的服务器加速。
本发明实施例中的HTTPS网站上的API,可以基于OpenSSLEngine实现,也可以基于Java JCE或JSSE实现,也可以基于SSL/TLS源码直接内置实现。
本发明实施例提供的加速HTTPS的方法也适用于国密SM2算法(ECC算法变种)和国密SSL协议(SSL/TLS变种)等多种加密算法。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图6示出了本发明实施例的加速HTTPS的装置的结构示意图。
参照图6,本发明实施例的加速HTTPS的装置,包括认证模块601和处理模块602,其中:认证模块601,用于建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;处理模块602,用于通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
本发明实施例中,处理模块602将HTTPS网站的RSA运算和ECC运算,通过网络交由第三方独立的KeyOffload云完成,解决了HTTPS网站的密码运算瓶颈,同时对HTTPS网站不带来任何网络拓扑和应用的改变和影响;实现了密码运算的弹性计算,充分利用了密码计算资源;完美支持云主机HTTPS网站,而且与HTTPS网关操作系统和web服务器类型无关;进一步地,由于HTTPS网站不用设置RSA和ECC私钥,增强了HTTPS的安全性。
在本发明的一个实施例中,所述装置还包括第一发送模块和接收模块,其中,第一发送模块,用于在所述建立HTTPS网站与指定运算设备之间的认证关系之前,获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;接收模块,用于接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述认证模块601,具体用于在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
在本发明的一个实施例中,所述处理模块602,包括建立单元、发送单元和接收单元,其中,建立单元,用于当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;发送单元,用于当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;接收单元,用于接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
在本发明的一个实施例中,指定运算设备为运算集群;
进一步地,所述装置还包括附图中未示出的第一发送模块,所述第二发送模块,用于发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
在本发明的另一个实施例中,指定运算设备为运算集群;
进一步地,所述装置还包括附图中未示出的第二发送模块,所述第三发送模块,用于采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
在实际应用中,当指定运算设备为运算集群时,KeyOffload云自身提供集群机制,可通过两种方式为HTTPS网站提供API,一种是HTTPS网站通过某种均衡策略,比如轮询、一致性Hash等,直接调用KeyOffload云的节点;另外一种KeyOffload云自己提供负载均衡机制,HTTPS网站只需把API请求发给KeyOffload云的负载均衡即可,以使KeyOffload云的负载均衡实现对所述HTTPS网站的通信数据的密码运算任务的分配。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
综上所述,本发明实施例提供的加速HTTPS的方法及装置,通过网络通信协议,采用具有认证关系的指定运算设备对HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算,解决了HTTPS网站的密码运算瓶颈,同时对HTTPS网站不带来任何网络拓扑和应用的改变和影响;实现了密码运算的弹性计算,充分利用了密码计算资源;完美支持云主机HTTPS网站,而且与HTTPS网关操作系统和web服务器类型无关;进一步地,由于HTTPS网站不用设置RSA和ECC私钥,增强了HTTPS的安全性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的单元可以合并为一个单元,也可以进一步拆分成多个子模块。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种加速HTTPS的方法,其特征在于,该方法包括:
建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;
通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
2.根据权利要求1所述的方法,其特征在于,在所述建立HTTPS网站与指定运算设备之间的认证关系之前,所述方法还包括:
获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;
接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述建立HTTPS网站与指定运算设备之间的认证关系,进一步包括:在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
3.根据权利要求2所述的方法,其特征在于,所述采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密和签名运算,包括:
当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;
当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;
接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述指定运算设备为运算集群时;
所述方法还包括:
发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述指定运算设备为运算集群时;
所述方法还包括:
采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
6.一种加速HTTPS的装置,其特征在于,该装置包括:
认证模块,用于建立HTTPS网站与指定运算设备之间的认证关系,所述指定运算设备是预先为所述HTTPS网站配置的运算主机或运算集群;
处理模块,用于通过网络通信协议,采用具有认证关系的指定运算设备对所述HTTPS网站的SSL/TLS握手过程中需私钥解密或签名的数据进行解密或签名运算。
7.根据权利要求1所述的装置,其特征在于,所述装置还包括:
第一发送模块,用于在所述建立HTTPS网站与指定运算设备之间的认证关系之前,获取HTTPS网站的RSA或ECC私钥,并将所述RSA或ECC私钥发送至所述指定运算设备,以供所述指定运算设备根据所述RSA或ECC私钥计算对应的ID和口令;
接收模块,用于接收所述指定运算设备返回的与所述RSA或ECC私钥相对应的ID和口令;
相应地,所述认证模块,具体用于在所述HTTPS网站的SSL/TLS握手过程中通过所述ID和口令完成与所述指定运算设备的认证。
8.根据权利要求7所述的装置,其特征在于,所述处理模块,包括:
建立单元,用于当客户端访问所述HTTPS网站时,根据客户端发起的SSL/TLS握手请求,建立与所述客户端的SSL或TLS握手过程;
发送单元,用于当HTTPS网站的SSL/TLS握手过程中需进行私钥解密或签名数据的解密或签名运算时,发送所述ID和需要处理的待解密或签名数据到所述指定运算设备,以使所述指定运算设备在认证通过后,根据所述ID检索对应的RSA或ECC私钥,并根据所述RSA或ECC私钥对需要处理的待解密或签名数据进行解密或者签名运算,并将得到的解密的明文或者签名数据返回给HTTPS网站;
接收单元,用于接收所述指定运算设备返回的解密的明文或者签名数据,以使所述HTTPS网站根据所述解密的明文或者签名数据完成与所述客户端的SSL或TLS握手过程。
9.根据权利要求6-8任一项所述的装置,其特征在于,所述指定运算设备为运算集群时;
所述装置还包括:
第二发送模块,用于发送对所述运算集群的API调用请求,以使所述运算集群根据预设的第一均衡策略实现对所述HTTPS网站的通信数据的密码运算。
10.根据权利要求6-8任一项所述的装置,其特征在于,所述指定运算设备为运算集群时;
所述装置还包括:
第三发送模块,用于采用预设的第二均衡策略向所述运算集群中对应的运算节点发送API请求,以实现对所述HTTPS网站的通信数据的密码运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610339509.8A CN106027646B (zh) | 2016-05-19 | 2016-05-19 | 一种加速https的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610339509.8A CN106027646B (zh) | 2016-05-19 | 2016-05-19 | 一种加速https的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106027646A true CN106027646A (zh) | 2016-10-12 |
CN106027646B CN106027646B (zh) | 2019-06-21 |
Family
ID=57096675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610339509.8A Active CN106027646B (zh) | 2016-05-19 | 2016-05-19 | 一种加速https的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106027646B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241428A (zh) * | 2017-06-30 | 2017-10-10 | 北京百度网讯科技有限公司 | 一种在基于容器的共享虚拟主机中实现https的方法和装置 |
WO2018059578A1 (zh) * | 2016-09-30 | 2018-04-05 | 贵州白山云科技有限公司 | 一种基于内容分发网络的https加速方法和系统 |
CN109428876A (zh) * | 2017-09-01 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 一种握手连接方法及装置 |
CN109842664A (zh) * | 2017-11-29 | 2019-06-04 | 苏宁云商集团股份有限公司 | 一种高可用的安全无私钥的cdn支持https的系统及方法 |
CN110071933A (zh) * | 2019-04-28 | 2019-07-30 | 深圳前海微众银行股份有限公司 | 安全套接层加速方法、装置、设备及可读存储介质 |
WO2019148562A1 (zh) * | 2018-01-30 | 2019-08-08 | 网宿科技股份有限公司 | 内容分发网络中握手请求的加速方法、设备及边缘节点 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679066A (zh) * | 2002-07-12 | 2005-10-05 | 英格里安网络公司 | 网络连接加密 |
CN101163010A (zh) * | 2007-11-14 | 2008-04-16 | 华为软件技术有限公司 | 对请求消息的鉴权方法和相关设备 |
CN101465727A (zh) * | 2008-12-17 | 2009-06-24 | 成都市华为赛门铁克科技有限公司 | 一种保证通信安全的方法、网络设备、装置和通信系统 |
CN102546562A (zh) * | 2010-12-22 | 2012-07-04 | 腾讯科技(深圳)有限公司 | 在web中传输数据时进行加解密的方法及系统 |
EP2908493A2 (en) * | 2014-01-24 | 2015-08-19 | Actus Mobile Solutions Limited | Secure communication systems |
CN105516169A (zh) * | 2015-12-23 | 2016-04-20 | 北京奇虎科技有限公司 | 检测网站安全的方法及装置 |
-
2016
- 2016-05-19 CN CN201610339509.8A patent/CN106027646B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679066A (zh) * | 2002-07-12 | 2005-10-05 | 英格里安网络公司 | 网络连接加密 |
CN101163010A (zh) * | 2007-11-14 | 2008-04-16 | 华为软件技术有限公司 | 对请求消息的鉴权方法和相关设备 |
CN101465727A (zh) * | 2008-12-17 | 2009-06-24 | 成都市华为赛门铁克科技有限公司 | 一种保证通信安全的方法、网络设备、装置和通信系统 |
CN102546562A (zh) * | 2010-12-22 | 2012-07-04 | 腾讯科技(深圳)有限公司 | 在web中传输数据时进行加解密的方法及系统 |
EP2908493A2 (en) * | 2014-01-24 | 2015-08-19 | Actus Mobile Solutions Limited | Secure communication systems |
CN105516169A (zh) * | 2015-12-23 | 2016-04-20 | 北京奇虎科技有限公司 | 检测网站安全的方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018059578A1 (zh) * | 2016-09-30 | 2018-04-05 | 贵州白山云科技有限公司 | 一种基于内容分发网络的https加速方法和系统 |
CN107241428A (zh) * | 2017-06-30 | 2017-10-10 | 北京百度网讯科技有限公司 | 一种在基于容器的共享虚拟主机中实现https的方法和装置 |
CN109428876A (zh) * | 2017-09-01 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 一种握手连接方法及装置 |
CN109428876B (zh) * | 2017-09-01 | 2021-10-08 | 腾讯科技(深圳)有限公司 | 一种握手连接方法及装置 |
CN109842664A (zh) * | 2017-11-29 | 2019-06-04 | 苏宁云商集团股份有限公司 | 一种高可用的安全无私钥的cdn支持https的系统及方法 |
WO2019148562A1 (zh) * | 2018-01-30 | 2019-08-08 | 网宿科技股份有限公司 | 内容分发网络中握手请求的加速方法、设备及边缘节点 |
CN110071933A (zh) * | 2019-04-28 | 2019-07-30 | 深圳前海微众银行股份有限公司 | 安全套接层加速方法、装置、设备及可读存储介质 |
WO2020220833A1 (zh) * | 2019-04-28 | 2020-11-05 | 深圳前海微众银行股份有限公司 | 安全套接层加速方法、装置、设备及可读存储介质 |
CN110071933B (zh) * | 2019-04-28 | 2021-11-12 | 深圳前海微众银行股份有限公司 | 安全套接层加速方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106027646B (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10237241B2 (en) | Transport layer security latency mitigation | |
EP3633913B1 (en) | Provisioning a secure connection using a pre-shared key | |
CN106027646A (zh) | 一种加速https的方法及装置 | |
EP3391620B1 (en) | Systems and methods for secure multi-party communications using a proxy | |
CN113302871B (zh) | 通信方法、通信系统、网络接口控制器 | |
EP2608486B1 (en) | A computer implemented system and method for providing users with secured access to application servers | |
EP3232634B1 (en) | Identity authentication method and device | |
US9021552B2 (en) | User authentication for intermediate representational state transfer (REST) client via certificate authority | |
US10250578B2 (en) | Internet key exchange (IKE) for secure association between devices | |
EP3363149A1 (en) | System, apparatus and method for migrating a device having a platform group | |
US20180288030A1 (en) | Secure identity sharing using a wearable device | |
CN103415008A (zh) | 一种加密通信方法和加密通信系统 | |
CN102315945A (zh) | 基于私有协议的统一身份认证方法 | |
CN105577377B (zh) | 带密钥协商的基于身份的认证方法和系统 | |
US11582020B2 (en) | Homomorphic encryption offload for lightweight devices | |
CN105764051B (zh) | 认证方法、认证装置、移动设备及服务器 | |
US11509469B2 (en) | Methods and systems for password recovery based on user location | |
CN114008976A (zh) | 用于双壳加密的混合密钥交换 | |
CN106788960A (zh) | 一种密钥协商的方法及装置 | |
EP2811401B1 (en) | Method and apparatus for inputting data | |
KR102026375B1 (ko) | 웨어러블 디바이스 통신 지원 장치 및 방법 | |
US20210281608A1 (en) | Separation of handshake and record protocol | |
WO2015104567A1 (en) | Secure communication between a server and a client web browser | |
CN115484080A (zh) | 小程序的数据处理方法、装置、设备以及存储介质 | |
Fischer et al. | Security for building automation with hardware-based node authentication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190322 Address after: 100080 Floor 1317-20, No. 1 Zhongguancun Street, Haidian District, Beijing Applicant after: Beijing Cloud Key Network Technology Co., Ltd. Address before: 100190 No. 917, Building 305, Shaoyaojubeili, Chaoyang District, Beijing Applicant before: Du Zaidong |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |