CN112751858B - 数据加密通信终端方法、装置、终端、服务器及存储介质 - Google Patents

数据加密通信终端方法、装置、终端、服务器及存储介质 Download PDF

Info

Publication number
CN112751858B
CN112751858B CN202011608349.5A CN202011608349A CN112751858B CN 112751858 B CN112751858 B CN 112751858B CN 202011608349 A CN202011608349 A CN 202011608349A CN 112751858 B CN112751858 B CN 112751858B
Authority
CN
China
Prior art keywords
handshake process
encryption
symmetric encryption
data
handshake
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.)
Active
Application number
CN202011608349.5A
Other languages
English (en)
Other versions
CN112751858A (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.)
Eversec Beijing Technology Co Ltd
Original Assignee
Eversec Beijing Technology 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 Eversec Beijing Technology Co Ltd filed Critical Eversec Beijing Technology Co Ltd
Priority to CN202011608349.5A priority Critical patent/CN112751858B/zh
Publication of CN112751858A publication Critical patent/CN112751858A/zh
Application granted granted Critical
Publication of CN112751858B publication Critical patent/CN112751858B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/0435Network 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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing 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)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种数据加密通信终端方法、装置、终端、服务器及存储介质,包括:连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。

Description

数据加密通信终端方法、装置、终端、服务器及存储介质
技术领域
本发明实施例涉及网络通信安全技术,尤其涉及一种数据加密通信终端方法、装置、终端、服务器及存储介质。
背景技术
随着互联网的蓬勃发展,通信技术的更新升级,海量的信息需要通过网络进行传输,其中包含了大量的需要保护的隐私信息,为了保证信息传输的安全,防止这些重要信息被人窃取恶意利用,在进行网络通信时需要对数据进行加密。
目前互联网上保密通信的工业标准协议是传输层安全性协议(Transport LayerSecurity,TLS),其可以为互联网通信提供安全及数据完整性保障,浏览器、邮箱、即时通信、基于IP的语音传输(Voice over Internet Protocol,VoIP)、网络传真等应用程序均支持该协议。
然而,目前的传输层安全性协议仍然存在服务器端私钥泄露的问题,由于携带有公钥的证书可以正常获得,因此攻击者可以使用结合泄露的服务器端私钥和公钥构造假冒服务器端充当真实服务器端,窃取客户端的隐私数据。可见,按照目前传输层安全性协议的方式进行加密存在安全漏洞,加密效果亟待提高。
发明内容
本发明提供一种发明名称,以实现提高数据加密效果,提高数据传输安全性。
第一方面,本发明实施例提供了一种数据加密通信方法,应用于客户端,包括:
连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。
第二方面,本发明实施例还提供了一种数据加密通信方法,应用于服务器端,包括:
响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。
第三方面,本发明实施例还提供了一种数据加密通信装置,应用于客户端,包括:
多次握手过程发起模块,用于连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
第一数据传输模块,用于根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。
第四方面,本发明实施例还提供了一种数据加密通信装置,应用于服务器端,包括:
多次握手过程响应模块,用于响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
第二数据传输模块,用于根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。
第五方面,本发明实施例还提供了一种数据加密通信终端,数据加密通信终端作为传输层安全协议握手过程中的客户端,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本申请实施例所示的客户端适用的数据加密通信终端方法。
第六方面,本发明实施例还提供了一种服务器端,服务器端作为传输层安全协议握手过程中的服务器端,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本申请实施例所示的服务器端适用的数据加密通信终端方法。
第七方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如本申请实施例中所示的数据加密通信终端方法。
本发明实施例提供的数据加密通信方案,客户端能够连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥。对于多次传输层安全协议TLS握手中的任意两个相邻握手过程,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥。根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。相对于目前传输层安全协议TLS规定的握手过程,仅进行一次握手过程,存在安全漏洞,加密效果亟待提高,本发明实施例提供的数据加密通信方案,客户端首先与服务器端进行连续多次的握手过程,在多次握手过程中,除了首次握手过程之外,其余握手过程中服务器端均需要使用本次握手过程的前一次握手过程生成的对称加密秘钥对客户端发送的数据进行机密,得到握手过程中的具体报文,并响应该报文。目前黑客伪造的假冒服务器端只能进行一次握手过程,假冒服务器端缺乏在非首次的握手过程中使用前一次握手过程生成的对称加密秘钥对报文进行解密的逻辑,因此通过多次握手,能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。
附图说明
图1是发明实施例适用的***架构示意图;
图2是本发明实施例一提供的数据加密通信方法的流程图;
图3是本发明实施例二提供的数据加密通信方法的流程图;
图4是本发明实施例三提供的数据加密通信装置的结构示意图;
图5是本发明实施例四提供的数据加密通信装置的结构示意图;
图6是本发明实施例五提供的数据加密通信终端的结构示意图;
图7是本发明实施例六提供的服务器的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为发明实施例适用的***架构示意图,包括客户端110和服务器端120。客户端110在与服务器端120进行数据传输之前,需要执行传输层安全协议握手过程。传输层安全协议握手过程用于交互后续数据传输使用的对称加密算法、密钥交换算法和摘要算法以及对称加密秘钥。本发明适用于多种形式的传输层安全协议握手过程,下面以一种实现方式作为示例进行说明。例如下述实例中对称加密算法由随机数a1、随机数a2以及随机数a3确定,在其他行驶中对称加密秘钥可以为将随机数a2加上预定数值(如2),得到对称加密秘钥等。作为本方实施例使用的一种传输层安全协议握手过程的示例:
步骤1.1、客户端110将自身支持的加密套件(Cipher Suite)列表以及随机数a1发送至服务器端120。
客户端110可以为用户使用的终端中某个应用,如浏览器应用、邮箱应用、即时通信应用、VoIP应用或网络传真应用等。随机数a1会在客户端110和服务器端120分别存储。步骤1.1为传输层安全协议握手过程中的第一次握手。
步骤1.2、服务器端120将确定的加密套件A、证书A以及随机数a2发送至客户端110。
服务器端120接收到客户端110发送的加密套件列表和随机数a1后,存储随机数a1。从加密套件列表中选择某个加密套件A。
服务器端120还会将包含有服务器端120公钥的证书A发送至客户端110。服务器端120还会生成随机数a2。随机数a2会在客户端110和服务器端120分别存储。步骤1.2为传输层安全协议握手过程中的第二次握手。
步骤1.3、客户端110根据证书A对服务器端120进行认证。
客户端110对存储随机数a2。然后,通过访问证书认证中心对证书A进行检验。证书认证中心作为权威的第三方机构可以验证证书A是否为真实服务器端120的正确证书。
步骤1.4、若认证成功,则客户端110使用服务器端120公钥对生成的随机数a3进行加密,将加密后的随机数a3发送至服务器端120。
步骤1.5、客户端110根据随机数a1、随机数a2以及随机数a3生成对称加密秘钥。
步骤1.6、服务器端120根据服务器端120私钥对加密后的随机数a3进行解密,得到随机数a3。根据随机数a1、随机数a2以及随机数a3生成对称加密秘钥。
步骤1.3至步骤1.6为传输层安全协议握手过程中的第三次握手。
步骤1.7、服务器端120向客户端110反馈握手成功消息。
上述传输层安全协议握手过程的示例为一个传输层安全协议握手过程,经过一个传输层安全协议握手过程后,服务器端120和客户端110均可得到一个对称加密秘钥。下述实施例中的传输层安全协议握手过程可参照上述示例。下面分别从客户端110和服务器端120的角度对本发明技术方案进行说明。
实施例一
图2为本发明实施例一提供的数据加密通信方法的流程图,本实施例可适用于客户端与服务器端基于传输层安全协议握手过程建立连接,并通过该连接进行数据加密通信的情况,该方法可以由客户端来执行,具体包括如下步骤:
步骤210、连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥。
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行。
可以预先配置客户端与服务器端的握手过程次数,若配置为N次,则连续执行N次握手过程。N为大于2的整数。
示例性的,假设客户端与服务器端的握手过程次数配置为三次,则客户端通过下述方式与服务器端连续进行多次传输层安全协议握手过程:
步骤2.1、客户端发送握手请求给服务器端。
握手请求携带有加密套件列表以及随机数a1。客户端生成并存储随机数a1。加密套件列表为客户端可支持的多组加密套件。
服务器端接收客户端发送握手请求,解析出握手请求中的加密套件列表和随机数a1。服务器端从加密套件列表中选择出加密套件A。服务器端生成随机数a2。服务器端将加密套件A以及随机数a2发送至客户端。此外,服务器端将包含有服务器端公钥A的证书A发送至客户端。其中,公钥A和私钥A成对出现,用于非对称加密算法。公钥A可以被加密套件A用于加密。
步骤2.2、客户端接收服务器发送的加密套件A、随机数a2以及包含公钥A的证书A。
客户端存储接收到的随机数a2。客户端根据证书A对服务器进行身份认证。客户端生成随机数a3。服务器身份认证通过后,客户端使用公钥A对随机数a3进行加密。
客户端根据随机数a1、随机数a2和随机数a3生成第一对称加密秘钥。该对称加密秘钥适用于加密套件A。
步骤2.3、客户端将加密后的随机数a3发送至服务器端。
服务器端接收客户端发送的加密后的随机数a3后,使用与公钥A对应的私钥A对加密后的随机数a3进行解密,得到随机数a3。服务器端根据随机数a1、随机数a2和随机数a3生成第一对称加密秘钥。
至此,客户端与服务器端经过第一次传输层安全协议握手过程,得到第一对称加密秘钥。
步骤2.4、客户端将使用第一对称加密秘钥加密的握手请求发送至服务器端。
握手请求携带有加密套件列表以及随机数b1。客户端生成并存储随机数b1。加密套件列表为客户端可支持的多组加密套件。
在得到握手请求后,客户端使用第一次传输层安全协议TLS握手得到第一对称加密秘钥对握手请求进行加密,将加密后的握手请求发送至服务器端。
服务器端接收客户端发送的加密数据。使用第一对称加密秘钥对加密数据进行解密,得到握手请求。解析出握手请求中的加密套件列表和随机数b1。服务器端从加密套件列表中选择出加密套件B。服务器端生成随机数b2。服务器端将加密套件B以及随机数b2发送至客户端。此外,服务器端将包含有服务器端公钥B的证书B发送至客户端。公钥B可以被加密套件B用于加密。
在一种实现方式中,在第一握手过程中接收服务器端选择的第一加密套件;在第二握手过程中接收服务器端选择的第二加密套件;第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在本示例中,第一握手过程可以为第一次传输层安全协议握手过程。第二握手过程可以为第二次传输层安全协议握手过程。第二次传输层安全协议握手过程中选择的加密套件B可以与第一次传输层安全协议握手过程中选择的加密套件A不同。
解密套件包括对称加密算法、密钥交换算法和摘要算法。
例如,对称加密算法可以为数据加密标准(Data Encryption Standard,DES)或RC5。密钥交换算法可以为RSA(RSA algorithm)加密算法或DH(Diffie-Hellman)。摘要算法可以为MD5信息摘要算法(MD5 Message-Digest Algorithm,MD5)或安全散列算法(SecureHash Algorithm,SHA)。
假设服务器端在第一握手过程中选择的第一加密套件包含的第一算法内容为:对称加密算法为DES、密钥交换算法为RSA、摘要算法为MD5。服务器端在第二握手过程中选择的第二加密套件包含的第二算法内容可以为:对称加密算法为RC5、密钥交换算法为RSA、摘要算法为SHA。第一算法内容与第二算法内容包含的任意一个算法不同,则确定第一算法内容与第二算法内容不同。
服务器端可以在每次传输层安全协议握手过程时,选择不同的算法内容,进而指定不同的加密套件。通过在不同传输层安全协议握手过程中设置不同的加密套件,能够进一步提高握手过程的信息加密复杂度,进而识别出无法适配多重加密的假冒服务器,提高安全性。
在另一种实现方式中,在第一握手过程中接收服务器端发送的第一证书,第一证书包含第一公钥;在第二握手过程中接收服务器端发送的第二证书,第二证书包含第二公钥;第一公钥与第二公钥不同。
服务器端的每个公钥对应相应的私钥进行解码。服务器端可以在不同的次传输层安全协议握手过程中向客户端发送含有不同公钥的证书。此时,即使某一个传输层安全协议握手过程中的私钥被泄露,但其他传输层安全协议握手过程中的私钥发生了改变,因此黑客无法使用一个私钥对多个传输层安全协议握手过程进行信息窃取,进而提高伪造难度,提高安全性。
每次传输层安全协议握手过程采用不同的证书以及协商不同的加密算法(即加密套件),生成不同的加密密钥,达到提升攻击防御能力,提升信息加密强度的效果。
进一步的,为了进一步提高通信安全性,服务器端可以使用第一对称加密秘钥对加密套件B、随机数b2以及包含公钥B的证书B进行加密,将加密后的数据发送至客户端。
步骤2.5、客户端接收服务器端发送的加密套件B、随机数b2以及包含公钥B的证书B。
客户端存储接收到的随机数b2。客户端根据证书B对服务器端进行身份认证。客户端生成随机数b3。服务器身份认证通过后,客户端使用公钥B对随机数b3进行加密。
客户端根据随机数b1、随机数b2和随机数b3生成对第二称加密秘钥。该对称加密秘钥适用于加密套件B。
进一步的,为了进一步提高通信安全性,客户端使用第一对称加密秘钥对接收到的数据进行解密,得到第一对称加密秘钥对加密套件B、随机数b2以及包含公钥B的证书B。然后,客户端根据随机数b1、随机数b2和随机数b3生成对称加密秘钥。
步骤2.6、客户端将多重加密的随机数b3发送至服务器端。
客户端在使用公钥B对随机数b3进行加密之后,使用第一对称加密秘钥对加密后的随机数b3进一步加密,得到多重加密的随机数b3。
服务器端接收客户端发送的多重加密的随机数b3后,首先使用第一对称加密秘钥对多重加密的随机数b3进行解密,得到加密的随机数b3。然后使用与公钥B对应的秘钥B对加密的随机数b3进行解密,得到随机数b3。服务器端根据随机数b1、随机数b2和随机数b3生成第二对称加密秘钥。其中,公钥B和私钥B成对出现,用于非对称加密算法。
至此,客户端与服务器端经过第二次传输层安全协议握手过程,得到第二对称加密秘钥。
上述示例给出了两个连续执行的传输层安全协议握手过程。在此基础上,可以继续执行第三个传输层安全协议握手过程。第三个传输层安全协议握手过程的执行方式,与第二个传输层安全协议握手过程类似。第三个传输层安全协议握手过程中,客户端在向服务器端发送数据时,依次使用第二对称加密秘钥和第一对称加密秘钥对数据进行加密。服务器端对接收到的数据依次使用第一对称加密秘钥和第二对称加密秘钥进行解密。进一步的,服务器端在向客户端发送数据时,也可以依次使用第二对称加密秘钥和第一对称加密秘钥对数据进行加密。相应的,客户端对接收到的数据依次使用第一对称加密秘钥和第二对称加密秘钥进行解密。通过第三个传输层安全协议握手过程,可以得到第三对称加密秘钥。以此类推,可以继续叠加一个或多个传输层安全协议握手过程,每个传输层安全协议握手过程得到相应的对称加密秘钥。
步骤220、根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。
在完成N次的传输层安全协议握手过程之后,可以得到N个对称加密秘钥,此时可以进行客户端与服务器端之间数据传输。例如传输浏览器应用的相关数据、传输邮箱应用的相关数据、即时通信应用的相关数据、VoIP应用的相关数据、网络传真应用的相关数据等。客户端可以作为数据的发送方也可以作为数据的接收方。
可选的,客户端作为数据的发送方时,步骤220可以通过下述方式实施:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第一目标数据进行加密,得到第一加密数据;将第一加密数据发送至服务器端。
N次传输层安全协议握手过程共得到N个对称加密秘钥,按照得到的先后顺序依次为第一对称加密秘钥、第二对称加密秘钥、第三对称加密秘钥、…、第N-2对称加密秘钥、第N-1对称加密秘钥、第N对称加密秘钥。
客户端依次使用第N对称加密秘钥、第N-1对称加密秘钥、第N-2对称加密秘钥、…、第二对称加密秘钥、第一对称加密秘钥对待发送的第一目标数据进行加密。需要说明的是,上述多次加密过程为迭代式的加密,本次加密结果作为下次加密的数据。例如,使用第N对称加密秘钥对第一目标数据进行加密后,得到加密数据A。使用第N-1对称加密秘钥对加密数据A进行加密,得到加密数据B。使用第N-2对称加密秘钥对加密数据B进行加密,得到加密数据C。以此类推,使用第一对称加密秘钥对加密数据N-1进行加密,得到加密数据N。将加密数据N作为第一加密数据,发送至服务器端。
上述加密过程使用的对称加密算法为安全协议TLS握手过程中服务器端选择的对称加密算法,具体使用哪种对称加密算法根据记载的服务器端选择的对称加密算法而定。根据不同安全协议TLS握手过程确定不同的对称加密秘钥及其对应的对称加密算法。
根据安全协议TLS握手过程中确定对称加密算法以及安全协议TLS握手过程得到的对称加密秘钥,对第一目标数据进行加密,得到的第一加密数据具有较高的密码复杂度,破译难度高,进而提高数据安全性。
可选的,客户端作为数据的接收方时,步骤220可以通过下述方式实施:
接收服务器端发送的第二加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第二加密数据进行解密,得到第二目标数据。
客户端在接收到服务器端发送的第二加密数据后,按照传输层安全协议握手过程的执行顺序,由先到后,依次使用第一对称加密秘钥、第二对称加密秘钥、第三对称加密秘钥、…、第N对称加密秘钥对第二加密数据进行解密。
需要说明的是,上述多次加密过程为迭代式的解码,本次解码结果作为下次解码的数据。例如,使用第一对称加密秘钥对第二加密数据进行解密后,得到解密数据A’。使用第二对称加密秘钥对解密数据A’进行解密,得到解密数据B’。使用第三对称加密秘钥对加密数据B’进行解密,得到解密数据C’。以此类推,使用第N对称加密秘钥对解密数据N-1’进行解密,得到解密数据N’。将解密数据N’作为第二目标数据。
根据不同安全协议TLS握手过程确定不同的对称加密秘钥及其对应的对称加密算法的解密算法。
根据安全协议TLS握手过程中确定对称加密算法对应的解密算法以及安全协议TLS握手过程得到的对称加密秘钥,对第二加密数据进行解密,得到的第二目标数据具有较高的密码复杂度,破译难度高,进而提高数据安全性。
本发明实施例提供的数据加密通信方法,客户端能够连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥。对于多次传输层安全协议TLS握手中的任意两个相邻握手过程,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥。根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。相对于目前传输层安全协议TLS规定的握手过程,仅进行一次握手过程,存在安全漏洞,加密效果亟待提高,本发明实施例提供的数据加密通信方法,客户端首先与服务器端进行连续多次的握手过程,在多次握手过程中,除了首次握手过程之外,其余握手过程中服务器端均需要使用本次握手过程的前一次握手过程生成的对称加密秘钥对客户端发送的数据进行机密,得到握手过程中的具体报文,并响应该报文。目前黑客伪造的假冒服务器端只能进行一次握手过程,假冒服务器端缺乏在非首次的握手过程中使用前一次握手过程生成的对称加密秘钥对报文进行解密的逻辑,因此通过多次握手,能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。
实施例二
图3为本发明实施例二提供的数据加密通信方法的流程图,本实施例可适用于服务器端与客户端基于传输层安全协议握手过程建立连接,并通过该连接进行数据加密通信的情况,该方法可以由服务器端来执行,具体包括如下步骤:
步骤310、响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥。
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行。
可以预先配置客户端与服务器端的握手过程次数,若配置为N次,则连续执行N次握手过程。N为大于2的整数。
示例性的,假设客户端与服务器端的握手过程次数配置为三次,则服务器端通过下述方式响应客户端发起的多次传输层安全协议握手过程:
客户端发送握手请求给服务器端。握手请求携带有加密套件列表以及随机数a1。客户端生成并存储随机数a1。加密套件列表为客户端可支持的多组加密套件。
步骤3.1、服务器端接收客户端发送握手请求,解析出握手请求中的加密套件列表和随机数a1。
服务器端从加密套件列表中选择出加密套件A。服务器端生成随机数a2。
步骤3.2、服务器端将加密套件A以及随机数a2发送至客户端。
步骤3.3、服务器端将包含有服务器端公钥A的证书A发送至客户端。
其中,公钥A和私钥A成对出现,用于非对称加密算法。公钥A可以被加密套件A用于加密。
客户端接收服务器发送的加密套件A、随机数a2以及包含公钥A的证书A。
客户端存储接收到的随机数a2。客户端根据证书A对服务器进行身份认证。客户端生成随机数a3。服务器身份认证通过后,客户端使用公钥A对随机数a3进行加密。
客户端根据随机数a1、随机数a2和随机数a3生成第一对称加密秘钥。该对称加密秘钥适用于加密套件A。
客户端将加密后的随机数a3发送至服务器端。
步骤3.4、服务器端接收客户端发送的加密后的随机数a3。
服务器端接收客户端发送的加密后的随机数a3后,使用与公钥A对应的私钥A对加密后的随机数a3进行解密,得到随机数a3。服务器端根据随机数a1、随机数a2和随机数a3生成第一对称加密秘钥。
至此,服务器通过响应客户端发起的第一次传输层安全协议握手过程,得到第一对称加密秘钥。
客户端将使用第一对称加密秘钥加密的握手请求发送至服务器端。
握手请求携带有加密套件列表以及随机数b1。客户端生成并存储随机数b1。加密套件列表为客户端可支持的多组加密套件。
在得到握手请求后,客户端使用第一次传输层安全协议TLS握手得到第一对称加密秘钥对握手请求进行加密,将加密后的握手请求发送至服务器端。
步骤3.5、服务器端接收客户端发送的加密数据。
使用第一对称加密秘钥对加密数据进行解密,得到握手请求。解析出握手请求中的加密套件列表和随机数b1。服务器端从加密套件列表中选择出加密套件B。服务器端生成随机数b2。
步骤3.6、服务器端将加密套件B以及随机数b2发送至客户端。此外,服务器端将包含有服务器端公钥B的证书B发送至客户端。其中,公钥B可以被加密套件B用于加密。
在一种实现方式中,在第一握手过程中根据客户端发送的加密套件列表选择第一加密套件,向客户端发送第一加密套件;在第二握手过程中根据客户端发送的加密套件列表选择第二加密套件,向客户端发送第二加密套件;第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在本示例中,第一握手过程可以为第一次传输层安全协议握手过程。第二握手过程可以为第二次传输层安全协议握手过程。第二次传输层安全协议握手过程中选择的加密套件B可以与第一次传输层安全协议握手过程中选择的加密套件A不同。
解密套件包括对称加密算法、密钥交换算法和摘要算法。
例如,对称加密算法可以为DES或RC5。密钥交换算法可以为RSA或DH。摘要算法可以为MD5或SHA。
假设服务器端在第一握手过程中选择的第一加密套件包含的第一算法内容为:对称加密算法为DES、密钥交换算法为RSA、摘要算法为MD5。服务器端在第二握手过程中选择的第二加密套件包含的第二算法内容可以为:对称加密算法为RC5、密钥交换算法为RSA、摘要算法为SHA。第一算法内容与第二算法内容包含的任意一个算法不同,则确定第一算法内容与第二算法内容不同。
服务器端可以在每次传输层安全协议握手过程时,选择不同的算法内容,进而指定不同的加密套件。通过在不同传输层安全协议握手过程中设置不同的加密套件,能够进一步提高握手过程的信息加密复杂度,进而识别出无法适配多重加密的假冒服务器,提高安全性。
在另一种实现方式中,在第一握手过程中向客户端发送第一证书,第一证书包含第一公钥;在第二握手过程中向客户端发送第二证书,第二证书包含第二公钥;第一公钥与第二公钥不同。
服务器端的每个公钥对应相应的私钥进行解码。服务器端可以在不同的次传输层安全协议握手过程中向客户端发送含有不同公钥的证书。此时,即使某一个传输层安全协议握手过程中的私钥被泄露,但其他传输层安全协议握手过程中的私钥发生了改变,因此黑客无法使用一个私钥对多个传输层安全协议握手过程进行信息窃取,进而提高伪造难度,提高安全性。
每次传输层安全协议握手过程采用不同的证书以及协商不同的加密算法(即加密套件),生成不同的加密密钥,达到提升攻击防御能力,提升信息加密强度的效果。
进一步的,为了进一步提高通信安全性,服务器端可以使用第一对称加密秘钥对加密套件B、随机数b2以及包含公钥B的证书B进行加密,将加密后的数据发送至客户端。
客户端接收服务器端发送的加密套件B、随机数b2以及包含公钥B的证书B。
客户端存储接收到的随机数b2。客户端根据证书B对服务器端进行身份认证。客户端生成随机数b3。服务器身份认证通过后,客户端使用公钥B对随机数b3进行加密。
客户端根据随机数b1、随机数b2和随机数b3生成对第二称加密秘钥。该对称加密秘钥适用于加密套件B。
进一步的,为了进一步提高通信安全性,客户端使用第一对称加密秘钥对接收到的数据进行解密,得到第一对称加密秘钥对加密套件B、随机数b2以及包含公钥B的证书B。然后,客户端根据随机数b1、随机数b2和随机数b3生成对称加密秘钥。
客户端将多重加密的随机数b3发送至服务器端。
客户端在使用公钥B对随机数b3进行加密之后,使用第一对称加密秘钥对加密后的随机数b3进一步加密,得到多重加密的随机数b3。
步骤3.6、服务器端接收客户端发送的多重加密的随机数b3。
服务器端接收客户端发送的多重加密的随机数b3后,首先使用第一对称加密秘钥对多重加密的随机数b3进行解密,得到加密的随机数b3。然后使用与公钥B对应的秘钥B对加密的随机数b3进行解密,得到随机数b3。服务器端根据随机数b1、随机数b2和随机数b3生成第二对称加密秘钥。其中,公钥B和私钥B成对出现,用于非对称加密算法。
至此,服务器端通过响应客户端发起的第二次传输层安全协议握手过程,得到第二对称加密秘钥。
上述示例给出了两个连续执行的传输层安全协议握手过程。在此基础上,可以继续执行第三个传输层安全协议握手过程。第三个传输层安全协议握手过程的执行方式,与第二个传输层安全协议握手过程类似。第三个传输层安全协议握手过程中,客户端在向服务器端发送数据时,依次使用第二对称加密秘钥和第一对称加密秘钥对数据进行加密。服务器端对接收到的数据依次使用第一对称加密秘钥和第二对称加密秘钥进行解密。进一步的,服务器端在向客户端发送数据时,也可以依次使用第二对称加密秘钥和第一对称加密秘钥对数据进行加密。相应的,客户端对接收到的数据依次使用第一对称加密秘钥和第二对称加密秘钥进行解密。通过第三个传输层安全协议握手过程,可以得到第三对称加密秘钥。以此类推,可以继续叠加一个或多个传输层安全协议握手过程,每个传输层安全协议握手过程得到相应的对称加密秘钥。
步骤320、根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。
在完成N次的传输层安全协议握手过程之后,可以得到N个对称加密秘钥,此时可以进行客户端与服务器端之间数据传输。例如传输浏览器应用的相关数据、传输邮箱应用的相关数据、即时通信应用的相关数据、VoIP应用的相关数据、网络传真应用的相关数据等。服务器端可以作为数据的发送方也可以作为数据的接收方。
可选的,服务器端作为数据的接收方时,步骤320可以通过下述方式实施:
接收客户端发送的第一加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第一加密数据进行解密,得到第一目标数据。
N次传输层安全协议握手过程共得到N个对称加密秘钥,按照得到的先后顺序依次为第一对称加密秘钥、第二对称加密秘钥、第三对称加密秘钥、…、第N对称加密秘钥。
服务器端在接收到客户端发送的第一加密数据后,按照传输层安全协议握手过程的执行顺序,由先到后,依次使用第一对称加密秘钥、第二对称加密秘钥、第三对称加密秘钥、…、第N对称加密秘钥对第一加密数据进行解密。
需要说明的是,上述多次加密过程为迭代式的解码,本次解码结果作为下次解码的数据。例如,使用第一对称加密秘钥对第一加密数据进行解密后,得到解密数据A’。使用第二对称加密秘钥对解密数据A’进行解密,得到解密数据B’。使用第三对称加密秘钥对加密数据B’进行解密,得到解密数据C’。以此类推,使用第N对称加密秘钥对解密数据N-1’进行解密,得到解密数据N’。将解密数据N’作为第一目标数据。
根据不同安全协议TLS握手过程确定不同的对称加密秘钥及其对应的对称加密算法的解密算法。
根据安全协议TLS握手过程中确定对称加密算法对应的解密算法以及安全协议TLS握手过程得到的对称加密秘钥,对第一加密数据进行解密,得到的第一目标数据具有较高的密码复杂度,破译难度高,进而提高数据安全性。
可选的,服务器端作为数据的发送方时,步骤320可以通过下述方式实施:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第二目标数据进行加密,得到第二加密数据;将第二加密数据发送至客户端。
客户端依次使用第N对称加密秘钥、第N-1对称加密秘钥、第N-2对称加密秘钥、…、第二对称加密秘钥、第一对称加密秘钥对待发送的第二目标数据进行加密。需要说明的是,上述多次加密过程为迭代式的加密,本次加密结果作为下次加密的数据。例如,使用第N对称加密秘钥对第二目标数据进行加密后,得到加密数据A。使用第N-1对称加密秘钥对加密数据A进行加密,得到加密数据B。使用第N-2对称加密秘钥对加密数据B进行加密,得到加密数据C。以此类推,使用第一对称加密秘钥对加密数据N-1进行加密,得到加密数据N。将加密数据N作为第二加密数据,发送至服务器端。
上述加密过程使用的对称加密算法为安全协议TLS握手过程中服务器端选择的对称加密算法,具体使用哪种对称加密算法根据记载的服务器端选择的对称加密算法而定。根据不同安全协议TLS握手过程确定不同的对称加密秘钥及其对应的对称加密算法。
根据安全协议TLS握手过程中确定对称加密算法以及安全协议TLS握手过程得到的对称加密秘钥,对第二目标数据进行加密,得到的第二加密数据具有较高的密码复杂度,破译难度高,进而提高数据安全性。
本发明实施例提供的数据加密通信方法,服务器端能够响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥。对于多次传输层安全协议TLS握手中的任意两个相邻握手过程,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥。根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。相对于目前传输层安全协议TLS规定的握手过程,仅进行一次握手过程,存在安全漏洞,加密效果亟待提高,本发明实施例提供的数据加密通信方法,客户端首先与服务器端进行连续多次的握手过程,在多次握手过程中,除了首次握手过程之外,其余握手过程中服务器端均需要使用本次握手过程的前一次握手过程生成的对称加密秘钥对客户端发送的数据进行机密,得到握手过程中的具体报文,并响应该报文。目前黑客伪造的假冒服务器端只能进行一次握手过程,假冒服务器端缺乏在非首次的握手过程中使用前一次握手过程生成的对称加密秘钥对报文进行解密的逻辑,因此通过多次握手,能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。
实施例三
图4为本发明实施例三提供的数据加密通信装置的结构示意图,本实施例可适用于客户端与服务器端基于传输层安全协议握手过程建立连接,并通过该连接进行数据加密通信的情况,该装置可以位于客户端,具体包括:多次握手过程发起模块410和第一数据传输模块420。
多次握手过程发起模块410,用于连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
第一数据传输模块420,用于根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。
在上述实施例的基础上,多次握手过程发起模块410用于:
在第一握手过程中接收服务器端选择的第一加密套件;
在第二握手过程中接收服务器端选择的第二加密套件;
第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在上述实施例的基础上,多次握手过程发起模块410用于:
在第一握手过程中接收服务器端发送的第一证书,第一证书包含第一公钥;
在第二握手过程中接收服务器端发送的第二证书,第二证书包含第二公钥;
第一公钥与第二公钥不同。
在上述实施例的基础上,第一数据传输模块420用于:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第一目标数据进行加密,得到第一加密数据;将第一加密数据发送至服务器端。
在上述实施例的基础上,第一数据传输模块420用于:
接收服务器端发送的第二加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第二加密数据进行解密,得到第二目标数据。
本发明实施例提供的数据加密通信装置,多次握手过程发起模块410能够连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥。对于多次传输层安全协议TLS握手中的任意两个相邻握手过程,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥。第一数据传输模块420根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。相对于目前传输层安全协议TLS规定的握手过程,仅进行一次握手过程,存在安全漏洞,加密效果亟待提高,本发明实施例提供的数据加密通信方案,客户端首先与服务器端进行连续多次的握手过程,在多次握手过程中,除了首次握手过程之外,其余握手过程中服务器端均需要使用本次握手过程的前一次握手过程生成的对称加密秘钥对客户端发送的数据进行机密,得到握手过程中的具体报文,并响应该报文。目前黑客伪造的假冒服务器端只能进行一次握手过程,假冒服务器端缺乏在非首次的握手过程中使用前一次握手过程生成的对称加密秘钥对报文进行解密的逻辑,因此通过多次握手,能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。
实施例四
图5为本发明实施例四提供的数据加密通信装置的结构示意图,本实施例可适用于客户端与服务器端基于传输层安全协议握手过程建立连接,并通过该连接进行数据加密通信的情况,该装置可以位于服务器端,具体包括:多次握手过程响应模块510和第二数据传输模块520。
多次握手过程响应模块510,用于响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
第二数据传输模块520,用于根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。
在上述实施例的基础上,多次握手过程响应模块510用于:
在第一握手过程中根据客户端发送的加密套件列表选择第一加密套件,向客户端发送第一加密套件;在第二握手过程中根据客户端发送的加密套件列表选择第二加密套件,向客户端发送第二加密套件;第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在上述实施例的基础上,多次握手过程响应模块510用于:
在第一握手过程中向客户端发送第一证书,第一证书包含第一公钥;
在第二握手过程中向客户端发送第二证书,第二证书包含第二公钥;
第一公钥与第二公钥不同。
在上述实施例的基础上,第二数据传输模块520用于:
接收客户端发送的第一加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第一加密数据进行解密,得到第一目标数据。
在上述实施例的基础上,第二数据传输模块520用于:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第二目标数据进行加密,得到第二加密数据;
将第二加密数据发送至客户端。
本发明实施例提供的数据加密通信装置,多次握手过程响应模块510响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥。对于多次传输层安全协议TLS握手中的任意两个相邻握手过程,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥。第二数据传输模块520根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。相对于目前传输层安全协议TLS规定的握手过程,仅进行一次握手过程,存在安全漏洞,加密效果亟待提高,本发明实施例提供的数据加密通信方法,客户端首先与服务器端进行连续多次的握手过程,在多次握手过程中,除了首次握手过程之外,其余握手过程中服务器端均需要使用本次握手过程的前一次握手过程生成的对称加密秘钥对客户端发送的数据进行机密,得到握手过程中的具体报文,并响应该报文。目前黑客伪造的假冒服务器端只能进行一次握手过程,假冒服务器端缺乏在非首次的握手过程中使用前一次握手过程生成的对称加密秘钥对报文进行解密的逻辑,因此通过多次握手,能够识别出伪造的假冒服务器端,进而提高数据加密效果,使得假冒服务器端无法对收到的加密数据进行正确的解密,提高数据传输安全性。
本发明实施例所提供的数据加密通信装置可执行本发明任意实施例所提供的数据加密通信方法,具备执行方法相应的功能模块和有益效果。
实施例五
图6为本发明实施例五提供的一种数据加密通信终端的结构示意图,如图6所示,该数据加密通信终端包括处理器60、存储器61、输入装置62和输出装置63;数据加密通信终端中处理器60的数量可以是一个或多个,图6中以一个处理器60为例;数据加密通信终端中的处理器60、存储器61、输入装置62和输出装置63可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器61作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据加密通信方法对应的程序指令/模块(例如,数据加密通信装置中的多次握手过程发起模块410和第一数据传输模块420)。处理器60通过运行存储在存储器61中的软件程序、指令以及模块,从而执行数据加密通信终端的各种功能应用以及数据处理,即实现上述的数据加密通信方法。
存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器61可进一步包括相对于处理器60远程设置的存储器,这些远程存储器可以通过网络连接至数据加密通信终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置62可用于接收输入的数字或字符信息,以及产生与数据加密通信终端的用户设置以及功能控制有关的键信号输入。输出装置63可包括显示屏等显示设备。
实施例六
图7为本发明实施例六提供的一种服务器的结构示意图,如图7所示,该服务器包括处理器70、存储器71;服务器中处理器70的数量可以是一个或多个,图7中以一个处理器70为例;服务器中的处理器70和存储器71可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据加密通信方法对应的程序指令/模块(例如,数据加密通信装置中的多次握手过程响应模块510和第二数据传输模块520)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的数据加密通信方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例七
本发明实施例七还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种数据加密通信方法。
当该方法应用于客户端时,该方法包括:
连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输。
在上述实施例的基础上,在第一握手过程中接收服务器端选择的第一加密套件;在第二握手过程中接收服务器端选择的第二加密套件;第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在上述实施例的基础上,在第一握手过程中接收服务器端发送的第一证书,第一证书包含第一公钥;
在第二握手过程中接收服务器端发送的第二证书,第二证书包含第二公钥;
第一公钥与第二公钥不同。
在上述实施例的基础上,根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输,包括:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第一目标数据进行加密,得到第一加密数据;将第一加密数据发送至服务器端。
在上述实施例的基础上,根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与服务器端进行数据传输,包括:
接收服务器端发送的第二加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第二加密数据进行解密,得到第二目标数据。
当该方法应用于服务器端时,该方法包括:
响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;第一握手过程和第二握手过程为多次传输层安全协议握手过程中任意两个相邻执行的握手过程,第一握手过程先于第二握手过程执行;
根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输。
在上述实施例的基础上,在第一握手过程中根据客户端发送的加密套件列表选择第一加密套件,向客户端发送第一加密套件;在第二握手过程中根据客户端发送的加密套件列表选择第二加密套件,向客户端发送第二加密套件;第一加密套件包含的第一算法内容与第二加密套件包含的第二算法内容不同。
在上述实施例的基础上,在第一握手过程中向客户端发送第一证书,第一证书包含第一公钥;
在第二握手过程中向客户端发送第二证书,第二证书包含第二公钥;
第一公钥与第二公钥不同。
在上述实施例的基础上,根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输,包括:
接收客户端发送的第一加密数据;
按照多次传输层安全协议握手过程的执行顺序,由先到后,依次使用多个对称加密秘钥对第一加密数据进行解密,得到第一目标数据。
在上述实施例的基础上,根据多次传输层安全协议握手过程的执行顺序,依次使用多个对称加密秘钥与客户端进行数据传输,包括:
按照多次传输层安全协议握手过程的执行顺序,由后到先,依次使用多个对称加密秘钥对第二目标数据进行加密,得到第二加密数据;
将第二加密数据发送至客户端。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的数据加密通信方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述数据加密通信装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (13)

