CN109845214B - 一种传输数据的方法、装置和系统 - Google Patents
一种传输数据的方法、装置和系统 Download PDFInfo
- Publication number
- CN109845214B CN109845214B CN201680090033.7A CN201680090033A CN109845214B CN 109845214 B CN109845214 B CN 109845214B CN 201680090033 A CN201680090033 A CN 201680090033A CN 109845214 B CN109845214 B CN 109845214B
- Authority
- CN
- China
- Prior art keywords
- data
- intermediate device
- target data
- data transmission
- transmission 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
-
- 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/0464—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 using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
-
- 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
- H04L63/126—Applying verification of the received information the source of the received data
-
- 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
-
- 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
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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/3234—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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- 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/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
- H04W12/033—Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
Abstract
本发明实施例公开了一种传输数据的方法、装置和系统,属于互联网技术领域。所述方法包括:中间设备接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;所述中间设备基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;所述中间设备向所述第二设备发送携带有所述第二数据的第二数据传输消息。采用本发明,可以使得中间设备能够正常工作。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种传输数据的方法、装置和系统。
背景技术
为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS(Transport Layer Security,传输层安全)协议的应用得到了广泛的普及,例如,TLS协议已被广泛应用于浏览器与网站服务器之间的安全通信。
需要对传输数据进行加密时的数据传输过程一般是:终端首先可以与服务器建立TCP(Transmission Control Protocol,传输控制协议)连接,然后,可以建立TLS连接,其中,建立TLS连接的过程即是终端与服务器协商密钥的过程,最后,终端与服务器进行数据传输,其中,在数据传输时终端与服务器可以利用协商好的密钥对传输的数据进行加密、解密处理。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
终端与服务器传输数据时,传输过程中可能会经过具有业务优化功能的中间设备(比如,可以是防火墙设备、运营商提供的用于视频优化的设备等中间设备),即在数据传输过程中可能需要中间设备对传输的数据进行数据处理(服务器或终端传输的数据到达中间设备时,中间设备可以对服务器或终端传输的数据进行查看处理或其他数据处理,即中间设备可以根据自身可实现的数据处理功能,对服务器或终端传输的数据进行数据处理)。然而,随着TLS协议的广泛应用,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,然而,进行加密过的数据经过中间设备时,由于数据是通过终端与服务器进行协商好的密钥进行加密的,中间设备并不知道密钥,导致中间设备无法读取终端与服务器进行传输的数据,从而,导致中间设备无法正常工作。
发明内容
为了实现在第一设备与第二设备传输的数据加密的情况下,中间设备可以正常工作的目的,本发明实施例提供了一种传输数据的方法、装置和系统。所述技术方案如下:
第一方面,提供了一终传输数据的方法,所述方法包括:
第一设备获取待传输至第二设备的目标数据;
如果所述目标数据为允许中间设备读取的数据,则所述第一设备基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
所述第一设备向所述中间设备发送携带有所述第一数据的第一数据传输消息。
为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,可以获取待传输的目标数据。第一设备获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为允许中间设备读取的数据,则第一设备可以基于预先存储的第一加密密钥,对目标数据进行加密处理,得到第一数据,其中,第一设备中还可以预先存储有加密算法(可以称为第一加密算法),即,第一设备可以基于第一设备与中间设备协商的第一加密密钥和第一加密算法,对目标数据进行加密处理,得到第一数据。第一设备得到第一数据后,可以向中间设备发送数据传输消息(即第一数据传输消息),其中,第一数据传输消息中还可以携带有第一数据。
结合第一方面,在该第一方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
结合第一方面的第一种可能实现方式,在该第一方面的第二种可能实现方式中,所述方法还包括:
如果所述目标数据为不允许所述中间设备读取的数据,则所述第一设备基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述第一设备向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
第一设备获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为不允许中间设备读取的数据,则可以基于预先存储的第三加密密钥,对目标数据进行加密处理,得到第三数据,其中,第一设备中还可以预先存储有加密算法(可以称为第三加密算法),即,第一设备可以基于第一设备与第二设备协商的第三加密密钥和第三加密算法,对目标数据进行加密处理,得到第三数据。
针对如果目标数据为允许中间设备读取的数据,则第一数据传输消息中携带有第一预设标识的情况,当第一设备确定出目标数据为不允许中间设备读取的数据时,可以向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识可以用于指示不允许中间设备读取目标数据。另外,第一设备可以对第二预设标识进行完整性保护处理。
这样,既可以在目标数据为允许中间设备读取的数据的情况下,使得中间设备能够正常工作,又可以在目标数据为不允许中间设备读取的数据的情况下,保证目标数据的安全性。
结合第一方面的第二种可能实现方式,在该第一方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第一方面,在该第一方面的第四种可能实现方式中,所述方法还包括:
所述第一设备向所述中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
所述第一设备接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;
所述第一设备与所述中间设备协商用于数据传输的所述第一加密密钥和对应的第一解密密钥。
第一设备与第二设备传输数据时,可以基于TLS协议传输数据,也可以基于QUIC协议传输数据。当基于TLS协议传输数据时,第一设备与第二设备在传输数据前,可以先建立TCP(Transmission Control Protocol,传输控制协议)连接,即第一设备与第二设备进行TCP三次握手,然后,建立TLS连接,其中,建立TLS连接的过程即是第一设备与第二设备协商密钥的过程,即协商下述处理过程中涉及的用于数据传输的第三加密密钥和对应的第三解密密钥。当基于QUIC协议传输数据时,第一设备与第二设备在传输数据前,可以先建立QUIC连接。
第一设备与第二设备传输目标数据时,第一设备可以向中间设备发送验证指示消息,其中,该验证指示消息可以用于指示中间设备向第二设备发送用于验证中间设备合法性的验证请求,其中,对于上述提及的两种情况,针对基于TLS协议传输目标数据的情况,该验证指示消息可以在TLS建立的过程中发送,也可以在TLS连接建立后,针对基于QUIC协议传输目标数据的情况,该验证指示消息可以在QUIC连接的建立过程中,也可以在QUIC连接建立后,本发明实施例不对其进行限定。另外,第一设备中可以预先设置有中间设备的设备信息,其中,中间设备的设备信息可以是中间设备的设备标识(可以是中间设备的设备名称,也可以是中间设备的MAC地址,也可以是中间设备的IP(Internet Protocol,网络协议)地址)、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书,此种情况下,验证指示消息中可以携带有中间设备的设备信息。第一设备中也可以不预先配置有中间设备的设备信息,本发明实施例不对其进行限定。此外,第一设备发送的验证指示消息可以采用明文的方式进行传输。
向中间设备发送验证指示消息后,中间设备可以向第二设备发送用于验证中间设备合法性的验证请求,第二设备验证中间设备合法后,可以通过中间设备向第一设备发送用于指示中间设备合法的反馈消息,第一设备可以接收中间设备发送的用于指示中间设备合法的反馈消息,进而,可以与中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥。
这样,先验证中间设备的合法性,在中间设备合法的基础上再协商第一加密密钥和对应的第一解密密钥,从而,可以防止目标数据被恶意设备(即不合法的中间设备)读取,进而,可以保证目标数据的安全性。
第二方面,提供了一种传输数据的方法,所述方法包括:
中间设备接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述中间设备基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
所述中间设备向所述第二设备发送携带有所述第二数据的第二数据传输消息。
第一设备向中间设备发送第一数据传输消息后,中间设备可以接收第一设备发送的第一数据传输消息,可以对其进行解析,获取其中携带的第一数据,其中,第一数据为经过第一加密密钥加密的目标数据。中间设备得到目标数据后,可以按照自身具有的数据处理功能,对得到的目标数据进行预设的数据处理,具体的,中间设备可以具有预设的数据处理功能,其中,预设的数据处理功能可以是统计数据功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,以便于进行统计,不改变目标数据,预设的数据处理功能也可以是视频优化功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,并基于预设的数据处理功能对目标数据进行改变,例如,第一设备为服务器,视频优化功能是将高清视频数据改变为标清视频数据,此种情况下,中间设备可以读取服务器发送至终端的高清视频数据(即目标数据),进而,可以将目标数据改变为标清视频数据。也就是说,中间设备对目标数据进行预设的数据处理后,得到的数据可能与目标数据相同,也可能不同。中间设备对目标数据进行预设的数据处理后,可以获取预先存储的第二加密密钥,并基于第二加密密钥对经过数据处理的目标数据进行加密处理,得到第二数据,其中,中间设备中还可以预先存储有加密算法(可以称为第二加密算法),即,中间设备可以基于中间设备与第二设备协商的第二加密密钥和第二加密算法,对经过数据处理的目标数据进行加密处理,得到第二数据。中间设备得到第二数据后,可以向第二设备发送数据传输消息(即第二数据传输消息),其中,第二数据传输消息中可以携带有第二数据。
结合第二方面,在该第二方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理,包括:
当所述中间设备确定所述第一数据传输消息中携带有所述第一预设标识时,所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述中间设备向所述第二设备发送携带有所述第二数据的第二数据传输消息,包括:
所述中间设备向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
中间设备获取到第一数据传输消息后,可以判断第一数据传输消息中是否携带有第一预设标识,当确定第一数据传输消息中携带有第一预设标识时,可以基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。当第一数据传输消息中携带有第一预设标识时,中间设备发送至第二设备的第二数据传输消息中还可以携带有第一预设标识,即第二数据传输消息中携带有第二数据和第一预设标识。
这样,可以在数据传输消息中携带相应的预设标识,从而,可以使得中间设备和第二设备方便获知第一设备发送的第一数据基于的加密密钥,从而,可以提高确定解密密钥的效率。
结合第二方面的第一种可能实现方式,在该第二方面的第二种可能实现方式中,所述方法还包括:
所述中间设备接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
当所述中间设备确定所述第三数据传输消息中携带有所述第二预设标识时,所述中间设备向所述第二设备发送所述第三数据传输消息。
第一设备向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息后,中间设备可以接收第一设备发送的第三数据传输消息,并可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。接收到第三数据传输消息后,中间设备可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即当目标数据为不允许中间设备读取的数据时,可以将第三数据传输消息转发至第二设备,并不对第三数据进行任何处理。
这样,既可以在目标数据为允许中间设备读取的数据的情况下,使得中间设备能够正常工作,又可以在目标数据为不允许中间设备读取的数据的情况下,保证目标数据的安全性。
结合第二方面的第二种可能实现方式,在该第二方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第二方面,在该第二方面的第四种可能实现方式中,所述方法还包括:
所述中间设备接收所述第一设备发送的验证指示消息;
所述中间设备向所述第二设备发送携带有所述中间设备的设备信息的验证请求;
所述中间设备接收所述第二设备发送的用于指示所述中间设备合法的反馈消息,向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述中间设备与所述第一设备协商用于数据传输的所述第一加密密钥和所述第一解密密钥,并与所述第二设备协商用于数据传输的所述第二加密密钥和对应的第二解密密钥。
第一设备向中间设备发送验证指示消息后,中间设备可以接收第一设备发送的验证指示消息,针对验证指示消息中携带有中间设备的设备信息的情况,接收到验证指示消息后,中间设备可以对其进行解析,获取其中携带的中间设备的设备信息。
针对验证指示消息中携带有中间设备的设备信息的情况,中间设备接收到第一设备发送的验证指示消息后,可以获取验证指示消息中携带的中间设备的设备信息,并可以向第二设备发送携带有中间设备的设备信息的验证请求。针对验证指示消息中未携带有中间设备的设备信息的情况,即第一设备中未预先配置中间设备的设备信息的情况,中间设备接收到第一设备发送的验证指示消息后,可以获取本地中预先存储的中间设备的设备信息,并向第二设备发送携带有中间设备的设备信息的验证请求。此外,中间设备发送的验证请求可以采用明文的方式进行传输。第二设备接收到验证请求后,可以对中间设备的合法性进行验证,当中间设备合法时,第二设备可以向中间设备发送用于指示中间设备合法的反馈消息,进而,中间设备可以接收第二设备发送的用于指示所述中间设备合法的反馈消息,并可以向第一设备发送第二设备发送的用于指示中间设备合法的反馈消息,然后,中间设备可以与第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥。
这样,先验证中间设备的合法性,在中间设备合法的基础上再协商第一加密密钥和对应的第一解密密钥,从而,可以防止目标数据被恶意设备(即不合法的中间设备)读取,进而,可以保证目标数据的安全性。
第三方面,提供了一种传输数据的方法,所述方法包括:
第二设备接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
中间设备向第二设备发送携带有第二数据的第二数据传输消息后,第二设备可以接收中间设备发送的第二数据传输消息,并对其进行解析,获取其中携带的第二数据,其中,第二数据为经过中间设备数据处理的目标数据,再经过第二加密密钥加密的数据。第二设备中可以预先存储有第二设备与中间设备协商的解密密钥(即第二解密密钥),其中,第二解密密钥可以用于对中间设备发送的第二数据进行解密处理。第二设备接收到第二数据后,可以判断目标数据是否为允许中间设备读取的数据,即判断第二数据是否是中间设备对目标数据进行过预设的数据处理,并对其进行加密的数据,当第二设备确定目标数据为允许中间设备读取的数据时,可以基于第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据,其中,第二设备得到的数据可能与目标数据一致,也可能与目标数据不一致,是否相同取决于中间设备对目标数据的数据处理是否改变了目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第二解密算法),即,第二设备获取到第二数据后,可以基于第二设备与中间设备协商的第二解密密钥和第二解密算法,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
结合第三方面,在该第三方面的第一种可能实现方式中,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据,包括:
当所述第二设备确定所述第二数据传输消息中携带有所述第一预设标识时,所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
第二设备获取到第二数据传输消息后,可以判断第二数据传输消息中是否携带有第一预设标识,当确定第二数据传输消息中携带有第一预设标识时,即当确定第二数据传输消息中携带的第二数据是经过中间设备数据处理的目标数据再进行加密得到的数据时,可以基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
这样,可以在数据传输消息中携带相应的预设标识,从而,可以使得中间设备和第二设备方便获知第一设备发送的第一数据基于的加密密钥,从而,可以提高确定解密密钥的效率。
结合第三方面的第一种可能实现方式,在该第三方面的第二种可能实现方式中,所述方法还包括:
所述第二设备接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
当所述第二设备确定所述第三数据传输消息中携带有所述第二预设标识时,所述第二设备基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
中间设备向第二设备发送携带有第三数据和第二预设标识的第三数据传输消息后,第二设备可以接收中间设备发送的第三数据传输消息,并可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。第二设备中可以预先存储有第二设备与第一设备协商的解密密钥(即第三解密密钥),其中,第三解密密钥可以用于对第一设备通过中间设备发送的第三数据进行解密处理。接收到第三数据传输消息后,第二设备可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即确定第三数据传输消息中携带的第三数据是第一设备基于第三加密密钥对目标数据进行加密得到的数据,中间设备并没有对目标数据进行任何处理时,第二设备可以基于第二设备与第一设备协商的第三解密密钥,对第三数据进行解密处理,得到目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第三解密算法),即,当确定第三数据传输消息中携带有第二预设标识时,第二设备可以基于第二设备与第一设备协商的第三解密密钥和第三解密算法,对第三数据进行解密处理,得到目标数据。
这样,既可以在目标数据为允许中间设备读取的数据的情况下,使得中间设备能够正常工作,又可以在目标数据为不允许中间设备读取的数据的情况下,保证目标数据的安全性。
结合第三方面的第二种可能实现方式,在该第三方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第三方面,在该第三方面的第四种可能实现方式中,所述方法还包括:
所述第二设备接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求;
所述第二设备根据所述中间设备的设备信息,验证所述中间设备的合法性;
如果所述中间设备合法,则所述第二设备通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息,并与所述中间设备协商用于数据传输的所述第二解密密钥和对应的第二加密密钥。
中间设备向第二设备发送验证请求后,第二设备可以接收中间设备发送的验证请求,并可以对其进行解析,获取其中携带的中间设备的设备信息。
获取到中间设备的设备信息后,第二设备可以根据预设的处理策略,验证中间设备的合法性。具体的,获取到中间设备的设备信息后,即获取到中间设备的设备标识、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书后,其中,证书是由特定机构为中间设备颁发的,可以是基于私钥对中间设备的数据处理功能信息进行加密得到的,第二设备可以获取对应中间设备的公钥,并基于获取的公钥对证书进行解密,如果可以正确解密,且解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,则第二设备可以确定中间设备合法。另外,第二设备中还可以存储有该第二设备允许中间设备进行的操作,在上述判断的基础上,结合第二设备允许中间设备进行的操作,验证中间设备的合法性。
对中间设备的合法性进行验证后,如果中间设备合法,则第二设备可以通过中间设备向第一设备发送对应中间设备发送的验证请求的反馈消息,其中,该反馈消息可以用于指示中间设备合法。具体的,第二设备可以向中间设备发送对应中间设备发送的验证请求的反馈消息,其中,反馈消息中可以携带有合法的中间设备的设备标识。另外,第二设备可以对反馈消息做完整性保护处理。第二设备还可以与中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥。
这样,先验证中间设备的合法性,在中间设备合法的基础上再协商第一加密密钥和对应的第一解密密钥,从而,可以防止目标数据被恶意设备(即不合法的中间设备)读取,进而,可以保证目标数据的安全性。
第四方面,提供了一种第一设备,所述第一设备包括处理器、发射器,其中:
所述处理器,用于获取待传输至第二设备的目标数据;如果所述目标数据为允许中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
所述发射器,用于向所述中间设备发送携带有所述第一数据的第一数据传输消息。
结合第四方面,在该第四方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
结合第四方面的第一种可能实现方式,在该第四方面的第二种可能实现方式中,所述处理器,还用于:
如果所述目标数据为不允许所述中间设备读取的数据,则基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述发射器,还用于:
向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
结合第四方面的第二种可能实现方式,在该第四方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第四方面,在该第四方面的第四种可能实现方式中,所述发射器,还用于:
向所述中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
所述第一设备还包括:
接收器,用于接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;
所述处理器,还用于:
与所述中间设备协商用于数据传输的所述第一加密密钥和对应的第一解密密钥。
第五方面,提供了一种中间设备,所述中间设备包括接收器、处理器、发射器,其中:
所述接收器,用于接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
所述处理器,用于基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
所述发射器,用于向所述第二设备发送携带有所述第二数据的第二数据传输消息。
结合第五方面,在该第五方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述处理器,具体用于:
当所述处理器确定所述第一数据传输消息中携带有所述第一预设标识时,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述发射器,具体用于:
向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
结合第五方面的第一种可能实现方式,在该第五方面的第二种可能实现方式中,所述接收器,还用于:
接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述发射器,还用于:
当所述处理器确定所述第三数据传输消息中携带有所述第二预设标识时,向所述第二设备发送所述第三数据传输消息。
结合第五方面的第二种可能实现方式,在该第五方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第五方面,在该第五方面的第四种可能实现方式中,所述接收器,还用于:
接收所述第一设备发送的验证指示消息;
所述发射器,还用于:
向所述第二设备发送携带有所述中间设备的设备信息的验证请求;
所述接收器,还用于:
接收所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述发射器,还用于:
向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述处理器,还用于:
与所述第一设备协商用于数据传输的所述第一加密密钥和所述第一解密密钥,并与所述第二设备协商用于数据传输的所述第二加密密钥和对应的第二解密密钥。
第六方面,提供了一种第二设备,所述第二设备包括接收器、处理器,其中:
所述接收器,用于接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
所述处理器,用于基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
结合第六方面,在该第六方面的第一种可能实现方式中,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述处理器,具体用于:
当所述处理器确定所述第二数据传输消息中携带有所述第一预设标识时,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
结合第六方面的第一种可能实现方式,在该第六方面的第二种可能实现方式中,所述接收器,还用于:
接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述处理器,还用于:
当所述处理器确定所述第三数据传输消息中携带有所述第二预设标识时,基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
结合第六方面的第二种可能实现方式,在该第六方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第六方面,在该第六方面的第四种可能实现方式中,所述接收器,还用于:
接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求;
所述处理器,还用于:
根据所述中间设备的设备信息,验证所述中间设备的合法性;
所述第二设备还包括:
发射器,用于如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息;
所述处理器,还用于:
与所述中间设备协商用于数据传输的所述第二解密密钥和对应的第二加密密钥。
第七方面,提供了一种第一设备,所述第一设备包括:
获取模块,具体可由处理器实现,用于获取待传输至第二设备的目标数据;
加密模块,具体可由处理器实现,用于如果所述目标数据为允许中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
发送模块,具体可由发射器实现,用于向所述中间设备发送携带有所述第一数据的第一数据传输消息。
结合第七方面,在该第七方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
结合第七方面的第一种可能实现方式,在该第七方面的第二种可能实现方式中,所述加密模块,还用于:
如果所述目标数据为不允许所述中间设备读取的数据,则基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述发送模块,还用于:
向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
结合第七方面的第二种可能实现方式,在该第七方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第七方面,在该第七方面的第四种可能实现方式中,所述发送模块,还用于:
向所述中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
所述第一设备还包括:
接收模块,用于接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;
协商模块,用于与所述中间设备协商用于数据传输的所述第一加密密钥和对应的第一解密密钥。
第八方面,提供了一种中间设备,所述中间设备包括:
接收模块,具体可由接收器实现,用于接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
解密模块,具体可由处理器实现,用于基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
加密模块,具体可由处理器实现,用于基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
发送模块,具体可由发射器实现,用于向所述第二设备发送携带有所述第二数据的第二数据传输消息。
结合第八方面,在该第八方面的第一种可能实现方式中,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块,具体用于:
当确定所述第一数据传输消息中携带有所述第一预设标识时,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述发送模块,具体用于:
向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
结合第八方面的第一种可能实现方式,在该第八方面的第二种可能实现方式中,所述接收模块,还用于:
接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述发送模块,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,向所述第二设备发送所述第三数据传输消息。
结合第八方面的第二种可能实现方式,在该第八方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第八方面,在该第八方面的第四种可能实现方式中,所述接收模块,还用于:
接收所述第一设备发送的验证指示消息;
所述发送模块,还用于:
向所述第二设备发送携带有所述中间设备的设备信息的验证请求;
所述接收模块,还用于:
接收所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述发送模块,还用于:
向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述中间设备还包括:
协商模块,用于与所述第一设备协商用于数据传输的所述第一加密密钥和所述第一解密密钥,并与所述第二设备协商用于数据传输的所述第二加密密钥和对应的第二解密密钥。
第九方面,提供了一种第二设备,所述第二设备包括:
接收模块,具体可由接收器实现,用于接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
解密模块,具体可由处理器实现,用于基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
结合第九方面,在该第九方面的第一种可能实现方式中,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块,具体用于:
当确定所述第二数据传输消息中携带有所述第一预设标识时,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
结合第九方面的第一种可能实现方式,在该第九方面的第二种可能实现方式中,所述接收模块,还用于:
接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述解密模块,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
结合第九方面的第二种可能实现方式,在该第九方面的第三种可能实现方式中,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
结合第九方面,在该第九方面的第四种可能实现方式中,所述接收模块,还用于:
接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求;
所述第二设备还包括:
验证模块,用于根据所述中间设备的设备信息,验证所述中间设备的合法性;
发送模块,用于如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息;
协商模块,用于与所述中间设备协商用于数据传输的所述第二解密密钥和对应的第二加密密钥。
第十方面,提供了一种传输数据的系统,所述系统包括第一设备、中间设备和第二设备,其中:
所述第一设备,用于获取待传输至所述第二设备的目标数据,如果所述目标数据为允许所述中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据,向所述中间设备发送携带有所述第一数据的第一数据传输消息;
所述中间设备,用于接收所述第一设备发送的携带有所述第一数据的第一数据传输消息,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理,基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据,向所述第二设备发送携带有所述第二数据的第二数据传输消息;
所述第二设备,用于接收所述中间设备发送的携带有所述第二数据的第二数据传输消息,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,第一设备发送至第二设备目标数据需要进行加密时,第一设备可以采用第一设备与中间设备协商的第一加密密钥对目标数据进行加密处理,然后将其发送至中间设备,中间设备接收到第一设备发送的经过第一加密密钥加密的目标数据后,可以采用中间设备与第一设备协商的第一解密密钥对其进行解密,得到目标数据,并对目标数据进行预设的数据处理,进而,可以采用中间设备与第二设备协商的第二加密密钥对经过数据处理的目标数据进行加密,并将其发送至第二设备,第二设备接收到中间设备发送的数据后,可以采用第二设备与中间设备协商的第二解密密钥进行解密处理,得到经过中间设备数据处理的目标设备。这样,中间设备可以基于预先与第一设备协商的解密密钥对第一设备发送的数据进行解密,可以读取第一设备将要发送至第二设备的数据,进而,可以对目标数据进行预设的数据处理,从而,可以使得中间设备能够正常工作。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种系统框架示意图;
图2是本发明实施例提供的一种第一设备的结构示意图;
图3是本发明实施例提供的一种中间设备的结构示意图;
图4是本发明实施例提供的一种第二设备的结构示意图;
图5是本发明实施例提供的一种传输数据的方法的流程图;
图6是本发明实施例提供的一种协商密钥的方法的流程图;
图7是本发明实施例提供的一种传输数据的方法的流程图;
图8是本发明实施例提供的一种第一设备结构示意图;
图9是本发明实施例提供的一种第一设备结构示意图;
图10是本发明实施例提供的一种中间设备结构示意图;
图11是本发明实施例提供的一种中间设备结构示意图;
图12是本发明实施例提供的一种第二设备结构示意图;
图13是本发明实施例提供的一种第二设备结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种传输数据的方法,该方法可以由第一设备、中间设备和第二设备共同实现。第一设备和第二设备可以分别是终端和服务器中的任意一者,其中,终端可以是手机、平板电脑等移动终端,也可以是PC(Personal Computer,个人电脑),服务器可以是与终端进行通信的服务器,可以是某服务的后台服务器,比如可以是网站服务器,当第一设备是终端时,第二设备是服务器,此种情况下,下述处理过程即是终端向服务器发送目标数据的过程,当第一设备是服务器时,第二设备是终端,此种情况下,下述处理过程即是服务器向终端发送目标数据的过程。中间设备可以是第一设备与第二设备传输数据的传输路径中的设备,其中,中间设备具有预设的数据处理功能,可以对第一设备与第二设备传输的数据进行预设的数据处理。
第一设备获取到待传输至第二设备的目标数据后,可以基于第一设备与中间设备协商的第一加密密钥,对目标数据进行加密,得到第一数据,向中间设备发送携带有第一数据的第一数据传输消息,中间设备接收第一设备发送的携带有第一数据的第一数据传输消息后,可以基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密,得到目标数据,进而,可以对目标数据进行预设的数据处理,并基于中间设备与第二设备协商的第二加密密钥,对经过中间设备数据处理的目标数据进行加密,得到第二数据,向第二设备发送携带有第二数据的第二数据传输消息,第二设备接收到第二数据传输消息后,可以基于中间设备与第二设备协商的第二解密密钥,对第二数据进行解密,得到经过中间设备数据处理的目标数据,系统示意图如图1所示。另外,第二设备也可以向第一设备发送目标数据,其处理过程与第一设备向第二设备发送目标数据的处理过程相同,本发明实施例以第一设备向第二设备发送目标数据为例进行表述,其他情况与之类似,不再进行阐述。
第一设备可以包括处理器210、发射器220、接收器230,接收器230和发射器220可以分别与处理器210连接,如图2所示。接收器230可以用于接收消息或数据,接收器230可以包括但不限于至少一个放大器、调谐器、一个或多个振荡器、耦合器、LNA(Low NoiseAmplifier,低噪声放大器)、双工器等,发射器220可以用于发送消息或数据,即可以发送携带有第一数据的第一数据传输消息。处理器210可以是第一设备的控制中心,利用各种接口和线路连接整个第一设备的各个部分,如接收器230和发射器220等。在本发明中,处理器210可以用于对目标数据进行加密处理,可选的,处理器210可以包括一个或多个处理单元;优选的,处理器210可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统,调制解调处理器主要处理无线通信。处理器210还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件等。第一设备还可以包括存储器,存储器可用于存储软件程序以及模块,处理器210通过读取存储在存储器的软件代码以及模块,从而执行第一设备的各种功能应用以及数据处理。
中间设备可以包括接收器310、处理器320、发射器330,发射器330和接收器310可以分别与处理器320连接,如图3所示。发射器330可以用于发送消息或数据,本发明中,发射器330可以用于发送携带有第二数据的第二数据传输消息,发射器330可以包括但不限于至少一个放大器、调谐器、一个或多个振荡器、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等,与发射器330的结构类似,接收器310也可以包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等,可以用于接收数据或消息,本发明中,接收器310可以用于接收第一设备发送的携带有第一数据的第一数据传输消息。处理器320可以包括一个或多个处理单元;处理器320可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件等。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。中间设备还可以包括存储器,存储器可用于存储软件程序以及模块,处理器320通过读取存储在存储器的软件代码以及模块,从而执行中间设备的各种功能应用以及数据处理。
第二设备可以包括接收器410、处理器420、发射器430,发射器430和接收器410可以分别与处理器420连接,如图4所示。发射器430可以用于发送消息或数据,发射器430可以包括但不限于至少一个放大器、调谐器、一个或多个振荡器、耦合器、LNA(Low NoiseAmplifier,低噪声放大器)、双工器等,与发射器430的结构类似,接收器410也可以包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、耦合器、LNA(Low NoiseAmplifier,低噪声放大器)、双工器等,可以用于接收数据或消息,本发明中,接收器410可以用于接收中间设备发送的携带有第二数据的第二数据传输消息。处理器420可以包括一个或多个处理单元;处理器420可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件等。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。第二设备还可以包括存储器,存储器可用于存储软件程序以及模块,处理器420通过读取存储在存储器的软件代码以及模块,从而执行第二间设备的各种功能应用以及数据处理。
下面将结合具体实施方式,对图5所示的处理流程进行详细的说明,内容可以如下:
步骤501,第一设备获取待传输至第二设备的目标数据。
其中,第一设备和第二设备可以是终端和服务器中的任意一个,第一设备可以是终端,第二设备可以是服务器,目标数据可以是第一设备待传输的业务数据。
在实施中,为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,可以获取待传输的目标数据。
步骤502,如果目标数据为允许中间设备读取的数据,则第一设备基于第一设备与中间设备协商的第一加密密钥,对目标数据进行加密处理,得到第一数据。
其中,中间设备可以是具有预设数据处理功能的设备,可以是第一设备与第二设备传输数据时的传输路径中的设备。
在实施中,第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与中间设备协商的加密密钥(即第一加密密钥),其中,第一加密密钥可以用于对目标数据进行加密处理。
第一设备获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为允许中间设备读取的数据,则第一设备可以基于预先存储的第一加密密钥,对目标数据进行加密处理,得到第一数据,其中,第一设备中还可以预先存储有加密算法(可以称为第一加密算法),即,第一设备可以基于第一设备与中间设备协商的第一加密密钥和第一加密算法,对目标数据进行加密处理,得到第一数据。
步骤503,第一设备向中间设备发送携带有第一数据的第一数据传输消息。
在实施中,第一设备得到第一数据后,可以向中间设备发送数据传输消息(即第一数据传输消息),其中,第一数据传输消息中还可以携带有第一数据。
可选的,第一数据传输消息中还携带有第一预设标识,其中,第一预设标识用于指示允许中间设备读取目标数据。
在实施中,当第一设备确定出目标数据为允许中间设备读取的数据时,第一设备发送至中间设备的第一数据传输消息中,还可以携带有用于指示允许中间设备读取目标数据的预设标识(即第一预设标识),例如,第一数据传输消息中可以携带有A标识,即第一数据传输消息中携带有A标识时,说明第一设备待传输的目标数据为允许中间设备读取的数据。另外,第一预设标识可以做完整性保护,不进行加密处理。
可选的,第一预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第一预设标识设置于传输层控制TLS包头中;或者,第一预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第一预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
相应的,中间设备接收第一设备发送的携带有第一数据的第一数据传输消息,其中,第一数据为经过第一加密密钥加密的目标数据。
在实施中,第一设备向中间设备发送第一数据传输消息后,中间设备可以接收第一设备发送的第一数据传输消息,可以对其进行解析,获取其中携带的第一数据,其中,第一数据为经过第一加密密钥加密的目标数据。
可选的,针对第一设备发送的第一数据传输消息中携带有第一预设标识的情况,中间设备接收到的第一数据传输消息中还可以携带有第一预设标识,第一预设标识用于指示允许中间设备读取目标数据。另外,第一设备可以对第一预设标识做完整性保护处理,不进行加密处理,即中间设备可以读取该第一预设标识,不能对其进行更改。
可选的,第一预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第一预设标识设置于传输层控制TLS包头中;或者,第一预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第一预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
步骤504,中间设备基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。
在实施中,中间设备中可以预先存储有中间设备与第一设备协商的解密密钥(即第一解密密钥),其中,第一解密密钥可以用于对第一设备发送的第一数据进行解密处理。中间设备获取到第一数据后,可以判断目标数据是否为允许中间设备读取的数据,当目标数据为允许中间设备读取的数据时,中间设备可以基于预先存储的中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,其中,中间设备中还可以预先存储有解密算法(可以称为第一解密算法),即,中间设备可以基于第一设备与中间设备协商的第一解密密钥和第一解密算法,对第一数据进行解密处理,得到目标数据。
中间设备得到目标数据后,可以按照自身具有的数据处理功能,对得到的目标数据进行预设的数据处理,具体的,中间设备可以具有预设的数据处理功能,其中,预设的数据处理功能可以是统计数据功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,以便于进行统计,不改变目标数据,预设的数据处理功能也可以是视频优化功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,并基于预设的数据处理功能对目标数据进行改变,例如,第一设备为服务器,视频优化功能是将高清视频数据改变为标清视频数据,此种情况下,中间设备可以读取服务器发送至终端的高清视频数据(即目标数据),进而,可以将目标数据改变为标清视频数据。也就是说,中间设备对目标数据进行预设的数据处理后,得到的数据可能与目标数据相同,也可能不同。
可选的,针对第一数据传输消息中还携带有第一预设标识的情况,步骤504的处理过程可以如下:当中间设备确定第一数据传输消息中携带有第一预设标识时,中间设备基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。
在实施中,中间设备获取到第一数据传输消息后,可以判断第一数据传输消息中是否携带有第一预设标识,当中间设备确定第一数据传输消息中携带有第一预设标识时,可以按照上述步骤504表述的处理过程对第一数据进行处理,即基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。
步骤505,中间设备基于中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据。
在实施中,中间设备中可以预先存储有中间设备与第二设备协商的加密密钥(即第二加密密钥),其中,第二加密密钥可以用于对经过数据处理的目标数据进行加密处理。中间设备对目标数据进行预设的数据处理后,可以获取预先存储的第二加密密钥,并基于第二加密密钥对经过数据处理的目标数据进行加密处理,得到第二数据,其中,中间设备中还可以预先存储有加密算法(可以称为第二加密算法),即,中间设备可以基于中间设备与第二设备协商的第二加密密钥和第二加密算法,对经过数据处理的目标数据进行加密处理,得到第二数据。
步骤506,中间设备向第二设备发送携带有第二数据的第二数据传输消息。
在实施中,中间设备得到第二数据后,可以向第二设备发送数据传输消息(即第二数据传输消息),其中,第二数据传输消息中可以携带有第二数据。
可选的,针对第一数据传输消息中携带有第一预设标识的情况,步骤507的处理过程可以如下:中间设备向第二设备发送携带有第二数据和第一预设标识的第二数据传输消息。
在实施中,当第一数据传输消息中携带有第一预设标识时,中间设备发送至第二设备的第二数据传输消息中还可以携带有第一预设标识,即第二数据传输消息中携带有第二数据和第一预设标识。
相应的,第二设备接收中间设备发送的携带有第二数据的第二数据传输消息,其中,第二数据为经过中间设备数据处理的目标数据再进行加密得到的数据。
在实施中,中间设备向第二设备发送携带有第二数据的第二数据传输消息后,第二设备可以接收中间设备发送的第二数据传输消息,并对其进行解析,获取其中携带的第二数据,其中,第二数据为经过中间设备数据处理的目标数据,再经过第二加密密钥加密的数据。
可选的,针对中间设备发送的第二数据传输消息中携带有第一预设标识的情况,第二设备接收到的第二数据传输消息中还可以携带有第一预设标识,其中,第一预设标识用于指示允许中间设备读取目标数据。
可选的,第一预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第一预设标识设置于传输层控制TLS包头中;或者,第一预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第一预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
步骤507,第二设备基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
在实施中,第二设备中可以预先存储有第二设备与中间设备协商的解密密钥(即第二解密密钥),其中,第二解密密钥可以用于对中间设备发送的第二数据进行解密处理。第二设备接收到第二数据后,可以判断目标数据是否为允许中间设备读取的数据,即判断第二数据是否是中间设备对目标数据进行过预设的数据处理,并对其进行加密的数据,当第二设备确定目标数据为允许中间设备读取的数据时,可以基于第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据,其中,第二设备得到的数据可能与目标数据一致,也可能与目标数据不一致,是否相同取决于中间设备对目标数据的数据处理是否改变了目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第二解密算法),即,第二设备获取到第二数据后,可以基于第二设备与中间设备协商的第二解密密钥和第二解密算法,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
可选的,针对第二数据传输消息中还携带有第一预设标识的情况,相应的,步骤507的处理过程可以如下:当第二设备确定第二数据传输消息中携带有第一预设标识时,第二设备基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
在实施中,第二设备获取到第二数据传输消息后,可以判断第二数据传输消息中是否携带有第一预设标识,当第二设备确定第二数据传输消息中携带有第一预设标识时,即当确定第二数据传输消息中携带的第二数据是经过中间设备数据处理的目标数据再进行加密得到的数据时,可以按照上述步骤507表述的处理过程对第二数据进行处理,即基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
第一设备、中间设备和第二设备可以在目标数据传输前,协商上述密钥,本发明实施例中,还提供了一种协商密钥的方法,如图6所示,第一设备、中间设备和第二设备可以应用该方法协商上述讲述的加密密钥和解密密钥。
下面将结合具体实施方式,对图6所示的处理流程进行详细的说明,内容可以如下:
步骤601,第一设备向中间设备发送验证指示消息,其中,验证指示消息用于指示中间设备向第二设备发送用于验证中间设备合法性的验证请求。
在实施中,第一设备与第二设备传输数据时,可以基于TLS协议传输数据,也可以基于QUIC协议传输数据。当基于TLS协议传输数据时,第一设备与第二设备在传输数据前,可以先建立TCP(Transmission Control Protocol,传输控制协议)连接,即第一设备与第二设备进行TCP三次握手,然后,建立TLS连接,其中,建立TLS连接的过程即是第一设备与第二设备协商密钥的过程,即协商下述处理过程中涉及的用于数据传输的第三加密密钥和对应的第三解密密钥。当基于QUIC协议传输数据时,第一设备与第二设备在传输数据前,可以先建立QUIC连接。
第一设备与第二设备传输目标数据时,第一设备可以向中间设备发送验证指示消息,其中,该验证指示消息可以用于指示中间设备向第二设备发送用于验证中间设备合法性的验证请求,其中,对于上述提及的两种情况,针对基于TLS协议传输目标数据的情况,该验证指示消息可以在TLS建立的过程中发送,也可以在TLS连接建立后,针对基于QUIC协议传输目标数据的情况,该验证指示消息可以在QUIC连接的建立过程中,也可以在QUIC连接建立后,本发明实施例不对其进行限定。另外,第一设备中可以预先设置有中间设备的设备信息,其中,中间设备的设备信息可以是中间设备的设备标识(可以是中间设备的设备名称,也可以是中间设备的MAC地址,也可以是中间设备的IP(Internet Protocol,网络协议)地址)、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书,此种情况下,验证指示消息中可以携带有中间设备的设备信息。第一设备中也可以不预先配置有中间设备的设备信息,本发明实施例不对其进行限定。此外,第一设备发送的验证指示消息可以采用明文的方式进行传输。
相应的,中间设备接收第一设备发送的验证指示消息。
在实施中,第一设备向中间设备发送验证指示消息后,中间设备可以接收第一设备发送的验证指示消息,针对验证指示消息中携带有中间设备的设备信息的情况,中间设备接收到验证指示消息后,可以对其进行解析,获取其中携带的中间设备的设备信息。
步骤602,中间设备向第二设备发送携带有中间设备的设备信息的验证请求。
在实施中,针对验证指示消息中携带有中间设备的设备信息的情况,中间设备接收到第一设备发送的验证指示消息后,可以获取验证指示消息中携带的中间设备的设备信息,并向第二设备发送携带有中间设备的设备信息的验证请求。针对验证指示消息中未携带有中间设备的设备信息的情况,即第一设备中未预先配置中间设备的设备信息的情况,中间设备接收到第一设备发送的验证指示消息后,可以获取本地中预先存储的中间设备的设备信息,并向第二设备发送携带有中间设备的设备信息的验证请求。此外,中间设备发送的验证请求可以采用明文的方式进行传输。
相应的,第二设备接收中间设备发送的携带有中间设备的设备信息的验证请求。
在实施中,中间设备向第二设备发送验证请求后,第二设备可以接收中间设备发送的验证请求,并对其进行解析,获取其中携带的中间设备的设备信息。
步骤603,第二设备根据中间设备的设备信息,验证中间设备的合法性。
在实施中,第二设备获取到中间设备的设备信息后,可以根据预设的处理策略,验证中间设备的合法性。具体的,第二设备获取到中间设备的设备信息后,即获取到中间设备的设备标识、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书后,其中,证书是由特定机构为中间设备颁发的,可以是由特定机构基于私钥对中间设备的数据处理功能信息进行加密得到的,第二设备可以获取对应中间设备的公钥,并基于获取的公钥对证书进行解密,如果可以正确解密,且解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,则第二设备可以确定中间设备合法。另外,第二设备中还可以存储有该第二设备允许中间设备进行的操作,在上述判断的基础上,结合第二设备允许中间设备进行的操作,验证中间设备的合法性,例如,中间设备的数据处理功能为视频优化,如果第二设备中预先存储有允许具有视频优化功能的中间设备对传输的数据进行数据处理,则在解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同的基础上,第二设备可以确定中间设备合法,如果第二设备中预先存储有不允许具有视频优化功能的中间设备对传输的数据进行数据处理,则即使解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,第二设备也确定中间设备不合法。
步骤604,如果中间设备合法,则第二设备通过中间设备向第一设备发送用于指示中间设备合法的反馈消息。
在实施中,第二设备对中间设备的合法性进行验证后,如果中间设备合法,则第二设备可以通过中间设备向第一设备发送对应中间设备发送的验证请求的反馈消息,其中,该反馈消息可以用于指示中间设备合法。具体的,第二设备可以向中间设备发送对应中间设备发送的验证请求的反馈消息,其中,反馈消息中可以携带有合法的中间设备的设备标识。另外,第二设备可以对反馈消息做完整性保护处理。
步骤605,中间设备接收第二设备发送的用于指示中间设备合法的反馈消息,向第一设备发送第二设备发送的用于指示中间设备合法的反馈消息。
在实施中,第二设备向中间设备发送反馈消息后,中间设备可以接收第二设备发送的反馈消息,其中,还反馈消息可以用于指示中间设备合法,进而,可以向第一设备发送第二设备发送的用于指示中间设备合法的反馈消息。
相应的,第一设备接收中间设备发送的用于指示中间设备合法的反馈消息。
在实施中,中间设备向第一设备发送用于指示中间设备合法的反馈消息后,第一设备可以接收该反馈消息。
另外,第一设备接收到反馈消息后,可以通过中间设备向第二设备发送对应反馈消息的确认消息,以便通知第二设备第一设备已接收到用于指示中间设备合法的反馈消息。
步骤606,中间设备与第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥。
在实施中,如果中间设备合法,则第一设备、中间设备和第二设备可以协商上述提及的加密密钥和解密密钥,即在中间设备合法的基础上,第一设备、中间设备和第二设备可以协商上述提及的加密密钥和解密密钥。具体的,中间设备可以与第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥,其中,中间设备与第一设备协商用于数据传输的第一加密密钥和对应的第一解密密钥时,可以由第一设备发起,也可以由中间设备发起,中间设备与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥时,可以由第二设备发起,也可以由中间设备发起,本发明实施例不对其进行限定。另外,中间设备还可以与第一设备协商第一加密算法和第一解密算法,并与第二设备协商第二加密算法和对应的第二解密算法。此外,在验证中间设备合法的基础上,第一设备、中间设备和第二设备还可以协商第二设备通过中间设备向第一设备发送数据时,需要的加密密钥和解密密钥。
另外,第一加密密钥、第二加密密钥可以相同,也可以不同,第一解密密钥、第二解密密钥可以相同,也可以不同。本发明实施例不对其进行限定。
本发明实施例中,针对目标数据为不允许中间设备读取的数据的情况,还提供了一种传输数据的方法,如图7所示。
下面将结合具体实施方式,对图7所示的处理流程进行详细的说明,内容可以如下:
步骤701,第一设备获取待传输至第二设备的目标数据。
在实施中,为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,可以获取待传输的目标数据。
步骤702,如果目标数据为不允许中间设备读取的数据,则第一设备基于第一设备与第二设备协商的第三加密密钥,对目标数据进行加密处理,得到第三数据。
在实施中,第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与第二设备协商的加密密钥(即第三加密密钥),其中,第三加密密钥可以用于对目标数据进行加密处理。
第一设备获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为不允许中间设备读取的数据,则第一设备可以基于预先存储的第三加密密钥,对目标数据进行加密处理,得到第三数据,其中,第一设备中还可以预先存储有加密算法(可以称为第三加密算法),即,第一设备可以基于第一设备与第二设备协商的第三加密密钥和第三加密算法,对目标数据进行加密处理,得到第三数据。
步骤703,第一设备向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识用于指示不允许中间设备读取目标数据。
在实施中,针对如果目标数据为允许中间设备读取的数据,则第一数据传输消息中携带有第一预设标识的情况,当第一设备确定出目标数据为不允许中间设备读取的数据时,可以向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识可以用于指示不允许中间设备读取目标数据。另外,第一设备可以对第二预设标识进行完整性保护处理。
可选的,第二预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第二预设标识设置于传输层控制TLS包头中;或者,第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第二预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
相应的,中间设备接收第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识用于指示不允许中间设备读取目标数据,第三数据为经过第三加密密钥加密的目标数据。
在实施中,第一设备向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息后,中间设备可以接收第一设备发送的第三数据传输消息,并对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。
步骤704,当中间设备确定第三数据传输消息中携带有第二预设标识时,中间设备向第二设备发送第三数据传输消息。
在实施中,中间设备接收到第三数据传输消息后,可以判断第三数据传输消息中是否携带有第二预设标识,当中间设备确定第三数据传输消息中携带有第二预设标识时,即当目标数据为不允许中间设备读取的数据时,中间设备可以将第三数据传输消息转发至第二设备,并不对第三数据进行任何处理。
可选的,第二预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第二预设标识设置于传输层控制TLS包头中;或者,第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第二预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
相应的,第二设备接收中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识用于指示不允许中间设备读取目标数据,第三数据为经过第三加密密钥加密的目标数据。
在实施中,中间设备向第二设备发送携带有第三数据和第二预设标识的第三数据传输消息后,第二设备可以接收中间设备发送的第三数据传输消息,并对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。
可选的,第二预设标识可以设置在TLS包头中或者QUIC包头中,具体的,第二预设标识设置于传输层控制TLS包头中;或者,第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第二预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
步骤705,当第二设备确定第三数据传输消息中携带有第二预设标识时,第二设备基于第二设备与第一设备协商的第三解密密钥,对第三数据进行解密处理,得到目标数据。
在实施中,第二设备中可以预先存储有第二设备与第一设备协商的解密密钥(即第三解密密钥),其中,第三解密密钥可以用于对第一设备通过中间设备发送的第三数据进行解密处理。第二设备接收到第三数据传输消息后,可以判断第三数据传输消息中是否携带有第二预设标识,当第二设备确定第三数据传输消息中携带有第二预设标识时,即确定第三数据传输消息中携带的第三数据是第一设备基于第三加密密钥对目标数据进行加密得到的数据,中间设备并没有对目标数据进行任何处理时,第二设备可以基于第二设备与第一设备协商的第三解密密钥,对第三数据进行解密处理,得到目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第三解密算法),即,当第二设备确定第三数据传输消息中携带有第二预设标识时,第二设备可以基于第二设备与第一设备协商的第三解密密钥和第三解密算法,对第三数据进行解密处理,得到目标数据。
本发明实施例中,第一设备发送至第二设备目标数据需要进行加密时,第一设备可以采用第一设备与中间设备协商的第一加密密钥对目标数据进行加密处理,然后将其发送至中间设备,中间设备接收到第一设备发送的经过第一加密密钥加密的目标数据后,可以采用中间设备与第一设备协商的第一解密密钥对其进行解密,得到目标数据,并对目标数据进行预设的数据处理,进而,可以采用中间设备与第二设备协商的第二加密密钥对经过数据处理的目标数据进行加密,并将其发送至第二设备,第二设备接收到中间设备发送的数据后,可以采用第二设备与中间设备协商的第二解密密钥进行解密处理,得到经过中间设备数据处理的目标设备。这样,中间设备可以基于预先与第一设备协商的解密密钥对第一设备发送的数据进行解密,可以读取第一设备将要发送至第二设备的数据,进而,可以对目标数据进行预设的数据处理,从而,可以使得中间设备能够正常工作。
基于相同的构思,本发明实施例还提供了一种第一设备,如图2所示,本实施例提供的第一设备可以实现本发明图5、图6和图7所示实施例的流程,该第一设备包括处理器210、发射器220,其中:
所述处理器210,用于获取待传输至第二设备的目标数据;如果所述目标数据为允许中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
所述发射器220,用于向所述中间设备发送携带有所述第一数据的第一数据传输消息。
其中,第一设备和第二设备可以是终端和服务器中的任意一个,第一设备可以是终端,第二设备可以是服务器,目标数据可以是第一设备待传输的业务数据。中间设备可以是具有预设数据处理功能的设备,可以是第一设备与第二设备传输数据时的传输路径中的设备。
在实施中,为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,处理器210可以获取待传输的目标数据。
第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与中间设备协商的加密密钥(即第一加密密钥),其中,第一加密密钥可以用于对目标数据进行加密处理。
处理器210获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为允许中间设备读取的数据,则处理器210可以基于预先存储的第一加密密钥,对目标数据进行加密处理,得到第一数据,其中,第一设备中还可以预先存储有加密算法(可以称为第一加密算法),即,处理器210可以基于第一设备与中间设备协商的第一加密密钥和第一加密算法,对目标数据进行加密处理,得到第一数据。
处理器210得到第一数据后,发射器220可以向中间设备发送数据传输消息(即第一数据传输消息),其中,第一数据传输消息中还可以携带有第一数据。
可选的,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
在实施中,当确定出目标数据为允许中间设备读取的数据时,发射器220发送至中间设备的第一数据传输消息中,还可以携带有用于指示允许中间设备读取目标数据的预设标识(即第一预设标识),例如,第一数据传输消息中可以携带有A标识,即第一数据传输消息中携带有A标识时,说明第一设备待传输的目标数据为允许中间设备读取的数据。另外,第一预设标识可以做完整性保护,不进行加密处理。
可选的,所述处理器210,还用于:
如果所述目标数据为不允许所述中间设备读取的数据,则基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述发射器220,还用于:
向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
在实施中,第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与第二设备协商的加密密钥(即第三加密密钥),其中,第三加密密钥可以用于对目标数据进行加密处理。
处理器210获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为不允许中间设备读取的数据,则处理器210可以基于预先存储的第三加密密钥,对目标数据进行加密处理,得到第三数据,其中,第一设备中还可以预先存储有加密算法(可以称为第三加密算法),即,处理器210可以基于第一设备与第二设备协商的第三加密密钥和第三加密算法,对目标数据进行加密处理,得到第三数据。
针对如果目标数据为允许中间设备读取的数据,则第一数据传输消息中携带有第一预设标识的情况,当处理器210确定出目标数据为不允许中间设备读取的数据时,发射器220可以向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识可以用于指示不允许中间设备读取目标数据。另外,第一设备可以对第二预设标识进行完整性保护处理。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
在实施中,第一设备与第二设备传输目标数据时,可以基于TLS协议传输目标数据,也可以基于QUIC协议传输目标数据,分别针对不同的情况,第一预设标识或第二预设标识可以设置在TLS包头中,或者,设置在QUIC包头中。
可选的,所述发射器220,还用于:
向所述中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
所述第一设备还包括:
接收器230,用于接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;
所述处理器210,还用于:
与所述中间设备协商用于数据传输的所述第一加密密钥和对应的第一解密密钥。
在实施中,第一设备与第二设备传输数据时,可以基于TLS协议传输数据,也可以基于QUIC协议传输数据。当基于TLS协议传输数据时,第一设备与第二设备在传输数据前,可以先建立TCP(Transmission Control Protocol,传输控制协议)连接,即第一设备与第二设备进行TCP三次握手,然后,建立TLS连接,其中,建立TLS连接的过程即是第一设备与第二设备协商密钥的过程,即协商下述处理过程中涉及的用于数据传输的第三加密密钥和对应的第三解密密钥。当基于QUIC协议传输数据时,第一设备与第二设备在传输数据前,可以先建立QUIC连接。
第一设备与第二设备传输目标数据时,发射器220可以向中间设备发送验证指示消息,其中,该验证指示消息可以用于指示中间设备向第二设备发送用于验证中间设备合法性的验证请求,其中,对于上述提及的两种情况,针对基于TLS协议传输目标数据的情况,该验证指示消息可以在TLS建立的过程中发送,也可以在TLS连接建立后,针对基于QUIC协议传输目标数据的情况,该验证指示消息可以在QUIC连接的建立过程中,也可以在QUIC连接建立后,本发明实施例不对其进行限定。另外,第一设备中可以预先设置有中间设备的设备信息,其中,中间设备的设备信息可以是中间设备的设备标识(可以是中间设备的设备名称,也可以是中间设备的MAC地址,也可以是中间设备的IP(Internet Protocol,网络协议)地址)、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书,此种情况下,验证指示消息中可以携带有中间设备的设备信息。第一设备中也可以不预先配置有中间设备的设备信息,本发明实施例不对其进行限定。此外,第一设备发送的验证指示消息可以采用明文的方式进行传输。
发射器220向中间设备发送验证指示消息后,中间设备可以向第二设备发送用于验证中间设备合法性的验证请求,第二设备验证中间设备合法后,可以通过中间设备向第一设备发送用于指示中间设备合法的反馈消息,接收器230可以接收中间设备发送的用于指示中间设备合法的反馈消息,进而,处理器210可以与中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥。
基于相同的技术构思,本发明实施例还提供了一种中间设备,如图3所示,本实施例提供的中间设备可以实现本发明图5、图6和图7所示实施例的流程,所述中间设备包括接收器310、处理器320、发射器330,其中:
所述接收器310,用于接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
所述处理器320,用于基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
所述发射器330,用于向所述第二设备发送携带有所述第二数据的第二数据传输消息。
在实施中,第一设备向中间设备发送第一数据传输消息后,接收器310可以接收第一设备发送的第一数据传输消息,处理器320可以对其进行解析,获取其中携带的第一数据,其中,第一数据为经过第一加密密钥加密的目标数据。
中间设备中可以预先存储有中间设备与第一设备协商的解密密钥(即第一解密密钥),其中,第一解密密钥可以用于对第一设备发送的第一数据进行解密处理。处理器320获取到第一数据后,可以判断目标数据是否为允许中间设备读取的数据,当目标数据为允许中间设备读取的数据时,处理器320可以基于预先存储的中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,其中,中间设备中还可以预先存储有解密算法(可以称为第一解密算法),即,处理器320可以基于第一设备与中间设备协商的第一解密密钥和第一解密算法,对第一数据进行解密处理,得到目标数据。
处理器320得到目标数据后,可以按照自身具有的数据处理功能,对得到的目标数据进行预设的数据处理,具体的,中间设备可以具有预设的数据处理功能,其中,预设的数据处理功能可以是统计数据功能,此种情况下,处理器320可以读取第一设备待传输至第二设备的目标数据,以便于进行统计,不改变目标数据,预设的数据处理功能也可以是视频优化功能,此种情况下,处理器320可以读取第一设备待传输至第二设备的目标数据,并基于预设的数据处理功能对目标数据进行改变,例如,第一设备为服务器,视频优化功能是将高清视频数据改变为标清视频数据,此种情况下,处理器320可以读取服务器发送至终端的高清视频数据(即目标数据),进而,可以将目标数据改变为标清视频数据。也就是说,处理器320对目标数据进行预设的数据处理后,得到的数据可能与目标数据相同,也可能不同。
中间设备中可以预先存储有中间设备与第二设备协商的加密密钥(即第二加密密钥),其中,第二加密密钥可以用于对经过数据处理的目标数据进行加密处理。处理器320对目标数据进行预设的数据处理后,可以获取预先存储的第二加密密钥,并基于第二加密密钥对经过数据处理的目标数据进行加密处理,得到第二数据,其中,中间设备中还可以预先存储有加密算法(可以称为第二加密算法),即,处理器320可以基于中间设备与第二设备协商的第二加密密钥和第二加密算法,对经过数据处理的目标数据进行加密处理,得到第二数据。处理器320得到第二数据后,发射器330可以向第二设备发送数据传输消息(即第二数据传输消息),其中,第二数据传输消息中可以携带有第二数据。
可选的,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述处理器320,具体用于:
当所述处理器确定所述第一数据传输消息中携带有所述第一预设标识时,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述发射器330,具体用于:
向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
在实施中,接收器310获取到第一数据传输消息后,处理器320可以判断第一数据传输消息中是否携带有第一预设标识,当确定第一数据传输消息中携带有第一预设标识时,处理器320可以按照上述步骤504表述的处理过程对第一数据进行处理,即基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。当第一数据传输消息中携带有第一预设标识时,发射器330发送至第二设备的第二数据传输消息中还可以携带有第一预设标识,即第二数据传输消息中携带有第二数据和第一预设标识。
可选的,所述接收器310,还用于:
接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述发射器330,还用于:
当所述处理器确定所述第三数据传输消息中携带有所述第二预设标识时,向所述第二设备发送所述第三数据传输消息。
在实施中,第一设备向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息后,接收器310可以接收第一设备发送的第三数据传输消息,处理器320可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。接收器310接收到第三数据传输消息后,可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即当目标数据为不允许中间设备读取的数据时,发射器330可以将第三数据传输消息转发至第二设备,并不对第三数据进行任何处理。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
可选的,所述接收器310,还用于:
接收所述第一设备发送的验证指示消息;
所述发射器330,还用于:
向所述第二设备发送携带有所述中间设备的设备信息的验证请求;
所述接收器310,还用于:
接收所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述发射器330,还用于:
向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述处理器320,还用于:
与所述第一设备协商用于数据传输的所述第一加密密钥和所述第一解密密钥,并与所述第二设备协商用于数据传输的所述第二加密密钥和对应的第二解密密钥。
在实施中,第一设备向中间设备发送验证指示消息后,接收器310可以接收第一设备发送的验证指示消息,针对验证指示消息中携带有中间设备的设备信息的情况,接收器310接收到验证指示消息后,处理器320可以对其进行解析,获取其中携带的中间设备的设备信息。
针对验证指示消息中携带有中间设备的设备信息的情况,接收器310接收到第一设备发送的验证指示消息后,处理器320可以获取验证指示消息中携带的中间设备的设备信息,发射器330可以向第二设备发送携带有中间设备的设备信息的验证请求。针对验证指示消息中未携带有中间设备的设备信息的情况,即第一设备中未预先配置中间设备的设备信息的情况,接收器310接收到第一设备发送的验证指示消息后,处理器320可以获取本地中预先存储的中间设备的设备信息,发射器330向第二设备发送携带有中间设备的设备信息的验证请求。此外,中间设备发送的验证请求可以采用明文的方式进行传输。第二设备接收到验证请求后,可以对中间设备的合法性进行验证,当中间设备合法时,第二设备可以向中间设备发送用于指示中间设备合法的反馈消息,进而,接收器310可以接收第二设备发送的用于指示所述中间设备合法的反馈消息,发射器330可以向第一设备发送第二设备发送的用于指示中间设备合法的反馈消息,进而,处理器320可以与第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥。
基于相同的技术构思,本发明实施例还提供了一种第二设备,如图4所示,本实施例提供的第二设备可以实现本发明图5、图6和图7所示实施例的流程,所述第二设备包括接收器410、处理器420,其中:
所述接收器410,用于接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
所述处理器420,用于基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
在实施中,中间设备向第二设备发送携带有第二数据的第二数据传输消息后,接收器410可以接收中间设备发送的第二数据传输消息,处理器420可以对其进行解析,获取其中携带的第二数据,其中,第二数据为经过中间设备数据处理的目标数据,再经过第二加密密钥加密的数据。
第二设备中可以预先存储有第二设备与中间设备协商的解密密钥(即第二解密密钥),其中,第二解密密钥可以用于对中间设备发送的第二数据进行解密处理。接收器410接收到第二数据后,处理器420可以判断目标数据是否为允许中间设备读取的数据,即判断第二数据是否是中间设备对目标数据进行过预设的数据处理,并对其进行加密的数据,当确定目标数据为允许中间设备读取的数据时,可以基于第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据,其中,第二设备得到的数据可能与目标数据一致,也可能与目标数据不一致,是否相同取决于中间设备对目标数据的数据处理是否改变了目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第二解密算法),即,处理器420获取到第二数据后,可以基于第二设备与中间设备协商的第二解密密钥和第二解密算法,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
可选的,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述处理器420,具体用于:
当所述处理器确定所述第二数据传输消息中携带有所述第一预设标识时,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
在实施中,接收器410获取到第二数据传输消息后,处理器420可以判断第二数据传输消息中是否携带有第一预设标识,当确定第二数据传输消息中携带有第一预设标识时,即当确定第二数据传输消息中携带的第二数据是经过中间设备数据处理的目标数据再进行加密得到的数据时,可以按照上述步骤507表述的处理过程对第二数据进行处理,即基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
可选的,所述接收器410,还用于:
接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述处理器420,还用于:
当所述处理器确定所述第三数据传输消息中携带有所述第二预设标识时,基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
在实施中,中间设备向第二设备发送携带有第三数据和第二预设标识的第三数据传输消息后,接收器410可以接收中间设备发送的第三数据传输消息,处理器420可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。第二设备中可以预先存储有第二设备与第一设备协商的解密密钥(即第三解密密钥),其中,第三解密密钥可以用于对第一设备通过中间设备发送的第三数据进行解密处理。接收器410接收到第三数据传输消息后,处理器410可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即确定第三数据传输消息中携带的第三数据是第一设备基于第三加密密钥对目标数据进行加密得到的数据,中间设备并没有对目标数据进行任何处理时,处理器420可以基于第二设备与第一设备协商的第三解密密钥,对第三数据进行解密处理,得到目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第三解密算法),即,当确定第三数据传输消息中携带有第二预设标识时,处理器420可以基于第二设备与第一设备协商的第三解密密钥和第三解密算法,对第三数据进行解密处理,得到目标数据。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
可选的,所述接收器410,还用于:
接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求;
所述处理器420,还用于:
根据所述中间设备的设备信息,验证所述中间设备的合法性;
所述第二设备还包括:
发射器430,用于如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息;
所述处理器420,还用于:
与所述中间设备协商用于数据传输的所述第二解密密钥和对应的第二加密密钥。
在实施中,中间设备向第二设备发送验证请求后,接收器410可以接收中间设备发送的验证请求,处理器420可以对其进行解析,获取其中携带的中间设备的设备信息。
处理器420获取到中间设备的设备信息后,可以根据预设的处理策略,验证中间设备的合法性。具体的,处理器420获取到中间设备的设备信息后,即获取到中间设备的设备标识、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书后,其中,证书是由特定机构为中间设备颁发的,可以是基于私钥对中间设备的数据处理功能信息进行加密得到的,可以获取对应中间设备的公钥,并基于获取的公钥对证书进行解密,如果可以正确解密,且解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,则处理器420可以确定中间设备合法。另外,第二设备中还可以存储有该第二设备允许中间设备进行的操作,在上述判断的基础上,结合第二设备允许中间设备进行的操作,验证中间设备的合法性,例如,中间设备的数据处理功能为视频优化,如果第二设备中预先存储有允许具有视频优化功能的中间设备对传输的数据进行数据处理,则在解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同的基础上,处理器420可以确定中间设备合法,如果第二设备中预先存储有不允许具有视频优化功能的中间设备对传输的数据进行数据处理,则即使解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,处理器420也确定中间设备不合法。
处理器420对中间设备的合法性进行验证后,如果中间设备合法,则发射器430可以通过中间设备向第一设备发送对应中间设备发送的验证请求的反馈消息,其中,该反馈消息可以用于指示中间设备合法。具体的,发射器430可以向中间设备发送对应中间设备发送的验证请求的反馈消息,其中,反馈消息中可以携带有合法的中间设备的设备标识。另外,第二设备可以对反馈消息做完整性保护处理。处理器420还可以与中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥。
本发明实施例中,第一设备发送至第二设备目标数据需要进行加密时,第一设备可以采用第一设备与中间设备协商的第一加密密钥对目标数据进行加密处理,然后将其发送至中间设备,中间设备接收到第一设备发送的经过第一加密密钥加密的目标数据后,可以采用中间设备与第一设备协商的第一解密密钥对其进行解密,得到目标数据,并对目标数据进行预设的数据处理,进而,可以采用中间设备与第二设备协商的第二加密密钥对经过数据处理的目标数据进行加密,并将其发送至第二设备,第二设备接收到中间设备发送的数据后,可以采用第二设备与中间设备协商的第二解密密钥进行解密处理,得到经过中间设备数据处理的目标设备。这样,中间设备可以基于预先与第一设备协商的解密密钥对第一设备发送的数据进行解密,可以读取第一设备将要发送至第二设备的数据,进而,可以对目标数据进行预设的数据处理,从而,可以使得中间设备能够正常工作。
基于相同的技术构思,本发明实施例提供了一种第一设备,如图8所示,本实施例提供的第一设备可以实现本发明图5、图6和图7所示实施例的流程,所述第一设备包括:
获取模块810,用于获取待传输至第二设备的目标数据;
加密模块820,用于如果所述目标数据为允许中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
发送模块830,用于向所述中间设备发送携带有所述第一数据的第一数据传输消息。
其中,第一设备和第二设备可以是终端和服务器中的任意一个,第一设备可以是终端,第二设备可以是服务器,目标数据可以是第一设备待传输的业务数据。中间设备可以是具有预设数据处理功能的设备,可以是第一设备与第二设备传输数据时的传输路径中的设备。
在实施中,为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,获取模块810可以获取待传输的目标数据。
第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与中间设备协商的加密密钥(即第一加密密钥),其中,第一加密密钥可以用于对目标数据进行加密处理。
获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为允许中间设备读取的数据,则加密模块820可以基于预先存储的第一加密密钥,对目标数据进行加密处理,得到第一数据,其中,第一设备中还可以预先存储有加密算法(可以称为第一加密算法),即,加密模块820可以基于第一设备与中间设备协商的第一加密密钥和第一加密算法,对目标数据进行加密处理,得到第一数据。
加密模块820得到第一数据后,发送模块830可以向中间设备发送数据传输消息(即第一数据传输消息),其中,第一数据传输消息中还可以携带有第一数据。
可选的,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
可选的,所述加密模块820,还用于:
如果所述目标数据为不允许所述中间设备读取的数据,则基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述发送模块830,还用于:
向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
在实施中,第一设备中可以预先存储有第一判断策略,其中,第一判断策略可以用于第一设备确定待传输至第二设备的目标数据是否允许中间设备读取,第一设备中可以存储有允许中间设备读取的数据的数据类型列表,和/或可以存储有不允许中间设备读取的数据的数据类型列表,例如,第一设备为终端,目标数据为用户输入的密码时,不允许中间设备读取,数据为视频时,允许中间设备读取。第一设备中还可以预先存储有第一设备与第二设备协商的加密密钥(即第三加密密钥),其中,第三加密密钥可以用于对目标数据进行加密处理。
获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为不允许中间设备读取的数据,则加密模块820可以基于预先存储的第三加密密钥,对目标数据进行加密处理,得到第三数据,其中,第一设备中还可以预先存储有加密算法(可以称为第三加密算法),即,加密模块820可以基于第一设备与第二设备协商的第三加密密钥和第三加密算法,对目标数据进行加密处理,得到第三数据。
针对如果目标数据为允许中间设备读取的数据,则第一数据传输消息中携带有第一预设标识的情况,当确定出目标数据为不允许中间设备读取的数据时,发送模块830可以向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息,其中,第二预设标识可以用于指示不允许中间设备读取目标数据。另外,第一设备可以对第二预设标识进行完整性保护处理。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
可选的,所述发送模块830,还用于:
向所述中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
如图9所示,所述第一设备还包括:
接收模块840,用于接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;
协商模块850,用于与所述中间设备协商用于数据传输的所述第一加密密钥和对应的第一解密密钥。
在实施中,第一设备与第二设备传输数据时,可以基于TLS协议传输数据,也可以基于QUIC协议传输数据。当基于TLS协议传输数据时,第一设备与第二设备在传输数据前,可以先建立TCP(Transmission Control Protocol,传输控制协议)连接,即第一设备与第二设备进行TCP三次握手,然后,建立TLS连接,其中,建立TLS连接的过程即是第一设备与第二设备协商密钥的过程,即协商下述处理过程中涉及的用于数据传输的第三加密密钥和对应的第三解密密钥。当基于QUIC协议传输数据时,第一设备与第二设备在传输数据前,可以先建立QUIC连接。
第一设备与第二设备传输目标数据时,发送模块830可以向中间设备发送验证指示消息,其中,该验证指示消息可以用于指示中间设备向第二设备发送用于验证中间设备合法性的验证请求,其中,对于上述提及的两种情况,针对基于TLS协议传输目标数据的情况,该验证指示消息可以在TLS建立的过程中发送,也可以在TLS连接建立后,针对基于QUIC协议传输目标数据的情况,该验证指示消息可以在QUIC连接的建立过程中,也可以在QUIC连接建立后,本发明实施例不对其进行限定。另外,第一设备中可以预先设置有中间设备的设备信息,其中,中间设备的设备信息可以是中间设备的设备标识(可以是中间设备的设备名称,也可以是中间设备的MAC地址,也可以是中间设备的IP(Internet Protocol,网络协议)地址)、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书,此种情况下,验证指示消息中可以携带有中间设备的设备信息。第一设备中也可以不预先配置有中间设备的设备信息,本发明实施例不对其进行限定。此外,第一设备发送的验证指示消息可以采用明文的方式进行传输。
发送模块830向中间设备发送验证指示消息后,中间设备可以向第二设备发送用于验证中间设备合法性的验证请求,第二设备验证中间设备合法后,可以通过中间设备向第一设备发送用于指示中间设备合法的反馈消息,接收模块840可以接收中间设备发送的用于指示中间设备合法的反馈消息,进而,协商模块850可以与中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥。
基于相同的技术构思,本发明实施例还提供了一种中间设备,如图10所示,本实施例提供的中间设备可以实现本发明图5、图6和图7所示实施例的流程,所述中间设备包括:
接收模块1010,用于接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
解密模块1020,用于基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
加密模块1030,用于基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
发送模块1040,用于向所述第二设备发送携带有所述第二数据的第二数据传输消息。
在实施中,第一设备向中间设备发送第一数据传输消息后,接收模块1010可以接收第一设备发送的第一数据传输消息,中间设备可以对其进行解析,获取其中携带的第一数据,其中,第一数据为经过第一加密密钥加密的目标数据。
中间设备中可以预先存储有中间设备与第一设备协商的解密密钥(即第一解密密钥),其中,第一解密密钥可以用于对第一设备发送的第一数据进行解密处理。获取到第一数据后,可以判断目标数据是否为允许中间设备读取的数据,当目标数据为允许中间设备读取的数据时,解密模块1020可以基于预先存储的中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,其中,中间设备中还可以预先存储有解密算法(可以称为第一解密算法),即,解密模块1020可以基于第一设备与中间设备协商的第一解密密钥和第一解密算法,对第一数据进行解密处理,得到目标数据。
解密模块1020得到目标数据后,可以按照预设的数据处理功能,对得到的目标数据进行预设的数据处理,具体的,中间设备可以具有预设的数据处理功能,其中,预设的数据处理功能可以是统计数据功能,此种情况下,处理器320可以读取第一设备待传输至第二设备的目标数据,以便于进行统计,不改变目标数据,预设的数据处理功能也可以是视频优化功能,此种情况下,解密模块1020可以读取第一设备待传输至第二设备的目标数据,并基于预设的数据处理功能对目标数据进行改变,例如,第一设备为服务器,视频优化功能是将高清视频数据改变为标清视频数据,此种情况下,解密模块1020可以读取服务器发送至终端的高清视频数据(即目标数据),进而,可以将目标数据改变为标清视频数据。也就是说,解密模块1020对目标数据进行预设的数据处理后,得到的数据可能与目标数据相同,也可能不同。
中间设备中可以预先存储有中间设备与第二设备协商的加密密钥(即第二加密密钥),其中,第二加密密钥可以用于对经过数据处理的目标数据进行加密处理。对目标数据进行预设的数据处理后,加密模块1030可以获取预先存储的第二加密密钥,并基于第二加密密钥对经过数据处理的目标数据进行加密处理,得到第二数据,其中,中间设备中还可以预先存储有加密算法(可以称为第二加密算法),即,加密模块1030可以基于中间设备与第二设备协商的第二加密密钥和第二加密算法,对经过数据处理的目标数据进行加密处理,得到第二数据。加密模块1030得到第二数据后,发送模块1040可以向第二设备发送数据传输消息(即第二数据传输消息),其中,第二数据传输消息中可以携带有第二数据。
可选的,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块1020,具体用于:
当确定所述第一数据传输消息中携带有所述第一预设标识时,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述发送模块1040,具体用于:
向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
在实施中,接收模块1010获取到第一数据传输消息后,中间设备可以判断第一数据传输消息中是否携带有第一预设标识,当确定第一数据传输消息中携带有第一预设标识时,解密模块1020可以按照上述步骤504表述的处理过程对第一数据进行处理,即基于中间设备与第一设备协商的第一解密密钥,对第一数据进行解密处理,得到目标数据,并对目标数据进行预设的数据处理。当第一数据传输消息中携带有第一预设标识时,发送模块1040发送至第二设备的第二数据传输消息中还可以携带有第一预设标识,即第二数据传输消息中携带有第二数据和第一预设标识。
可选的,所述接收模块1010,还用于:
接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述发送模块1040,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,向所述第二设备发送所述第三数据传输消息。
在实施中,第一设备向中间设备发送携带有第三数据和第二预设标识的第三数据传输消息后,接收模块1010可以接收第一设备发送的第三数据传输消息,中间设备可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。接收到第三数据传输消息后,可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即当目标数据为不允许中间设备读取的数据时,发送模块1040可以将第三数据传输消息转发至第二设备,并不对第三数据进行任何处理。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
可选的,所述接收模块1010,还用于:
接收所述第一设备发送的验证指示消息;
所述发送模块1040,还用于:
向所述第二设备发送携带有所述中间设备的设备信息的验证请求;
所述接收模块1010,还用于:
接收所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述发送模块1040,还用于:
向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
如图11所示,所述中间设备还包括:
协商模块1150,用于与所述第一设备协商用于数据传输的所述第一加密密钥和所述第一解密密钥,并与所述第二设备协商用于数据传输的所述第二加密密钥和对应的第二解密密钥。
在实施中,第一设备向中间设备发送验证指示消息后,接收模块1010可以接收第一设备发送的验证指示消息,针对验证指示消息中携带有中间设备的设备信息的情况,接收模块1010接收到验证指示消息后,中间设备可以对其进行解析,获取其中携带的中间设备的设备信息。
针对验证指示消息中携带有中间设备的设备信息的情况,接收到第一设备发送的验证指示消息后,可以获取验证指示消息中携带的中间设备的设备信息,发送模块1040可以向第二设备发送携带有中间设备的设备信息的验证请求。针对验证指示消息中未携带有中间设备的设备信息的情况,即第一设备中未预先配置中间设备的设备信息的情况,接收模块1010接收到第一设备发送的验证指示消息后,中间设备可以获取本地中预先存储的中间设备的设备信息,发送模块1040向第二设备发送携带有中间设备的设备信息的验证请求。此外,中间设备发送的验证请求可以采用明文的方式进行传输。第二设备接收到验证请求后,可以对中间设备的合法性进行验证,当中间设备合法时,第二设备可以向中间设备发送用于指示中间设备合法的反馈消息,进而,接收模块1010可以接收第二设备发送的用于指示所述中间设备合法的反馈消息,发送模块1040可以向第一设备发送第二设备发送的用于指示中间设备合法的反馈消息,进而,协商模块1050可以与第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥。
基于相同的技术构思,本发明实施例提供了一种第二设备,如图12所示,本实施例提供的第二设备可以实现本发明图5、图6和图7所示实施例的流程,所述第二设备包括:
接收模块1210,用于接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
解密模块1220,用于基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
在实施中,中间设备向第二设备发送携带有第二数据的第二数据传输消息后,接收模块1210可以接收中间设备发送的第二数据传输消息,第二设备可以对其进行解析,获取其中携带的第二数据,其中,第二数据为经过中间设备数据处理的目标数据,再经过第二加密密钥加密的数据。
第二设备中可以预先存储有第二设备与中间设备协商的解密密钥(即第二解密密钥),其中,第二解密密钥可以用于对中间设备发送的第二数据进行解密处理。接收模块1210接收到第二数据后,解密模块1220可以判断目标数据是否为允许中间设备读取的数据,即判断第二数据是否是中间设备对目标数据进行过预设的数据处理,并对其进行加密的数据,当确定目标数据为允许中间设备读取的数据时,解密模块1220可以基于第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据,其中,第二设备得到的数据可能与目标数据一致,也可能与目标数据不一致,是否相同取决于中间设备对目标数据的数据处理是否改变了目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第二解密算法),即,获取到第二数据后,解密模块1220可以基于第二设备与中间设备协商的第二解密密钥和第二解密算法,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
可选的,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块1220,具体用于:
当确定所述第二数据传输消息中携带有所述第一预设标识时,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
在实施中,接收模块1210获取到第二数据传输消息后,解密模块1220可以判断第二数据传输消息中是否携带有第一预设标识,当确定第二数据传输消息中携带有第一预设标识时,即当确定第二数据传输消息中携带的第二数据是经过中间设备数据处理的目标数据再进行加密得到的数据时,可以按照上述步骤507表述的处理过程对第二数据进行处理,即解密模块1220基于第二设备与中间设备协商的第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
可选的,所述接收模块1210,还用于:
接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述解密模块1220,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
在实施中,中间设备向第二设备发送携带有第三数据和第二预设标识的第三数据传输消息后,接收模块1210可以接收中间设备发送的第三数据传输消息,第二设备可以对其进行解析,获取其中携带的第三数据和第二预设标识,其中,第三数据为经过第三加密密钥加密的目标数据。第二设备中可以预先存储有第二设备与第一设备协商的解密密钥(即第三解密密钥),其中,第三解密密钥可以用于对第一设备通过中间设备发送的第三数据进行解密处理。接收模块1210接收到第三数据传输消息后,解密模块1220可以判断第三数据传输消息中是否携带有第二预设标识,当确定第三数据传输消息中携带有第二预设标识时,即确定第三数据传输消息中携带的第三数据是第一设备基于第三加密密钥对目标数据进行加密得到的数据,中间设备并没有对目标数据进行任何处理时,解密模块1220可以基于第二设备与第一设备协商的第三解密密钥,对第三数据进行解密处理,得到目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第三解密算法),即,当确定第三数据传输消息中携带有第二预设标识时,解密模块1220可以基于第二设备与第一设备协商的第三解密密钥和第三解密算法,对第三数据进行解密处理,得到目标数据。
可选的,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
可选的,所述接收模块1210,还用于:
接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求;
如图13所示,所述第二设备还包括:
验证模块1230,用于根据所述中间设备的设备信息,验证所述中间设备的合法性;
发送模块1240,用于如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息;
协商模块1250,用于与所述中间设备协商用于数据传输的所述第二解密密钥和对应的第二加密密钥。
在实施中,中间设备向第二设备发送验证请求后,接收模块1210可以接收中间设备发送的验证请求,第二设备可以对其进行解析,获取其中携带的中间设备的设备信息。
获取到中间设备的设备信息后,验证模块1230可以根据预设的处理策略,验证中间设备的合法性。具体的,获取到中间设备的设备信息后,即获取到中间设备的设备标识、数据处理功能信息(可以是表述中间设备的数据处理功能的文本信息)以及证书后,其中,证书是由特定机构为中间设备颁发的,可以是基于私钥对中间设备的数据处理功能信息进行加密得到的,解密模块1220可以获取对应中间设备的公钥,并基于获取的公钥对证书进行解密,如果可以正确解密,且解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,则验证模块1230可以确定中间设备合法。另外,第二设备中还可以存储有该第二设备允许中间设备进行的操作,在上述判断的基础上,结合第二设备允许中间设备进行的操作,验证中间设备的合法性,例如,中间设备的数据处理功能为视频优化,如果第二设备中预先存储有允许具有视频优化功能的中间设备对传输的数据进行数据处理,则在解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同的基础上,验证模块1230可以确定中间设备合法,如果第二设备中预先存储有不允许具有视频优化功能的中间设备对传输的数据进行数据处理,则即使解密得到的数据处理功能信息与验证请求中携带的数据处理功能信息相同,验证模块1230也确定中间设备不合法。
验证模块1230对中间设备的合法性进行验证后,如果中间设备合法,则发送模块1240可以通过中间设备向第一设备发送对应中间设备发送的验证请求的反馈消息,其中,该反馈消息可以用于指示中间设备合法。具体的,发送模块1240可以向中间设备发送对应中间设备发送的验证请求的反馈消息,其中,反馈消息中可以携带有合法的中间设备的设备标识。另外,第二设备可以对反馈消息做完整性保护处理。协商模块1250还可以与中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥。
本发明实施例中,第一设备发送至第二设备目标数据需要进行加密时,第一设备可以采用第一设备与中间设备协商的第一加密密钥对目标数据进行加密处理,然后将其发送至中间设备,中间设备接收到第一设备发送的经过第一加密密钥加密的目标数据后,可以采用中间设备与第一设备协商的第一解密密钥对其进行解密,得到目标数据,并对目标数据进行预设的数据处理,进而,可以采用中间设备与第二设备协商的第二加密密钥对经过数据处理的目标数据进行加密,并将其发送至第二设备,第二设备接收到中间设备发送的数据后,可以采用第二设备与中间设备协商的第二解密密钥进行解密处理,得到经过中间设备数据处理的目标设备。这样,中间设备可以基于预先与第一设备协商的解密密钥对第一设备发送的数据进行解密,可以读取第一设备将要发送至第二设备的数据,进而,可以对目标数据进行预设的数据处理,从而,可以使得中间设备能够正常工作。
本发明实施例还提供了一种传输数据的系统,本实施例提供的系统可以实现本发明图5、6、7所示实施例的流程,第一设备为图2、8、9所示实施例的第一设备,中间设备为图3、10、11所示实施例的中间设备,第二设备为图4、12、13所示实施例的第二设备,所述系统包括第一设备、中间设备和第二设备,其中:
所述第一设备,用于获取待传输至所述第二设备的目标数据,如果所述目标数据为允许所述中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据,向所述中间设备发送携带有所述第一数据的第一数据传输消息;
所述中间设备,用于接收所述第一设备发送的携带有所述第一数据的第一数据传输消息,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理,基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据,向所述第二设备发送携带有所述第二数据的第二数据传输消息;
所述第二设备,用于接收所述中间设备发送的携带有所述第二数据的第二数据传输消息,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
在实施中,为保证数据传输的安全性,越来越多的服务器要求与终端进行传输的数据需要进行加密处理,即TLS协议或者Quic(Quick UDP(User Datagram Protocol,用户数据报协议)Internet Connection,基于UDP的低时延互联网传输层)协议得到了广泛应用,此种情况下,第一设备将要向第二设备发送数据时,可以获取待传输的目标数据。第一设备获取到目标数据后,可以判断该目标数据是否允许中间设备读取的数据,如果目标数据为允许中间设备读取的数据,则第一设备可以基于预先存储的第一加密密钥,对目标数据进行加密处理,得到第一数据,其中,第一设备中还可以预先存储有加密算法(可以称为第一加密算法),即,第一设备可以基于第一设备与中间设备协商的第一加密密钥和第一加密算法,对目标数据进行加密处理,得到第一数据。第一设备得到第一数据后,可以向中间设备发送数据传输消息(即第一数据传输消息),其中,第一数据传输消息中还可以携带有第一数据。
第一设备向中间设备发送第一数据传输消息后,中间设备可以接收第一设备发送的第一数据传输消息,可以对其进行解析,获取其中携带的第一数据,其中,第一数据为经过第一加密密钥加密的目标数据。中间设备得到目标数据后,可以按照自身具有的数据处理功能,对得到的目标数据进行预设的数据处理,具体的,中间设备可以具有预设的数据处理功能,其中,预设的数据处理功能可以是统计数据功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,以便于进行统计,不改变目标数据,预设的数据处理功能也可以是视频优化功能,此种情况下,中间设备可以读取第一设备待传输至第二设备的目标数据,并基于预设的数据处理功能对目标数据进行改变,例如,第一设备为服务器,视频优化功能是将高清视频数据改变为标清视频数据,此种情况下,中间设备可以读取服务器发送至终端的高清视频数据(即目标数据),进而,可以将目标数据改变为标清视频数据。也就是说,中间设备对目标数据进行预设的数据处理后,得到的数据可能与目标数据相同,也可能不同。中间设备对目标数据进行预设的数据处理后,可以获取预先存储的第二加密密钥,并基于第二加密密钥对经过数据处理的目标数据进行加密处理,得到第二数据,其中,中间设备中还可以预先存储有加密算法(可以称为第二加密算法),即,中间设备可以基于中间设备与第二设备协商的第二加密密钥和第二加密算法,对经过数据处理的目标数据进行加密处理,得到第二数据。中间设备得到第二数据后,可以向第二设备发送数据传输消息(即第二数据传输消息),其中,第二数据传输消息中可以携带有第二数据。
中间设备向第二设备发送携带有第二数据的第二数据传输消息后,第二设备可以接收中间设备发送的第二数据传输消息,并对其进行解析,获取其中携带的第二数据,其中,第二数据为经过中间设备数据处理的目标数据,再经过第二加密密钥加密的数据。第二设备中可以预先存储有第二设备与中间设备协商的解密密钥(即第二解密密钥),其中,第二解密密钥可以用于对中间设备发送的第二数据进行解密处理。第二设备接收到第二数据后,可以判断目标数据是否为允许中间设备读取的数据,即判断第二数据是否是中间设备对目标数据进行过预设的数据处理,并对其进行加密的数据,当第二设备确定目标数据为允许中间设备读取的数据时,可以基于第二解密密钥,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据,其中,第二设备得到的数据可能与目标数据一致,也可能与目标数据不一致,是否相同取决于中间设备对目标数据的数据处理是否改变了目标数据。另外,第二设备中还可以预先存储有解密算法(可以称为第二解密算法),即,第二设备获取到第二数据后,可以基于第二设备与中间设备协商的第二解密密钥和第二解密算法,对第二数据进行解密处理,得到经过中间设备数据处理的目标数据。
本发明实施例中,第一设备发送至第二设备目标数据需要进行加密时,第一设备可以采用第一设备与中间设备协商的第一加密密钥对目标数据进行加密处理,然后将其发送至中间设备,中间设备接收到第一设备发送的经过第一加密密钥加密的目标数据后,可以采用中间设备与第一设备协商的第一解密密钥对其进行解密,得到目标数据,并对目标数据进行预设的数据处理,进而,可以采用中间设备与第二设备协商的第二加密密钥对经过数据处理的目标数据进行加密,并将其发送至第二设备,第二设备接收到中间设备发送的数据后,可以采用第二设备与中间设备协商的第二解密密钥进行解密处理,得到经过中间设备数据处理的目标设备。这样,中间设备可以基于预先与第一设备协商的解密密钥对第一设备发送的数据进行解密,可以读取第一设备将要发送至第二设备的数据,进而,可以对目标数据进行预设的数据处理,从而,可以使得中间设备能够正常工作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (25)
1.一种传输数据的方法,其特征在于,所述方法包括:
第一设备向中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向第二设备发送用于验证所述中间设备合法性的验证请求,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得,所述验证请求用于所述第二设备使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
所述第一设备接收所述中间设备发送的用于指示所述中间设备合法的反馈消息,所述反馈消息是所述第二设备发送给所述中间设备;
所述第一设备与所述中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥;
所述第一设备获取待传输至所述第二设备的目标数据;
如果所述目标数据为允许所述中间设备读取的数据,则所述第一设备基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
所述第一设备向所述中间设备发送携带有所述第一数据的第一数据传输消息。
2.根据权利要求1所述的方法,其特征在于,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述目标数据为不允许所述中间设备读取的数据,则所述第一设备基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述第一设备向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
4.根据权利要求3所述的方法,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
5.一种传输数据的方法,其特征在于,所述方法包括:
中间设备接收第一设备发送的验证指示消息,所述验证指示消息用于指示所述中间设备向第二设备发送用于验证所述中间设备合法性的验证请求;
所述中间设备向第二设备发送携带有所述中间设备的设备信息的验证请求,其中,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得,所述验证请求用于所述第二设备使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
所述中间设备接收所述第二设备发送的用于指示所述中间设备合法的反馈消息,向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述中间设备与所述第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与所述第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥;
所述中间设备接收所述第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述中间设备基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
所述中间设备向所述第二设备发送携带有所述第二数据的第二数据传输消息。
6.根据权利要求5所述的方法,其特征在于,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理,包括:
当所述中间设备确定所述第一数据传输消息中携带有所述第一预设标识时,所述中间设备基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述中间设备向所述第二设备发送携带有所述第二数据的第二数据传输消息,包括:
所述中间设备向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述中间设备接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
当所述中间设备确定所述第三数据传输消息中携带有所述第二预设标识时,所述中间设备向所述第二设备发送所述第三数据传输消息。
8.根据权利要求7所述的方法,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
9.一种传输数据的方法,其特征在于,所述方法包括:
第二设备接收中间设备发送的携带有所述中间设备的设备信息的验证请求,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得;所述验证请求是所述中间设备基于第一设备发送的验证指示消息发送的,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
所述第二设备使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
如果所述中间设备合法,则所述第二设备通过所述中间设备向所述第一设备发送用于指示所述中间设备合法的反馈消息,并与所述中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥;
所述第二设备接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
10.根据权利要求9所述的方法,其特征在于,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据,包括:
当所述第二设备确定所述第二数据传输消息中携带有所述第一预设标识时,所述第二设备基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
所述第二设备接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
当所述第二设备确定所述第三数据传输消息中携带有所述第二预设标识时,所述第二设备基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
12.根据权利要求11所述的方法,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
13.一种传输数据的第一设备,其特征在于,所述第一设备包括:
发送模块,用于向中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向第二设备发送用于验证所述中间设备合法性的验证请求,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得,所述验证请求用于所述第二设备使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
接收模块,用于接收所述中间设备发送的用于指示所述中间设备合法的反馈消息,所述反馈消息是所述第二设备发送给所述中间设备;
协商模块,用于与所述中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥;
获取模块,用于获取待传输至第二设备的目标数据;
加密模块,用于如果所述目标数据为允许中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据;
所述发送模块,还用于向所述中间设备发送携带有所述第一数据的第一数据传输消息。
14.根据权利要求13所述的第一设备,其特征在于,所述第一数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据。
15.根据权利要求14所述的第一设备,其特征在于,所述加密模块,还用于:
如果所述目标数据为不允许所述中间设备读取的数据,则基于所述第一设备与所述第二设备协商的第三加密密钥,对所述目标数据进行加密处理,得到第三数据;
所述发送模块,还用于:
向所述中间设备发送携带有所述第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据。
16.根据权利要求15所述的第一设备,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
17.一种传输数据的中间设备,其特征在于,所述中间设备包括:
接收模块,用于接收第一设备发送的验证指示消息,所述验证指示消息用于指示所述中间设备向第二设备发送用于验证所述中间设备合法性的验证请求;
发送模块,用于向第二设备发送携带有所述中间设备的设备信息的验证请求,其中,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得,所述验证请求用于所述第二设备使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
所述接收模块,还用于接收所述第二设备发送的用于指示所述中间设备合法的反馈消息;
所述发送模块,还用于向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息;
协商模块,用于与所述第一设备协商用于数据传输的第一加密密钥和第一解密密钥,并与所述第二设备协商用于数据传输的第二加密密钥和对应的第二解密密钥;
所述接收模块,还用于接收第一设备发送的携带有第一数据的第一数据传输消息,其中,所述第一数据为经过第一加密密钥加密的目标数据;
解密模块,用于基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
加密模块,用于基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据;
发送模块,用于向所述第二设备发送携带有所述第二数据的第二数据传输消息。
18.根据权利要求17所述的中间设备,其特征在于,所述第一数据传输消息中还携带有第一预设标识,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块,具体用于:
当确定所述第一数据传输消息中携带有所述第一预设标识时,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理;
所述发送模块,具体用于:
向所述第二设备发送携带有所述第二数据和所述第一预设标识的第二数据传输消息。
19.根据权利要求18所述的中间设备,其特征在于,所述接收模块,还用于:
接收所述第一设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述发送模块,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,向所述第二设备发送所述第三数据传输消息。
20.根据权利要求19所述的中间设备,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
21.一种传输数据的第二设备,其特征在于,所述第二设备包括:
接收模块,用于接收中间设备发送的携带有所述中间设备的设备信息的验证请求,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得;所述验证请求是所述中间设备基于第一设备发送的验证指示消息发送的,所述验证指示消息用于指示所述中间设备向所述第二设备发送用于验证所述中间设备合法性的验证请求;
验证模块,用于使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性;
发送模块,用于如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息;
协商模块,用于与所述中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥;
所述接收模块,还用于接收中间设备发送的携带有第二数据的第二数据传输消息,其中,所述第二数据为经过所述中间设备数据处理的目标数据再进行加密得到的数据;
解密模块,用于基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
22.根据权利要求21所述的第二设备,其特征在于,所述第二数据传输消息中还携带有第一预设标识,其中,所述第一预设标识用于指示允许所述中间设备读取所述目标数据;
所述解密模块,具体用于:
当确定所述第二数据传输消息中携带有所述第一预设标识时,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
23.根据权利要求22所述的第二设备,其特征在于,所述接收模块,还用于:
接收所述中间设备发送的携带有第三数据和第二预设标识的第三数据传输消息,其中,所述第二预设标识用于指示不允许所述中间设备读取所述目标数据,所述第三数据为经过第三加密密钥加密的目标数据;
所述解密模块,还用于:
当确定所述第三数据传输消息中携带有所述第二预设标识时,基于所述第二设备与所述第一设备协商的第三解密密钥,对所述第三数据进行解密处理,得到所述目标数据。
24.根据权利要求23所述的第二设备,其特征在于,所述第一预设标识或所述第二预设标识设置于传输层安全TLS包头中;或者,
所述第一预设标识或所述第二预设标识设置于基于用户数据报协议的低时延互联网传输层QUIC包头中。
25.一种传输数据的系统,其特征在于,所述系统包括第一设备、中间设备和第二设备,其中:
所述第一设备,用于向中间设备发送验证指示消息,其中,所述验证指示消息用于指示所述中间设备向第二设备发送用于验证所述中间设备合法性的验证请求,所述验证请求携带有所述中间设备的设备信息,所述设备信息包括数据处理功能信息和证书,所述证书包括基于私钥对所述中间设备的数据处理功能信息进行加密获得,接收所述中间设备发送的用于指示所述中间设备合法的反馈消息;与所述中间设备协商用于数据传输的第一加密密钥和对应的第一解密密钥,获取待传输至所述第二设备的目标数据,如果所述目标数据为允许所述中间设备读取的数据,则基于所述第一设备与所述中间设备协商的第一加密密钥,对所述目标数据进行加密处理,得到第一数据,向所述中间设备发送携带有所述第一数据的第一数据传输消息;
所述中间设备,用于接收所述第一设备发送的验证指示消息,向所述第二设备发送携带有所述中间设备的设备信息的验证请求,接收所述第二设备发送的用于指示所述中间设备合法的反馈消息,向所述第一设备发送所述第二设备发送的用于指示所述中间设备合法的反馈消息,接收所述第一设备发送的携带有所述第一数据的第一数据传输消息,基于所述中间设备与所述第一设备协商的第一解密密钥,对所述第一数据进行解密处理,得到所述目标数据,并对所述目标数据进行预设的数据处理,基于所述中间设备与第二设备协商的第二加密密钥,对经过数据处理的目标数据进行加密处理,得到第二数据,向所述第二设备发送携带有所述第二数据的第二数据传输消息;
所述第二设备,用于接收所述中间设备发送的携带有所述中间设备的设备信息的验证请求,使用公钥对所述证书进行解密,获得所述证书中的数据处理功能信息,根据所述证书中的数据处理功能信息与所述验证请求中的数据处理功能信息是否相等,验证所述中间设备的合法性,如果所述中间设备合法,则通过所述中间设备向第一设备发送用于指示所述中间设备合法的反馈消息,并与所述中间设备协商用于数据传输的第二解密密钥和对应的第二加密密钥,接收所述中间设备发送的携带有所述第二数据的第二数据传输消息,基于所述第二设备与所述中间设备协商的第二解密密钥,对所述第二数据进行解密处理,得到经过所述中间设备数据处理的目标数据。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/103301 WO2018076183A1 (zh) | 2016-10-25 | 2016-10-25 | 一种传输数据的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109845214A CN109845214A (zh) | 2019-06-04 |
CN109845214B true CN109845214B (zh) | 2020-10-16 |
Family
ID=62024159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680090033.7A Active CN109845214B (zh) | 2016-10-25 | 2016-10-25 | 一种传输数据的方法、装置和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190268764A1 (zh) |
EP (1) | EP3522473A4 (zh) |
CN (1) | CN109845214B (zh) |
WO (1) | WO2018076183A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3067545A1 (fr) * | 2017-06-21 | 2018-12-14 | Orange | Procede d'activation de traitements appliques a une session de donnees |
FR3081653A1 (fr) * | 2018-06-25 | 2019-11-29 | Orange | Procede de modification de messages par un equipement sur un chemin de communication etabli entre deux noeuds |
FR3096533A1 (fr) * | 2019-06-28 | 2020-11-27 | Orange | Procédé de gestion d’une communication entre terminaux dans un réseau de communication, et dispositifs pour la mise en œuvre du procédé |
FR3096532A1 (fr) * | 2019-06-28 | 2020-11-27 | Orange | Procédé de gestion d’une communication entre terminaux dans un réseau de communication, et dispositifs et système pour la mise en œuvre du procédé |
CN112738004B (zh) * | 2019-10-14 | 2021-11-16 | 上海哔哩哔哩科技有限公司 | 基于quic传输协议的通信方法和系统 |
US11632672B2 (en) * | 2019-12-30 | 2023-04-18 | Texas Instruments Incorporated | Systems and methods to support data privacy over a multi-hop network |
CN112333173B (zh) * | 2020-03-11 | 2023-07-04 | 合肥达朴汇联科技有限公司 | 基于数据提供方的数据传送方法、系统、设备及存储介质 |
US20230379150A1 (en) * | 2020-09-29 | 2023-11-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatuses for providing communication between a server and a client device via a proxy node |
CN114520730B (zh) * | 2020-11-20 | 2023-06-20 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、系统、计算机设备和存储介质 |
EP4302457A1 (en) * | 2021-03-01 | 2024-01-10 | Telefonaktiebolaget LM Ericsson (publ) | Traffic management with asymmetric traffic encryption in 5g networks |
US20240031436A1 (en) * | 2022-07-19 | 2024-01-25 | Centurylink Intellectual Property Llc | Dynamic storage and forwarding of data |
CN115208569B (zh) * | 2022-09-15 | 2022-12-20 | 广州万协通信息技术有限公司 | 密钥动态分配的加密解密方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105429962A (zh) * | 2015-11-03 | 2016-03-23 | 清华大学 | 一种通用的面向加密数据的中间网络服务构建方法与体系 |
US9350715B1 (en) * | 2003-02-13 | 2016-05-24 | Cisco Technology, Inc. | Methods and apparatus for network communications via a transparent security proxy |
CN105794171A (zh) * | 2013-11-28 | 2016-07-20 | 瑞典爱立信有限公司 | 用于握手期间中间节点发现的方法和装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7543146B1 (en) * | 2004-06-18 | 2009-06-02 | Blue Coat Systems, Inc. | Using digital certificates to request client consent prior to decrypting SSL communications |
US8190875B2 (en) * | 2007-03-22 | 2012-05-29 | Cisco Technology, Inc. | Reducing processing load in proxies for secure communications |
CN102088441B (zh) * | 2009-12-08 | 2014-07-02 | 北京大学 | 消息中间件的数据加密传输方法和系统 |
US8190879B2 (en) * | 2009-12-17 | 2012-05-29 | Cisco Technology, Inc. | Graceful conversion of a security to a non-security transparent proxy |
US8543805B2 (en) * | 2010-04-21 | 2013-09-24 | Citrix Systems, Inc. | Systems and methods for split proxying of SSL via WAN appliances |
US9015469B2 (en) * | 2011-07-28 | 2015-04-21 | Cloudflare, Inc. | Supporting secure sessions in a cloud-based proxy service |
US9124628B2 (en) * | 2012-09-20 | 2015-09-01 | Cisco Technology, Inc. | Seamless engagement and disengagement of transport layer security proxy services |
EP3242444A4 (en) * | 2015-01-14 | 2018-01-24 | Huawei Technologies Co. Ltd. | Service processing method and device |
WO2016141513A1 (zh) * | 2015-03-06 | 2016-09-15 | 华为技术有限公司 | 业务处理方法及装置 |
-
2016
- 2016-10-25 CN CN201680090033.7A patent/CN109845214B/zh active Active
- 2016-10-25 EP EP16920146.4A patent/EP3522473A4/en not_active Withdrawn
- 2016-10-25 WO PCT/CN2016/103301 patent/WO2018076183A1/zh unknown
-
2019
- 2019-04-23 US US16/392,364 patent/US20190268764A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9350715B1 (en) * | 2003-02-13 | 2016-05-24 | Cisco Technology, Inc. | Methods and apparatus for network communications via a transparent security proxy |
CN105794171A (zh) * | 2013-11-28 | 2016-07-20 | 瑞典爱立信有限公司 | 用于握手期间中间节点发现的方法和装置 |
CN105429962A (zh) * | 2015-11-03 | 2016-03-23 | 清华大学 | 一种通用的面向加密数据的中间网络服务构建方法与体系 |
Also Published As
Publication number | Publication date |
---|---|
EP3522473A4 (en) | 2019-11-06 |
CN109845214A (zh) | 2019-06-04 |
EP3522473A1 (en) | 2019-08-07 |
WO2018076183A1 (zh) | 2018-05-03 |
US20190268764A1 (en) | 2019-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109845214B (zh) | 一种传输数据的方法、装置和系统 | |
CN110190955B (zh) | 基于安全套接层协议认证的信息处理方法及装置 | |
CN107659406B (zh) | 一种资源操作方法及装置 | |
CN105337935B (zh) | 一种建立客户端和服务端长连接的方法和装置 | |
US11736304B2 (en) | Secure authentication of remote equipment | |
US9203614B2 (en) | Method, apparatus, and system for protecting cloud data security | |
CN103036872B (zh) | 数据传输的加密和解密方法、设备及系统 | |
WO2017215582A1 (zh) | 加密内容检测的方法和设备 | |
CN112714053B (zh) | 通信连接方法及装置 | |
EP2437461A1 (en) | Key derivation for secure communications | |
CN113225352B (zh) | 一种数据传输方法、装置、电子设备及存储介质 | |
CN103428221A (zh) | 对移动应用的安全登录方法、系统和装置 | |
CN105491073B (zh) | 一种数据下载方法、装置及系统 | |
CN107547559B (zh) | 一种报文处理方法及装置 | |
CN104243452A (zh) | 一种云计算访问控制方法及系统 | |
CN112205018B (zh) | 监控网络中的加密连接的方法、设备 | |
CN113411187A (zh) | 身份认证方法和系统、存储介质及处理器 | |
KR101448866B1 (ko) | 웹 보안 프로토콜에 따른 암호화 데이터를 복호화하는 보안 장치 및 그것의 동작 방법 | |
CN113852681A (zh) | 一种网关认证方法、装置及安全网关设备 | |
KR20190009497A (ko) | 무선 보안 액세스 포인트를 이용한 망분리 장치 및 그 방법 | |
WO2020109624A1 (en) | Key negotiation and provisioning for devices in a network | |
WO2016176858A1 (zh) | 一种传输请求的方法及客户端 | |
KR20150114923A (ko) | Ap접속정보 설정방법 및 이를 위한 단말기 | |
WO2016003310A1 (en) | Bootstrapping a device to a wireless network | |
KR101628094B1 (ko) | 보안 장비 및 그것의 접근 허용 방법 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211222 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: Super fusion Digital Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |