CN117411682A - 一种加密通信方法、装置、电子设备和存储介质 - Google Patents

一种加密通信方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN117411682A
CN117411682A CN202311329364.XA CN202311329364A CN117411682A CN 117411682 A CN117411682 A CN 117411682A CN 202311329364 A CN202311329364 A CN 202311329364A CN 117411682 A CN117411682 A CN 117411682A
Authority
CN
China
Prior art keywords
server
client
communication protocol
communicating
public key
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.)
Pending
Application number
CN202311329364.XA
Other languages
English (en)
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.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information 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 Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN202311329364.XA priority Critical patent/CN117411682A/zh
Publication of CN117411682A publication Critical patent/CN117411682A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/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/0485Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

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

Abstract

本发明实施例提供了一种加密通信方法、装置、电子设备和存储介质。所述方法包括:基于所述通信协议,与服务端进行通信,以确定密码算法,通信协议使用物理地址寻址,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。

Description

一种加密通信方法、装置、电子设备和存储介质
技术领域
本发明涉及通信技术领域,特别是涉及一种加密通信方法、一种加密通信装置、一种电子设备以及一种计算机可读存储介质。
背景技术
IP协议(Internet Protocol,因特网协议)在设计初期过分强调其开发性和便利性,因此IP协议缺乏安全性的考量,导致基于IP协议的很多网络协议都存在严重的安全漏洞,给因特网留下许多安全隐患。
为了解决此安全问题,出现了以IPSec(Internet Protocol Security,因特网协议安全性)协议为代表的、采用叠加式实现思路的安全防护协议。在应用过程中,各应用对安全防护协议的理解与具体应用上的差异,导致安全性不如设计时那么强壮。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种加密通信方法、相应的一种加密通信装置、一种电子设备以及一种计算机可读存储介质。
为了解决上述问题,本发明实施例公开了一种加密通信方法,应用于客户端,所述方法包括:
基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述基于通信协议,与服务端进行通信,以确定密码算法,包括:
基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;
基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
可选地,所述基于所述通信协议,与所述服务端进行通信,以得到服务端公钥,包括:
基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端,包括:
基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,所述方法还包括:
基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述方法还包括:
基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;
基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
可选地,在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,所述方法还包括:
采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
本发明实施例还公开了一种加密通信方法,应用于服务端,所述装置包括:
基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述基于所述通信协议,与客户端进行通信,以确定密码算法,包括:
基于所述通信协议,接收所述客户端发送的所述客户端支持的密码算法;
基于所述通信协议,向所述客户端发送在所述客户端支持的密码算法中选择的密码算法。
可选地,所述基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端,包括:
基于所述通信协议,向所述客户端发送服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥,包括:
基于所述通信协议,接收所述客户端发送的客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,在所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥之后,所述方法还包括:
基于所述通信协议,与所述客户端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述方法还包括:
基于所述通信协议,接收所述客户端发送的所述客户端支持的压缩算法;
基于所述通信协议,向所述客户端发送在所述客户端支持的压缩算法中选择的压缩算法。
可选地,在所述基于所述通信协议,与所述客户端进行密文信息的通信之前,所述方法还包括:
采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
本发明实施例还公开了一种加密通信装置,应用于客户端,所述装置包括:
密码算法通信模块,用于基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块,用于基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
密钥通信模块,用于基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
密文通信模块,用于基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述密码算法通信模块,包括:
算法发送子模块,用于基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;
算法接收子模块,用于基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
可选地,所述公钥通信模块,包括:
接收子模块,用于基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述密钥通信模块,包括:
发送子模块,用于基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,所述装置还包括:
交换模块,用于在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述装置还包括:
压缩算法发送模块,用于基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;
压缩算法接收模块,用于基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
可选地,所述装置还包括:
压缩模块,用于在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
加密模块,用于采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
本发明实施例还公开了一种加密通信装置,应用于服务端,所述装置包括:
密码算法通信模块,用于基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块,用于基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
密钥通信模块,用于基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
密文通信模块,用于基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述密码算法通信模块,包括:
算法接收子模块,用于基于所述通信协议,接收所述客户端发送的所述客户端支持的密码算法;
算法发送子模块,用于基于所述通信协议,向所述客户端发送在所述客户端支持的密码算法中选择的密码算法。
可选地,所述公钥通信模块,包括:
发送子模块,用于基于所述通信协议,向所述客户端发送服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述密钥通信模块,包括:
接收子模块,用于基于所述通信协议,接收所述客户端发送的客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,所述装置还包括:
交换模块,用于在所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥之后,基于所述通信协议,与所述客户端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述装置还包括:
压缩算法接收模块,用于基于所述通信协议,接收所述客户端发送的所述客户端支持的压缩算法;
压缩算法发送模块,用于基于所述通信协议,向所述客户端发送在所述客户端支持的压缩算法中选择的压缩算法。
可选地,所述装置还包括:
压缩模块,用于在所述基于所述通信协议,与所述客户端进行密文信息的通信之前,采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
加密模块,用于采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
本发明实施例还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述任一项所述的方法。
本发明实施例还公开了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如上所述任一项所述的方法。
依据本发明实施例,通过基于所述通信协议,与服务端进行通信,以确定密码算法,通信协议使用物理地址寻址,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。
附图说明
图1是本发明的一种加密通信方法实施例的步骤流程图;
图2是本发明的又一种加密通信方法实施例的步骤流程图;
图3是本发明的一种加密通信装置实施例的结构框图;
图4是本发明的又一种加密通信装置实施例的结构框图;
图5是根据一示例性实施例示出的一种用于加密通信的电子设备的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
通信协议是一种基于链路层的用于加密通信的协议。通信协议使用物理地址(如MAC,Media Access Control Address,媒体存取控制位址)寻址。当数据传输时,源设备会根据目标设备的物理地址“寻址”,确保数据能够被正确地传送到目标设备。当设备接收到数据后,如果发现目的地址与本地的物理地址不一致,则会丢弃,只有真正的目标设备才会接收并处理收到的数据。
在发送数据时,按照通信协议将待发送的数据封装为相应的报文,报文的源地址为自身的物理地址,目的地址为接收方的物理地址。客户端或者服务端在接收报文后,如果报文的目的地址为自身的物理地址,则对该报文进行下一步处理,例如,确定报文的子协议类型、消息类型等,再根据子协议类型、消息类型等进行相应的处理。
例如,自治云是构成网络的基本结构单元,每个自治云可以包括自治服务器、分控服务器(如分控2K服务器)、边界路由服务器和终端等节点。其中,分控服务器就是一种网管设备。各个业务的数据包在进行传输前,需要通过各个自治云的自治服务器之间的通信,并根据自治云中的各个节点,配置出一条数据传输链路,各个业务的数据包根据数据传输链路,从数据发出节点经数据转发节点传输至数据接收节点。比如视联网自治云是视联网网络结构中的基本子结构,也是使视联网可以正常运行的最小结构单位。一个自治云在配置正确的情况下可以在自治云内部独立实现视联网的所有功能。这样当自治云由于通信故障无法和上下层自治云连接时,视联网业务依然可以在自治云内部实现。当自治云可以和上下层的自治云正常通信时,这些自治云就组成了一个范围更大的视联网,可以实现跨自治云的视联网业务。
其中,自治服务器是自治云的集中控制节点,主要功能包括对自治云中设备的注册注销、入网退网,跨自治云之间级联和接入管理等自治管控,实现对管理网控制信令的处理以及业务网络传输通道的维护。分控服务器是自治云的数据转发节点,具有一个上行接口和一个下行接口。边界路由服务器是自治云的数据转发节点,可以同时连接到两层自治云中,能够实现跨自治云的数据转发,如图中自治云和上层自治云之间通过边界路由服务器连接,自治云和下层自治云之间也是通过边界路由服务器连接。
在一个自治云中,一个分控服务器M下的终端A要与另一个分控服务器N下的终端B通信,数据传输链路为终端A-分控服务器M-分控服务器N-终端B,实际通信时,分为:终端A和分控服务器M之间的通信,分控服务器M和分控服务器N之间的通信,分控服务器N和终端B之间的通信。通信的一方作为客户端,另一方作为服务端。
在本发明的一种可选实施例中,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
握手阶段的具体内容可以包括协商密码算法、验证身份合法性、建立用于加密和消息鉴别码的密钥等。传输阶段的具体内容可以包括加密传输数据等。
通信协议在握手阶段的报文包括以下部分:以太网头部、通信协议头、握手协议字段。以太网头部包括物理地址和源物理地址,用于寻址。通信协议头包括子协议类型、版本、负载长度等。子协议类型包括握手协议(供握手阶段使用)、传输协议(供传输阶段使用)等,或者其他任意适用的类型,本发明实施例对此不做限制。版本用于区分通信协议的版本。负载长度用于标识报文中负载的长度。握手协议字段包括消息类型、消息长度、消息参数等。消息类型用来识别握手协议、消息长度时消息参数的长度、消息参数是不同信令的参数。
通信协议在传输阶段的报文包括以下部分:以太网头部、通信协议头、传输协议字段。以太网头部包括物理地址和源物理地址,用于寻址。通信协议头包括子协议类型、版本、负载长度等。子协议类型包括握手协议(供握手阶段使用)、传输协议(供传输阶段使用)等,或者其他任意适用的类型,本发明实施例对此不做限制。版本用于区分通信协议的版本。负载长度用于标识报文中负载的长度。传输协议字段包括密文数据、消息鉴别码。如果选择压缩,密文数据是明文数据先经过压缩再加密得到的密文数据。消息鉴别码用于数据完整性校验,例如HMAC(Hash-based Message Authentication Code,哈希运算消息鉴别码)。
参照图1,示出了本发明的一种加密通信方法实施例的步骤流程图,应用于客户端,该方法具体可以包括如下步骤:
步骤101,基于所述通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址。
在本发明实施例中,基于通信协议,客户端与服务端进行通信包括客户端向服务端发送报文,服务端向客户端发送报文。客户端在传输阶段之前,需要先跟服务端协商密码算法、加密的密钥等,或者还可以先跟服务端进行身份合法性验证,或者还可以跟服务端协商压缩算法,具体可以根据需要确定适用的握手方式,本发明实施例对此不做限制。
在本发明实施例中,客户端和服务端基于通信协议,与服务端进行通信,以确定密码算法。密码算法包括后续用于加密和解码的密码算法、还可以包括用于消息鉴别码的运算的密码算法,用于身份合法性验证的密码算法等。确定的密码算法为客户端和服务端都支持的密码算法,可以由客户端或服务端指定密码算法,本发明实施例对此不做限制。
在本发明的一种可选实施例中,基于所述通信协议,与服务端进行通信,以确定密码算法的一种具体实现方式中,可以包括:基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
客户端向服务端发送基于通信协议的报文,报文中包括客户端支持的密码算法。服务端接收到报文后,如果报文的目的物理地址为服务端的物理地址,则进一步确定报文是客户端发来的客户端支持的密码算法,然后服务端在客户端支持的密码算法中选择密码算法,选择的密码算法是服务端也支持的密码算法。服务端向客户端发送基于通信协议的报文,报文中包括服务端选择的密码算法。客户端接收到报文后,如果报文的目的物理地址为客户端的物理地址,则客户端也确定了最终要使用的密码算法。
在本发明的一种可选实施例中,在一种具体实现方式中,还可以包括:基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
压缩算法是用于在传输阶段对数据进行压缩和解压,以便减少数据的体积,节约网络带宽。
客户端向服务端发送基于通信协议的报文,报文中包括客户端支持的压缩算法。服务端接收到报文后,如果报文的目的物理地址为服务端的物理地址,则进一步确定报文是客户端发来的客户端支持的压缩算法,然后服务端在客户端支持的压缩算法中选择压缩算法,选择的压缩算法是服务端也支持的压缩算法。服务端向客户端发送基于通信协议的报文,报文中包括服务端选择的压缩算法。客户端接收到报文后,如果报文的目的物理地址为客户端的物理地址,则客户端也确定了最终要使用的压缩算法。
例如,客户端在入网后,先向服务端发送基于通信协议的报文,报文内容包括客户端可以支持的通信协议的最高版本号、随机数、会话ID、客户端支持的密码算法、客户端支持的压缩算法。服务端向客户端发送基于通信协议的报文,报文内容包括通信协议的一个版本号(取客户端支持的最高版本号和服务端支持的最高版本号中的较低者)、随机数、会话ID、选择的密码算法、选择的压缩算法。
步骤102,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥。
在本发明实施例中,客户端和服务端基于通信协议,与服务端进行通信,以得到服务端公钥。非对称加密算法的加密和解密的密码不一样,一个是公钥,另一个是私钥,公钥和私钥成对出现,公开的密钥叫公钥,只有自己知道的叫私钥,用公钥加密的数据只有对应的私钥可以解密,用私钥加密的数据只有对应的公钥可以解密。客户端与服务端进行通信,服务端将服务端公钥发送给客户端。具体可以采用任意适用的方式,本发明实施例对此不做限制。
例如,服务端直接将服务端公钥发送给客户端,客户端接收报文,解析出服务端公钥。
在本发明的一种可选实施例中,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥的一种具体实现方式中,可以包括:基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
服务端向客户端发送基于通信协议的报文,报文内容包括服务端数字证书、根证书、可接受证书列表和可接受验证列表。其中,服务端数字证书中包括服务端公钥。
根证书是第三方被大家信任的认证机构自签名的证书,通常服务端会内置。服务端数字证书是标识服务端身份信息的一个数字认证。服务端将服务端数字证书和根证书发给客户端,客户端可以用服务端数字证书中的公钥认证服务端的身份合法性。
可接受证书列表是指服务端可以接受的客户端的证书类型的列表。可接受验证列表是指服务端可以接受的客户端的验证信息类型的列表。服务端发送这两种列表给客户端,以供客户端根据这两个列表提供服务端要求的证书和/或验证信息。
步骤103,基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端。
在本发明实施例中,客户端和服务端基于通信协议,与服务端进行通信,以将采用服务端公钥加密的客户端密钥发送给所述服务端。客户端密钥是传输阶段客户端和服务端之间传输数据所使用的密钥。客户端需要采用服务端公钥对客户端密钥进行加密后,再发送给服务端。具体可以采用任意适用的方式,本发明实施例对此不做限制。
例如,客户端采用服务端公钥对客户端密钥进行加密,然后生成基于通信协议的报文,报文内容包括采用所述服务端公钥加密的客户端密钥。服务端接收该报文,采用服务端私钥解密,得到客户端密钥。
在本发明的一种可选实施例中,基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端的一种具体实现方式中,可以包括:基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
客户端向服务端发送基于通信协议的报文,报文内容包括客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据。其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
为了向服务端证明客户端的身份合法性,客户端要发送客户端证书信息给服务端。客户端证书信息可以采用任意适用的证书,本发明实施例对此不做限制。对所述客户端密钥和随机数进行签名,可以采用服务端公钥进行签名,服务端接收到签名数据后,可以采用服务端私钥验签,以证明客户端拥有服务端公钥。具体可以采用任意适用的方式,本发明实施例对此不做限制。
在本发明的一种可选实施例中,在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,还可以包括:基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
在握手阶段,客户端和服务端交换完上述信息之后,还可以再次相互确认以完成握手。客户端与服务端基于通信协议进行通信,交换确定的密码算法的确认信息、以及双方交换信息的散列值。双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识,还可以包括其他任意适用的信息,具体可以按照需要设定,本发明实施例对此不做限制。
例如,客户端向服务端发送基于通信协议的报文,报文内容包括确定的密码算法的确认信息,例如,确定的密码算法的标识或名称等作为确认信息,表示客户端已经准备完毕。客户端在握手阶段结束时,还可以将前述所有交换的信息的hash(哈希值)发送给服务端。服务端向客户端发送基于通信协议的报文,报文内容包括确定的密码算法的确认信息,例如,确定的密码算法的标识或名称等作为确认信息,表示服务端已经准备完毕。服务端在握手阶段结束时,可以将前述所有交换的信息的hash(哈希值)发送给客户端。
步骤104,基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
在本发明实施例中,在握手阶段完成后,客户端可以与服务端进行数据的传输。客户端可以向服务端发送密文信息,也可以接受服务端发送的密文信息。密文信息是采用前述确定的密码算法和客户端密钥,对明文信息加密产生的。
在本发明实施例中,客户端向服务端发送基于通信协议的报文,报文内容包括密文信息。服务端接收到报文后,采用客户端密钥解密,可以得到明文信息。服务端向客户端发送基于通信协议的报文,报文内容包括密文信息。客户端接收到报文后,采用客户端密钥解密,可以得到明文信息。
在本发明的一种可选实施例中,在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,还可以包括:采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
在客户端或服务端上,当数据需要压缩时,可以采用选择的压缩算法,对明文信息进行压缩,得到压缩的明文信息,再采用确定的密码算法和客户端密钥,对压缩的明文信息进行加密,以得到密文信息。
客户端或服务端在接收到密文信息后,先采用确定的密码算法和客户端密钥解密,得到压缩的明文信息,再采用选择的压缩算法,解压出明文信息。
在本发明实施例中,对要发送的明文信息或者压缩的明文信息,可以计算消息验证码MAC值,追加在明文信息或者压缩的明文信息的尾部,再采用密码算法和客户端密钥进行加密。
依据本发明实施例,通过基于所述通信协议,与服务端进行通信,以确定密码算法,通信协议使用物理地址寻址,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。
参照图2,示出了本发明的又一种加密通信方法实施例的步骤流程图,应用于服务端,该方法具体可以包括如下步骤:
步骤201,基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址。
在本发明的一种可选实施例中,所述基于所述通信协议,与客户端进行通信,以确定密码算法,包括:基于所述通信协议,接收所述客户端发送的所述客户端支持的密码算法;基于所述通信协议,向所述客户端发送在所述客户端支持的密码算法中选择的密码算法。
在本发明的一种可选实施例中,所述方法还包括:基于所述通信协议,接收所述客户端发送的所述客户端支持的压缩算法;基于所述通信协议,向所述客户端发送在所述客户端支持的压缩算法中选择的压缩算法。
在本发明实施例中,此步骤的具体实现方式可以参见前述实施例中的描述,此处不另赘述。
步骤202,基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端。
在本发明的一种可选实施例中,所述基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端,包括:基于所述通信协议,向所述客户端发送服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
在本发明实施例中,此步骤的具体实现方式可以参见前述实施例中的描述,此处不另赘述。
步骤203,基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥。
在本发明的一种可选实施例中,所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥,包括:基于所述通信协议,接收所述客户端发送的客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
在本发明的一种可选实施例中,在所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥之后,所述方法还包括:基于所述通信协议,与所述客户端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
在本发明实施例中,此步骤的具体实现方式可以参见前述实施例中的描述,此处不另赘述。
步骤204,基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
在本发明的一种可选实施例中,在所述基于所述通信协议,与所述客户端进行密文信息的通信之前,所述方法还包括:采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
在本发明实施例中,此步骤的具体实现方式可以参见前述实施例中的描述,此处不另赘述。
依据本发明实施例,通过基于所述通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址,基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端,基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥,基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3示出了本发明的一种加密通信装置实施例的结构框图,应用于客户端,具体可以包括如下模块:
密码算法通信模块301,用于基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块302,用于基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
密钥通信模块303,用于基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
密文通信模块304,用于基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述密码算法通信模块,包括:
算法发送子模块,用于基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;
算法接收子模块,用于基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
可选地,所述公钥通信模块,包括:
接收子模块,用于基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述密钥通信模块,包括:
发送子模块,用于基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,所述装置还包括:
交换模块,用于在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述装置还包括:
压缩算法发送模块,用于基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;
压缩算法接收模块,用于基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
可选地,所述装置还包括:
压缩模块,用于在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
加密模块,用于采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
依据本发明实施例,通过基于所述通信协议,与服务端进行通信,以确定密码算法,通信协议使用物理地址寻址,基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。
参照图4示出了本发明的一种加密通信装置实施例的结构框图,应用于服务端,具体可以包括如下模块:
密码算法通信模块401,用于基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块402,用于基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
密钥通信模块403,用于基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
密文通信模块404,用于基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述密码算法通信模块,包括:
算法接收子模块,用于基于所述通信协议,接收所述客户端发送的所述客户端支持的密码算法;
算法发送子模块,用于基于所述通信协议,向所述客户端发送在所述客户端支持的密码算法中选择的密码算法。
可选地,所述公钥通信模块,包括:
发送子模块,用于基于所述通信协议,向所述客户端发送服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述密钥通信模块,包括:
接收子模块,用于基于所述通信协议,接收所述客户端发送的客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,所述装置还包括:
交换模块,用于在所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥之后,基于所述通信协议,与所述客户端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述装置还包括:
压缩算法接收模块,用于基于所述通信协议,接收所述客户端发送的所述客户端支持的压缩算法;
压缩算法发送模块,用于基于所述通信协议,向所述客户端发送在所述客户端支持的压缩算法中选择的压缩算法。
可选地,所述装置还包括:
压缩模块,用于在所述基于所述通信协议,与所述客户端进行密文信息的通信之前,采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
加密模块,用于采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
依据本发明实施例,通过基于所述通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址,基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端,基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥,基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的,使得在链路层实现通信和加密的结合,保证了通信双方的合法性以及传输数据的安全性,降低了链路层的数据泄露或拦截的风险,提高了通信的安全性。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图5是根据一示例性实施例示出的一种用于加密通信的电子设备600的结构框图。例如,电子设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图5,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的加密通信方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理部件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件604为电子设备600的各种组件提供电力。电力组件604可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件614经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件614还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述停炉控制方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述停炉控制方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种加密通信方法,应用于客户端,所述方法包括:
基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述基于通信协议,与服务端进行通信,以确定密码算法,包括:
基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;
基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
可选地,所述基于所述通信协议,与所述服务端进行通信,以得到服务端公钥,包括:
基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端,包括:
基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,所述方法还包括:
基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述方法还包括:
基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;
基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
可选地,在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,所述方法还包括:
采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种加密通信方法,应用于服务端,所述方法包括:
基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
可选地,所述基于所述通信协议,与客户端进行通信,以确定密码算法,包括:
基于所述通信协议,接收所述客户端发送的所述客户端支持的密码算法;
基于所述通信协议,向所述客户端发送在所述客户端支持的密码算法中选择的密码算法。
可选地,所述基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端,包括:
基于所述通信协议,向所述客户端发送服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
可选地,所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥,包括:
基于所述通信协议,接收所述客户端发送的客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
可选地,在所述基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥之后,所述方法还包括:
基于所述通信协议,与所述客户端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
可选地,所述方法还包括:
基于所述通信协议,接收所述客户端发送的所述客户端支持的压缩算法;
基于所述通信协议,向所述客户端发送在所述客户端支持的压缩算法中选择的压缩算法。
可选地,在所述基于所述通信协议,与所述客户端进行密文信息的通信之前,所述方法还包括:
采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
可选地,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种加密通信方法和一种加密通信装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (13)