1.一种数据加密通信方法,其特征在于,应用于客户端,包括:
连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;所述第一握手过程和所述第二握手过程为所述多次传输层安全协议握手过程中任意两个相邻执行的握手过程,所述第一握手过程先于所述第二握手过程执行;
根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与服务器端进行数据传输;
在所述第一握手过程中接收所述服务器端选择的第一加密套件;在所述第二握手过程中接收所述服务器端选择的第二加密套件;所述第一加密套件包含的第一算法内容与所述第二加密套件包含的第二算法内容不同;
其中,加密套件包括对称加密算法、密钥交换算法和摘要算法。
2.根据权利要求1所述的方法,其特征在于,在所述第一握手过程中接收所述服务器端发送的第一证书,所述第一证书包含第一公钥;
在所述第二握手过程中接收所述服务器端发送的第二证书,所述第二证书包含第二公钥;
所述第一公钥与所述第二公钥不同。
3.根据权利要求1所述的方法,其特征在于,所述根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与服务器端进行数据传输,包括:
按照所述多次传输层安全协议握手过程的执行顺序,由后到先,依次使用所述多个对称加密秘钥对第一目标数据进行加密,得到第一加密数据;将所述第一加密数据发送至服务器端。
4.根据权利要求1所述的方法,其特征在于,所述根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与服务器端进行数据传输,包括:
接收所述服务器端发送的第二加密数据;
按照所述多次传输层安全协议握手过程的执行顺序,由先到后,依次使用所述多个对称加密秘钥对所述第二加密数据进行解密,得到第二目标数据。
5.一种数据加密通信方法,其特征在于,应用于服务器端,包括:
响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;
其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;所述第一握手过程和所述第二握手过程为所述多次传输层安全协议握手过程中任意两个相邻执行的握手过程,所述第一握手过程先于所述第二握手过程执行;
根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与客户端进行数据传输;
在所述第一握手过程中根据所述客户端发送的加密套件列表选择第一加密套件,向所述客户端发送所述第一加密套件;在所述第二握手过程中根据所述客户端发送的加密套件列表选择第二加密套件,向所述客户端发送所述第二加密套件;所述第一加密套件包含的第一算法内容与所述第二加密套件包含的第二算法内容不同;
其中,加密套件包括对称加密算法、密钥交换算法和摘要算法。
6.根据权利要求5所述的方法,其特征在于,在所述第一握手过程中向所述客户端发送第一证书,所述第一证书包含第一公钥;
在所述第二握手过程中向所述客户端发送第二证书,所述第二证书包含第二公钥;
所述第一公钥与所述第二公钥不同。
7.根据权利要求5所述的方法,其特征在于,所述根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与客户端进行数据传输,包括:
接收所述客户端发送的第一加密数据;
按照所述多次传输层安全协议握手过程的执行顺序,由先到后,依次使用所述多个对称加密秘钥对所述第一加密数据进行解密,得到第一目标数据。
8.根据权利要求5所述的方法,其特征在于,所述根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与客户端进行数据传输,包括:
按照所述多次传输层安全协议握手过程的执行顺序,由后到先,依次使用所述多个对称加密秘钥对第二目标数据进行加密,得到第二加密数据;
将所述第二加密数据发送至所述客户端。
9.一种数据加密通信装置,其特征在于,应用于客户端,包括:
多次握手过程发起模块,用于连续执行与服务器端的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行加密,通过第二握手过程得到第二对称加密秘钥;所述第一握手过程和所述第二握手过程为所述多次传输层安全协议握手过程中任意两个相邻执行的握手过程,所述第一握手过程先于所述第二握手过程执行;
第一数据传输模块,用于根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与服务器端进行数据传输;
所述多次握手过程发起模块还用于:
在所述第一握手过程中接收所述服务器端选择的第一加密套件;
在所述第二握手过程中接收所述服务器端选择的第二加密套件;
所述第一加密套件包含的第一算法内容与所述第二加密套件包含的第二算法内容不同;
其中,加密套件包括对称加密算法、密钥交换算法和摘要算法。
10.一种数据加密通信装置,其特征在于,应用于服务器端,包括:
多次握手过程响应模块,用于响应于客户端发起的连续的多次传输层安全协议握手过程,得到多个对称加密秘钥;其中,使用第一握手过程得到的第一对称加密秘钥对第二握手过程中的报文进行解密,通过第二握手过程得到第二对称加密秘钥;所述第一握手过程和所述第二握手过程为所述多次传输层安全协议握手过程中任意两个相邻执行的握手过程,所述第一握手过程先于所述第二握手过程执行;
第二数据传输模块,用于根据所述多次传输层安全协议握手过程的执行顺序,依次使用所述多个对称加密秘钥与客户端进行数据传输;
所述多次握手过程发起模块还用于:
在所述第一握手过程中接收所述服务器端选择的第一加密套件;
在所述第二握手过程中接收所述服务器端选择的第二加密套件;
所述第一加密套件包含的第一算法内容与所述第二加密套件包含的第二算法内容不同;
其中,加密套件包括对称加密算法、密钥交换算法和摘要算法。
11.一种数据加密通信终端,其特征在于,所述数据加密通信终端作为传输层安全协议握手过程中的客户端,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的数据加密通信方法。
12.一种服务器,其特征在于,所述服务器作为传输层安全协议握手过程中的服务器端,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求5-8中任一所述的数据加密通信方法。
13.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-8中任一所述的数据加密通信方法。
CN202011608349.5A 2020-12-30 2020-12-30 数据加密通信终端方法、装置、终端、服务器及存储介质 Active CN112751858B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011608349.5A CN112751858B (zh) 2020-12-30 2020-12-30 数据加密通信终端方法、装置、终端、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011608349.5A CN112751858B (zh) 2020-12-30 2020-12-30 数据加密通信终端方法、装置、终端、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN112751858A CN112751858A (zh) 2021-05-04
CN112751858B true CN112751858B (zh) 2023-04-07

Family

ID=75649532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011608349.5A Active CN112751858B (zh) 2020-12-30 2020-12-30 数据加密通信终端方法、装置、终端、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN112751858B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103906052A (zh) * 2012-12-26 2014-07-02 ***通信集团公司 一种移动终端认证方法、业务访问方法及设备
CN105635039A (zh) * 2014-10-27 2016-06-01 阿里巴巴集团控股有限公司 一种网络安全通信方法及通信装置
CN107959566A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 量子数据密钥协商***及量子数据密钥协商方法
US9961055B1 (en) * 2014-12-18 2018-05-01 Amazon Technologies, Inc. Inaccessibility of data to server involved in secure communication
CN108429724A (zh) * 2017-02-15 2018-08-21 贵州白山云科技有限公司 一种握手处理过程中加密套件的选择方法及装置
CN108696533A (zh) * 2018-06-20 2018-10-23 记忆科技(深圳)有限公司 保证数据传输层传输安全的方法、装置及计算机设备
CN109547471A (zh) * 2018-12-24 2019-03-29 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 网络通信方法和装置
CN110190955A (zh) * 2019-05-27 2019-08-30 新华三信息安全技术有限公司 基于安全套接层协议认证的信息处理方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103906052A (zh) * 2012-12-26 2014-07-02 ***通信集团公司 一种移动终端认证方法、业务访问方法及设备
CN105635039A (zh) * 2014-10-27 2016-06-01 阿里巴巴集团控股有限公司 一种网络安全通信方法及通信装置
US9961055B1 (en) * 2014-12-18 2018-05-01 Amazon Technologies, Inc. Inaccessibility of data to server involved in secure communication
CN107959566A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 量子数据密钥协商***及量子数据密钥协商方法
CN108429724A (zh) * 2017-02-15 2018-08-21 贵州白山云科技有限公司 一种握手处理过程中加密套件的选择方法及装置
CN108696533A (zh) * 2018-06-20 2018-10-23 记忆科技(深圳)有限公司 保证数据传输层传输安全的方法、装置及计算机设备
CN109547471A (zh) * 2018-12-24 2019-03-29 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 网络通信方法和装置
CN110190955A (zh) * 2019-05-27 2019-08-30 新华三信息安全技术有限公司 基于安全套接层协议认证的信息处理方法及装置

Also Published As

Publication number Publication date
CN112751858A (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
CN109347835B (zh) 信息传输方法、客户端、服务器以及计算机可读存储介质
CN109088889B (zh) 一种ssl加解密方法、***及计算机可读存储介质
US8307208B2 (en) Confidential communication method
US10693848B2 (en) Installation of a terminal in a secure system
US8646104B2 (en) Stateless challenge-response broadcast protocol
EP3205048B1 (en) Generating a symmetric encryption key
CN108347419A (zh) 数据传输方法和装置
US20190238334A1 (en) Communication system, communication client, communication server, communication method, and program
EP3476078B1 (en) Systems and methods for authenticating communications using a single message exchange and symmetric key
CN113806772A (zh) 基于区块链的信息加密传输方法及装置
KR100860573B1 (ko) 사용자 인증 방법
JP6627043B2 (ja) Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム
US11438316B2 (en) Sharing encrypted items with participants verification
TW201626776A (zh) 用於建立安全通訊通道的改良式系統
TW201626775A (zh) 交互驗證
KR20210153595A (ko) 암호화 데이터 검증 방법
CN113204772B (zh) 数据处理方法、装置、***、终端、服务器和存储介质
TW201633206A (zh) 透過驗證符記的改善安全性
CN111010399A (zh) 一种数据传输方法、装置、电子设备及存储介质
US20220045848A1 (en) Password security hardware module
Daddala et al. Design and implementation of a customized encryption algorithm for authentication and secure communication between devices
CN112751858B (zh) 数据加密通信终端方法、装置、终端、服务器及存储介质
JPH0981523A (ja) 認証方法
CN114978564B (zh) 基于多重加密的数据传输方法及装置
RU2693192C1 (ru) Компьютерно-реализуемый способ обеспечения защищённых групповых коммуникаций со свойствами отказуемости, совершенной прямой секретности и согласованности текста переписки

Legal Events

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