1.一种加密通信方法,其特征在于,应用于客户端,所述方法包括:
基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
2.根据权利要求1所述的方法,其特征在于,所述基于通信协议,与服务端进行通信,以确定密码算法,包括:
基于所述通信协议,向所述服务端发送所述客户端支持的密码算法;
基于所述通信协议,接收所述服务端在所述客户端支持的密码算法中选择的密码算法。
3.根据权利要求1所述的方法,其特征在于,所述基于所述通信协议,与所述服务端进行通信,以得到服务端公钥,包括:
基于所述通信协议,接收所述服务端发送的服务端数字证书、根证书、可接受证书列表和可接受验证列表;其中,所述服务端数字证书中包括服务端公钥。
4.根据权利要求3所述的方法,其特征在于,所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端,包括:
基于所述通信协议,向所述服务端发送客户端证书信息、采用服务端公钥加密的客户端密钥,和签名数据;其中,签名数据为对所述客户端密钥和随机数进行签名得到的。
5.根据权利要求1所述的方法,其特征在于,在所述基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端之后,所述方法还包括:
基于所述通信协议,与所述服务端交换确定的密码算法的确认信息,以及双方交换信息的散列值;所述双方交换信息包括以下至少一种:密码算法、服务端公钥、客户端公钥、随机数、会话标识。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述通信协议,向所述服务端发送所述客户端支持的压缩算法;
基于所述通信协议,接收所述服务端在所述客户端支持的压缩算法中选择的压缩算法。
7.根据权利要求6所述的方法,其特征在于,在所述基于所述通信协议,与所述服务端进行密文信息的通信之前,所述方法还包括:
采用所述选择的压缩算法,对所述明文信息进行压缩,得到压缩的明文信息;
采用所述密码算法和客户端密钥,对所述压缩的明文信息加密,得到所述密文信息。
8.根据权利要求1所述的方法,其特征在于,所述通信协议在握手阶段的报文由以太网头部、通信协议头、握手协议字段组成,所述通信协议在传输阶段的报文由以太网头部、通信协议头、传输协议字段组成。
9.一种加密通信方法,其特征在于,应用于服务端,所述方法包括:
基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
10.一种加密通信装置,其特征在于,应用于客户端,所述装置包括:
密码算法通信模块,用于基于通信协议,与服务端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块,用于基于所述通信协议,与所述服务端进行通信,以得到服务端公钥;
密钥通信模块,用于基于所述通信协议,与所述服务端进行通信,以将采用所述服务端公钥加密的客户端密钥发送给所述服务端;
密文通信模块,用于基于所述通信协议,与所述服务端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
11.一种加密通信装置,其特征在于,应用于服务端,所述装置包括:
密码算法通信模块,用于基于通信协议,与客户端进行通信,以确定密码算法;所述通信协议使用物理地址寻址;
公钥通信模块,用于基于所述通信协议,与所述客户端进行通信,以将服务端公钥发送给所述客户端;
密钥通信模块,用于基于所述通信协议,与所述客户端进行通信,以得到采用所述服务端公钥加密的客户端密钥;
密文通信模块,用于基于所述通信协议,与所述客户端进行密文信息的通信;其中,所述密文信息是采用所述密码算法和客户端密钥,对明文信息加密产生的。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如权利要求1至9中任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,其存储的计算机程序使得处理器执行如权利要求1至9中任一项所述的方法。
CN202311329364.XA 2023-10-13 2023-10-13 一种加密通信方法、装置、电子设备和存储介质 Pending CN117411682A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311329364.XA CN117411682A (zh) 2023-10-13 2023-10-13 一种加密通信方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311329364.XA CN117411682A (zh) 2023-10-13 2023-10-13 一种加密通信方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN117411682A true CN117411682A (zh) 2024-01-16

Family

ID=89495513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311329364.XA Pending CN117411682A (zh) 2023-10-13 2023-10-13 一种加密通信方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN117411682A (zh)

Similar Documents

Publication Publication Date Title
EP3001640B1 (en) Secure information exchange methods and wearable device
CN110912880B (zh) 配网方法及装置、电子设备及存储介质
US8898455B2 (en) System and method for authentication of a communication device
US20150089220A1 (en) Technique For Bypassing an IP PBX
CN106888206B (zh) 密钥交换方法、装置及系统
CN111050322B (zh) 基于gba的客户端注册和密钥共享方法、装置及系统
CN112202770B (zh) 设备联网方法及装置、设备、存储介质
US9735970B1 (en) Techniques for secure voice communication
US11889307B2 (en) End-to-end security for roaming 5G-NR communications
CN106657136B (zh) 终端设备、隐匿信道通信方法及其装置
US10673611B2 (en) Data transmission method, device, and system
US20240089096A1 (en) Handling joining and leaving of participants in videoconferencing with end-to-end encryption
CN107294968B (zh) 一种音视频数据的监控方法和系统
EP3627361B1 (en) Media content control
CN114630290A (zh) 语音加密通话的密钥协商方法、装置、设备及存储介质
US20240106981A1 (en) Hiding private user data in public signature chains for user authentication in video conferences
US20240064143A1 (en) Methods, mediums, and systems for verifying devices in an encrypted messaging system
WO2023226778A1 (zh) 身份认证方法、装置、电子设备及计算机可读存储介质
CN112217862A (zh) 一种数据通信方法、装置、终端设备和存储介质
Sabah et al. Developing an end-to-end secure chat application
CN117411682A (zh) 一种加密通信方法、装置、电子设备和存储介质
CN109104361B (zh) 即时通信方法、装置、电子设备及存储介质
CN112187771B (zh) 一种认证方法、装置和用于认证的装置
CN116318652A (zh) 密钥分发方法、装置、电子设备和存储介质
US11843636B1 (en) Methods, mediums, and systems for verifying devices in an encrypted messaging system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication