CN112602289B - 数据加密处理方法、数据解密处理方法、装置、电子设备及可读存储介质 - Google Patents

数据加密处理方法、数据解密处理方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN112602289B
CN112602289B CN202080004574.XA CN202080004574A CN112602289B CN 112602289 B CN112602289 B CN 112602289B CN 202080004574 A CN202080004574 A CN 202080004574A CN 112602289 B CN112602289 B CN 112602289B
Authority
CN
China
Prior art keywords
key
target
public key
data
target data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202080004574.XA
Other languages
English (en)
Other versions
CN112602289A (zh
Inventor
杨艳江
钟胤
魏卓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN112602289A publication Critical patent/CN112602289A/zh
Application granted granted Critical
Publication of CN112602289B publication Critical patent/CN112602289B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/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/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Abstract

本申请实施例提供一种数据加密处理方法、数据解密处理方法、装置及电子设备,其中,数据加密处理方法包括:第一设备获取待加密的目标数据,第一设备根据第一目标密钥,对目标数据进行加密,得到目标数据的加密数据。其中,第一设备是根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成上述第一目标密钥的。第一设备进而向第二设备发送目标数据的加密数据。该加密数据发送至第二设备之后,用于通过根据所述第二设备的私钥、第三设备的公钥以及第一设备的公钥生成的第二目标密钥进行解密。该方法能保证加密侧和解密侧设备的性能不受影响。

Description

数据加密处理方法、数据解密处理方法、装置、电子设备及可 读存储介质
技术领域
本申请涉及通信技术,尤其涉及一种数据加密处理方法、数据解密处理方法、装置及电子设备。
背景技术
随着无线通信技术的快速发展,越来越来的行业和领域开始应用这一技术,车联网技术即是其中一员。在车联网中,安装在车辆上的车载设备通过无线通信技术,对信息网络平台中的所有车辆的动态信息以及基础设施的信息等进行有效利用,以在车辆运行中提供不同的功能服务,例如进行车距控制、导航服务等。车联网中的车辆实时与基础设施以及周边车辆进行交互,因此,车联网中的每台车辆均会产生大量的数据。这些数据例如可以包括:车辆诊断数据、日志、车内系统存取数据以及与外界的通信数据等。这些数据需要上传至云服务器进行保存。由于车辆的安全行驶至关重要,因此,保存在云服务器上的数据可能需要被监管机构中的设备(本申请实施例均称为监管设备)读取。由于车辆的数据为敏感数据,因此,在传输以及存储时均需要以加密的形式进行,读取方需要读取数据时再进行解密读取。例如,车辆在向云服务器上传数据前,对数据进行加密得到密文,并将密文发送给云服务器,云服务器保存密文。云服务器或监管设备需要读取数据时,首先对密文进行解密才可以得到可以使用的明文数据。因此,在车联网中如何对数据进行加密和解密,是值得解决的问题。
现有技术中,提出了一种基于随机密钥的加密和解密方法,该方法中,由车辆、云服务器和监管设备分别生成各自的公私钥对。车辆在加密车辆的数据时,生成一个随机密钥,并分别使用车辆、云服务器以及监管设备的公钥对随机密钥加密,以及使用该随机密钥对车辆的数据进行加密。云服务器或监管设备需要读取车辆的数据时,使用私钥解密出随机密钥,再使用随机密钥机密出车辆的数据。
但是,使用现有方法的加密复杂度高,可能对车辆运行时的性能产生影响。
发明内容
本申请实施例提供一种数据加密处理方法、数据解密处理方法、装置及电子设备,用于解决现有技术中加密复杂度高可能影响车辆运行性能的问题。
第一方面,本申请实施例提供一种数据加密处理方法,该方法包括:
第一设备获取待加密的目标数据,第一设备根据第一目标密钥,对目标数据进行加密,得到目标数据的加密数据。其中,第一设备是根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成上述第一目标密钥的。第一设备进而向第二设备发送目标数据的加密数据。该加密数据发送至第二设备之后,用于通过第二目标密钥进行解密,该第二目标密钥根据第二设备的私钥、第三设备的公钥以及第一设备的公钥生成。
在该方法中,第一设备基于第二设备的公钥、第三设备的公钥以及第一设备的私钥,生成第一目标密钥,并使用该第一目标密钥加密目标数据,得到目标数据的加密数据。第一设备进而仅发送该加密数据即可,第二设备接收到该加密数据后,仅需要使用与第一设备相应的方式,根据第二设备的私钥、第一设备的公钥以及第三设备的公钥生成第二目标密钥,并使用该第二目标密钥解密出目标数据。第一设备通过生成第一目标密钥而非对第一目标密钥加密,使得在发送加密数据时无需携带加密的第一目标密钥而发送仅包括加密数据的密文即可,从而避免密文的长度过长。另外,第一设备无需分别对第一目标密钥加密,还可以减少加密时的计算量,因此,使得第一设备的加密复杂度得到极大程度的降低,进而使得数据加密不会占用过多的计算资源以及传输资源,保证第一设备的性能不受影响。
在一种可能的设计中,第一设备可以根据第二设备的公钥、第三设备的公钥、第一设备的私钥以及目标数据的属性信息,生成上述第一目标密钥。相应的,上述第二目标密钥可以根据第二设备的私钥、第三设备的公钥、第一设备的公钥以及目标数据的属性信息生成。
其中,目标数据的属性信息包括目标数据所属的时间标识与目标数据所属的数据类型中的至少一种。
在该方法中,第一设备在第二设备的公钥、第一设备的私钥和第三设备的公钥之外,结合目标数据的属性信息生成第一目标密钥,能够使得第一目标密钥的安全性得到极大提升。
在一种可能的设计中,第一设备向第二设备发送所述目标数据的加密数据,包括:
第一设备发送目标数据的加密数据以及目标数据的属性信息。
在该方法中,第一设备向第二设备发送目标数据的属性信息,使得第二设备可以依据属性信息正确解密出目标数据。
在一种可能的设计中,所述第一设备根据所述第二设备的公钥、第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息,生成所述第一目标密钥,包括:
第一设备根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥,进而,所述第一设备根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥。相应的,所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成。
在一种可能的设计中,所述第一设备根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥,包括:
所述第一设备根据所述第一中间密钥以及所述目标数据所属的时间标识,生成第二中间密钥,进而,所述第一设备根据所述第二中间密钥以及所述目标数据所属的数据类型,生成所述第一目标密钥。相应的,所述第二目标密钥根据第四中间密钥以及所述目标数据所属的数据类型生成,所述第四中间密钥根据所述第三中间密钥以及所述目标数据所属的时间标识生成。
在该方法中,首先,第一设备在第一中间密钥之上,结合目标数据所属的时间标识生成第二中间密钥,使得第二中间密钥的安全性得到保护。其次,在第二中间密钥之上,结合目标数据所属的数据类型生成第一目标密钥,能够细化数据加密的粒度,即使存在某一第一目标密钥泄露的情况,也不会影响其他数据的安全性。
在一种可能的设计中,所述第一设备根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥,包括:
所述第一设备对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一中间密钥。相应的,所述第三中间密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
在该方法中,第一设备通过对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,从而生成一密钥用于加密,进行解密的第二设备相应也可以基于双线性配对处理生成一密钥用于解密,从而使得第一设备与第二设备之间无需交互三方密钥。
在一种可能的设计中,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥,生成第一目标密钥,包括:
所述第一设备对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一目标密钥。相应的,所述第二目标密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
在该方法中,第一设备通过对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,从而生成一密钥用于加密,进行解密的第二设备相应也可以基于双线性配对处理生成一密钥用于解密,从而使得第一设备与第二设备之间无需交互三方密钥。
在该方法中,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥,生成第一目标密钥之前,还包括:
所述第一设备基于双线性配对处理,生成所述第一设备的公钥和所述第一设备的私钥。
在该方法中,所述双线性配对处理为非对称双线性配对处理。
第二方面,本申请实施例提供一种数据解密处理方法,该方法包括:
第二设备接收待解密的加密数据,该加密数据通过对目标数据使用第一目标密钥加密得到,该第一目标密钥根据第一设备的私钥、第二设备的公钥以及第三设备的公钥生成。第二设备根据第一设备的公钥、第三设备的公钥以及第二设备的私钥,生成第二目标密钥,第二设备根据第二目标密钥,对加密数据进行解密,得到加密数据的目标数据。
在该方法中,第二设备基于与第一设备相应的方法,根据第一设备的公钥、第三设备的公钥以及第二设备的私钥生成第二目标密钥,并使用该第二目标密钥解密出目标数据,由于第一设备和第二设备均基于公钥和私钥生成目标密钥,因此,第一设备传输的密文中并不包括第一目标密钥,因此,能够避免密文的长度过长,并且,第二设备无需执行解密过程以解密出第二目标密钥,也使得解密复杂度得以降低,因此,使用本实施例的解密方式能够避免占用过多的计算资源和传输资源,保证第二设备的性能不受影响。
在一种可能的设计中,所述第二设备根据第一设备的公钥、第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥,包括:
第二设备根据第一设备的公钥、第三设备的公钥、第二设备的私钥以及目标数据的属性信息,生成第二目标密钥。其中,第一目标密钥根据第二设备的公钥、第三设备的公钥、第一设备的私钥以及所述目标数据的属性信息生成。
目标数据的属性信息包括目标数据所属的时间标识与目标数据所属的数据类型中的至少一种。
在一种可能的设计中,所述第二设备根据所述第一设备的公钥、第三设备的公钥、所述第二设备的私钥以及所述目标数据的属性信息,生成所述第二目标密钥,包括:
所述第二设备根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥。所述第二设备根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥。相应的,所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成。
在一种可能的设计中,所述第二设备根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥,包括:
所述第二设备根据所述第三中间密钥以及所述目标数据所属的时间标识,生成第四中间密钥。所述第二设备根据所述第四中间密钥以及所述目标数据所属的数据类型,生成所述第二目标密钥。相应的,所述第一目标密钥根据第二中间密钥以及所述目标数据所属的数据类型生成,所述第二中间密钥根据所述第一中间密钥以及所述目标数据所属的时间标识生成。
在一种可能的设计中,所述第二设备根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥,包括:
所述第二设备对所述第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第三中间密钥。相应的,所述第一中间密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
在一种可能的设计中,所述第二设备根据第一设备的公钥、第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥,包括:
所述第二设备对第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第二目标密钥。相应的,所述第一目标密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
在一种可能的设计中,所述第二设备根据第一设备的公钥、第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥之前,还包括:
所述第二设备基于双线性配对处理,生成所述第二设备的公钥和所述第二设备的私钥。
在一种可能的设计中,所述双线性配对处理为非对称双线性配对处理。
第三方面,本申请实施例提供一种数据加密处理装置,该装置应用于第一设备,该装置包括:处理模块和收发模块。
所述处理模块,用于获取待加密的目标数据;以及,根据第一目标密钥,对所述目标数据进行加密,得到所述目标数据的加密数据,其中,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥生成所述第一目标密钥;所述收发模块,用于向所述第二设备发送所述目标数据的加密数据,所述加密数据用于通过第二目标密钥进行解密,所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成。
在一种可能的设计中,所述处理模块具体用于:
根据所述第二设备的公钥、第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息,生成所述第一目标密钥。相应的,所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥、所述第一设备的公钥以及所述目标数据的属性信息生成。
其中,所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
在一种可能的设计中,所述收发模块具体用于:
向所述第二设备发送所述目标数据的加密数据以及所述目标数据的属性信息。
在一种可能的设计中,所述处理模块具体用于:
根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥;以及,根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥。相应的,所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成。
在一种可能的设计中,所述处理模块具体用于:
根据所述第一中间密钥以及所述目标数据所属的时间标识,生成第二中间密钥;以及,根据所述第二中间密钥以及所述目标数据所属的数据类型,生成所述第一目标密钥。相应的,所述第二目标密钥根据第四中间密钥以及所述目标数据所属的数据类型生成,所述第四中间密钥根据所述第三中间密钥以及所述目标数据所属的时间标识生成。
在一种可能的设计中,所述处理模块具体用于:
对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一中间密钥。相应的,所述第三中间密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
在一种可能的设计中,所述处理模块具体用于:
对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一目标密钥。相应的,所述第二目标密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
在一种可能的设计中,所述处理模块还用于:
基于双线性配对处理,生成所述第一设备的公钥和所述第一设备的私钥。
在一种可能的设计中,所述双线性配对处理为非对称双线性配对处理。
第四方面,本申请实施例提供一种数据解密处理装置,应用于第二设备,该装置包括:收发模块和处理模块。
所述收发模块,用于接收待解密的加密数据,所述加密数据通过对目标数据使用第一目标密钥加密得到,所述第一目标密钥根据第一设备的私钥、所述第二设备的公钥以及第三设备的公钥生成。
所述处理模块,用于根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥;以及,根据所述第二目标密钥,对所述加密数据进行解密,得到所述加密数据的所述目标数据。
在一种可能的设计中,所述处理模块具体用于:
根据所述第一设备的公钥、第三设备的公钥、所述第二设备的私钥以及所述目标数据的属性信息,生成所述第二目标密钥,所述第一目标密钥根据所述第二设备的公钥、所述第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息生成。
其中,所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
在一种可能的设计中,所述处理模块具体用于:
根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥;以及,根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥,所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成。
在一种可能的设计中,所述处理模块具体用于:
根据所述第三中间密钥以及所述目标数据所属的时间标识,生成第四中间密钥;以及,根据所述第四中间密钥以及所述目标数据所属的数据类型,生成所述第二目标密钥,所述第一目标密钥根据第二中间密钥以及所述目标数据所属的数据类型生成,所述第二中间密钥根据所述第一中间密钥以及所述目标数据所属的时间标识生成。
在一种可能的设计中,所述处理模块具体用于:
对所述第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第三中间密钥,所述第一中间密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
在一种可能的设计中,所述处理模块具体用于:
对第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第二目标密钥,所述第一目标密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
在一种可能的设计中,所述处理模块还用于:
基于双线性配对处理,生成所述第二设备的公钥和所述第二设备的私钥。
在一种可能的设计中,所述双线性配对处理为非对称双线性配对处理。
在上述第一方面、第二方面第三方面和第四方面中,作为一种可能的设计,第一设备、第二设备和第三设备可以分别为车辆、云服务器和监管设备中的任意一种。
第五方面,本申请实施例提供一种电子设备,包括:处理器、存储器和收发器,所述存储器与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述电子设备执行上述第一方面或第二方面所述的方法步骤;所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
第六方面,本申请实施例提供一种可读存储介质,所述可读存储介质中存储有执行指令,其特征在于,当电子设备的至少一个处理器执行所述执行指令时,所述电子设备执行上述第一方面或第二方面所述的方法步骤。
第七方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码被计算机执行时,使得所述计算机执行上述第一方面或上述第二方面所述的方法。
第八方面,本申请实施例提供一种芯片,所述芯片与存储器相连,用于读取并执行所述存储器中存储的软件程序,以实现上述第一方面或上述第二方面所提供的方法。
附图说明
图1为本申请实施例提供的一种示例性的系统架构图;
图2为本申请实施例提供的另一种示例性的系统架构图;
图3为申请实施例提供的数据加密处理方法的流程示意图;
图4为第一设备结合第一中间密钥和目标数据所属的时间标识生成的密文c的示例;
图5为第一设备结合第一中间密钥和目标数据所属的数据类型生成的密文c的示例;
图6为第一设备结合第一中间密钥和目标数据所属的时间标识以及数据类型生成的密文 c的示例;
图7为本申请实施例提供的数据解密处理方法的流程示意图;
图8为本申请实施例提供的一种数据加密处理装置的模块结构图;
图9为本申请实施例提供的一种数据解密处理装置的模块结构图;
图10为本申请实施例提供的一种电子设备1000的结构示意图。
具体实施方式
现有技术中提供的基于随机密钥的加密和解密方法中,由车辆、云服务器和监管设备分别生成各自的公私钥对。车辆在加密车辆的数据时,生成一个随机密钥,并分别使用车辆、云服务器以及监管设备的公钥对随机密钥加密,以及使用该随机密钥对车辆的数据进行加密。云服务器或监管设备需要读取车辆的数据时,使用私钥解密出随机密钥,再使用随机密钥机密出车辆的数据。
在车辆端,假设车辆生成的公私钥对为(pkV,skV),其中,pkV表示车辆的公钥,skV表示车辆的私钥。云服务器生成的公私钥对为(pkS,skS),其中,pks表示云服务器的公钥,sks表示云服务器的私钥。监管设备生成的公私钥对为(pkAA,skAA),其中,pkAA表示监管设备的公钥,skAA表示监管设备的私钥。假设待加密的车数据为m,车辆加密该车数据m时,生成一个随机密钥ek。车辆基于车辆、云服务器和监管设备的公钥对车数据m进行加密,所得到的加密数据为[E(pkV,ek),E(pkS,ek),E(pkAA,ek),Enc(ek,m)]。其中,E(pkV,ek)表示使用车辆的公钥pkV对随机密钥ek使用非对称加密算法进行加密后的数据,E(pkS,ek)表示使用云服务器的公钥pkS对随机密钥ek使用非对称加密算法进行加密后的数据,E(pkAA,ek) 表示使用监管设备的公钥pkAA对随机密钥ek使用非对称加密算法进行加密后的数据,Enc(ek,m)表示对随机密钥使用对称加密算法进行加密后的数据。
假设加密后的数据[E(pkV,ek),E(pkS,ek),E(pkAA,ek),Enc(ek,m)]被发送到云服务器端,则相应的,云服务器对该数据解密时,首先使用云服务器的私钥skS从[E(pkV,ek),E(pkS,ek), E(pkAA,ek),Enc(ek,m)]中解密出随机密钥ek,再使用随机密钥ek从[E(pkV,ek),E(pkS,ek), E(pkAA,ek),Enc(ek,m)]中解密出车数据m。
在上述加密过程中,除了使用随机密钥对车数据加密外,还需要使用车辆的公钥、云服务器的公钥以及监管设备的公钥分别对随机密钥加密,因此,使得加密时的计算量较大。另外,通过上述方法所形成的密文中,除了使用随机密钥对车数据加密所形成的密文外,还包括了使用车辆的公钥、云服务器的公钥以及监管设备的公钥分别对随机密钥加密后的密文,因此,使得密文的整体长度较长。因此,上述的加密方法的加密复杂度高,需要占用较多的计算资源以及传输资源,从而可能对车辆运行时的性能产生影响。
考虑到现有技术中利用加密端对随机密钥加密解密端解密出随机密钥的方式可能导致车辆运行时的性能受到影响的问题,本申请实施例通过在加密端及解密端分别生成随机密钥,而无需加密随机密钥并将其携带在密文中,从而避免出现分别使用各方公钥对随机密钥加密所导致的加密复杂度高的问题,以及,避免在密文中携带对随机密钥加密后的密文所导致的密文过长的问题,进而保证车辆运行时的性能。
图1为本申请实施例提供的一种示例性的系统架构图,如图1所示,该方法可以应用于车联网中,具体涉及车联网中的车辆、云服务器以及监管设备。监管设备可以指车辆监管部门中的设备,例如属于交通警察部门的设备、属于生产车辆的生产厂家的设备等。其中,车辆和监管设备分别同云服务器通信连接。车辆在运行过程中,生成车辆诊断数据、日志、车内系统存取数据以及与外界的通信数据等车辆数据。车辆可以按照预设的周期,或者,基于事件触发方式,对生成的车辆数据进行加密,并将加密后的数据发送给云服务器。云服务器将加密后的数据进行保存。当云服务器需要使用车辆数据时,使用与车辆端加密方法相应的解密方法对车辆数据进行解密并使用。当监管设备需要使用车辆数据时,可以向云服务器请求获取车辆数据,云服务器接收到请求后,将保存的加密后的车辆数据发送给监管设备,监管设备使用与车辆端加密方法相应的解密方法对车辆数据进行解密并使用。
图2为本申请实施例提供的另一种示例性的系统架构图,如图2所示,该方法可以应用于车联网中,具体涉及车联网中的车辆、云服务器和终端设备。终端设备可以是向用户提供语音和/或数据连通性的设备,例如,具有无线连接功能的手持式设备、车载设备、路边单元等。常见的终端设备包括:手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,例如智能手表、智能手环、计步器等。在该示例性的系统架构中,车辆加密数据以及云服务器保存数据的方式与上述图1中相同,此处不再赘述。当终端设备需要查看车辆数据时,可以向云服务器发送请求信息。云服务器接收到请求信息后,对车辆数据进行解密,并根据终端设备的权限、所请求的数据类型等信息,筛选出待发送给终端设备的数据,并对待发送给终端设备的数据进行加密后,将加密数据发送给终端设备。终端设备接收到数据后,使用与云服务器端加密方法相应的解密方法对车辆数据进行解密并使用。
对于上述图1和图2所示例的车联网,所基于的通信系统可以为宽带码分多址(wideband code division multiple access,WCDMA)通信系统、长期演进(long termevolution,LTE)通信系统、云无线接入网络(cloud radio access network,CRAN)、5G移动通信系统或新一代无线(new radio,NR)通信系统、或者未来移动通信系统、WiFi系统、未来演进的公共陆地移动网络(public land mobile network,PLMN)网络等,本申请实施例对此不作具体限定。
应理解,本申请实施例所提供的技术方案,除了可以应用于上述图1和图2所示例的车联网之外,还可以应用于其他涉及三方设备交互进行数据加密和解密的网络和系统中。为便于描述,本申请实施例以下均以在车联网中的应用为例对本申请实施例的技术方案进行说明。
在介绍本申请实施例的技术方案之前,首先对本申请实施例涉及的技术术语进行介绍:
1、对称加密
对称加密是指加密所使用的密钥与解密所使用的密钥相同。常用的对称加密算法包括数据加密标准(data encryption standard,DES)、高级加密标准(advancedencryption standard, AES)、Blowfish等。
2、非对称加密
非对称加密是指加密所使用的密钥与解密所使用的密钥不同。加密方使用公钥进行加密,解密方使用私钥进行解密。公钥和私钥子在数学上具有特定的关系,使用该公钥加密的数据只能由对应的私钥进行解密。常用的非对称加密算法包括公钥密码算法(RSAPublic Key System,RSA)、椭圆曲线加密算法(elliptic curve cryptography,ECC)等。
3、密钥导出函数
密钥导出函数(key derivation function,KDF)使用伪随机函数从秘密值导出一个或多个密钥。KDF可用于将密钥扩展到更长的密钥或获得所需格式的密钥。密钥导出函数通常与非秘密参数一起使用,以从公共秘密值导出一个或多个密钥。通过这种方式,可以防止获得派生密钥的攻击者学习关于输入秘密值或任何其他导出密钥的有用信息,也可以使用KDF 来确保派生密钥具有其他期望的属性,例如,在某些特定加密系统中避免“弱密钥”。
4、双线性配对
定义三个素数p阶乘法循环群G1,G2和GT,定义映射e:G1×G2→GT,满足如下三个性质:
(1)双线性:
对于
Figure BDA0002944379620000081
g2∈G2,
Figure BDA0002944379620000082
b∈Zp,均有e(g1a,g2b)=e(g1,g2)ab成立。
(2)非退化性:
Figure BDA0002944379620000084
使得e(g1,g2)≠1GT
(3)可计算性:
存在有效的算法,对于
Figure BDA0002944379620000083
g2∈G2,均可计算e(g1,g2)。
则称上述映射为双线性映射或者双线性配对。
其中,如果G1=G2,则称该双线性配对为对称双线性配对,否则,称该双线性配对为非对称双线性配对。
利用上述的双线性配对,可以将线性系数转变为指数。
本申请以下实施例分别从加密设备侧和解密设备侧分别对本申请实施例的方案进行说明。
图3为申请实施例提供的数据加密处理方法的流程示意图,该方法的执行主体为第一设备,该第一设备为涉及加密和解密数据的三方设备中的加密数据的设备,例如上述图1或图 2中所示例的车辆。如图3所示,该方法包括:
S301、第一设备获取待加密的目标数据。
示例性的,第一设备为车辆,车辆在运行过程中可能生成车辆诊断数据、日志、车内系统存取数据以及与外界的通信数据等,车辆可以将这些数据进行保存。车辆可以按照预设周期或者事件触发的方式加密并发送这些数据。例如,预设的周期为一天,则车辆可以在每天的某个时刻,获取车辆上保存的当天的数据,并使用后续的方式将这些数据加密后发送给云服务器。又例如,当车辆接收到云服务器发送的获取数据的指示后,基于该指示,获取车辆上保存的数据,并使用后续的方式将这些数据加密后发送给云服务器。
S302、第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥,生成第一目标密钥。
可选的,涉及加密和解密数据的三方设备包括第一设备、第二设备和第三设备,因此,第二设备和第三设备分别为三方设备中的另外两方设备。作为一种示例,第二设备可以为上述的云服务器,第三设备可以为上述的监管设备。
可选的,第一设备、第二设备和第三设备在进行加密或解密之前,可以分别基于系统公共参数生成各自的公钥和私钥。
一种可选方式中,该系统公共参数可以通过第一设备、第二设备和第三设备协商确定。示例性的,由第一设备生成系统公共参数,并将系统公共参数发送给第二设备和第三设备,第二设备和第三设备若同意使用该系统公共参数,则将该系统公共参数保存并向第一设备回复确认信息,若第二设备和第三设备中有一方不同意使用该系统公共参数,则可以生成新的系统公共参数并分别发送给另外两方并由另外两方确认,进而确定出三方均确认的系统公共参数。
另一种可选方式中,该系统公共参数可以委托三方设备中的某一方设备确定。示例性的,可以由第一设备生成系统公共参数,第一设备将生成的系统公共参数发送给第二设备和第三设备,第二设备和第三设备保存该系统公共参数并基于该系统公共参数生成各自的公钥和私钥。
再一种可选方式中,该系统公共参数可以委托可信的第三方设备确定。其中,该可信的第三方设备为第一设备、第二设备、第三设备之外的设备。该可信的第三方设备可以分别与第一设备、第二设备和第三设备通信。
可选的,第一设备、第二设备和第三设备可以使用同样的方式分别生成各自的公钥和私钥。作为一种可选的方式,第一设备、第二设备和第三设备可以基于双线性配对处理,生成各自的公钥和私钥。
如前文所述,双线性配对可以为对称双线性配对或非对称双线性配对。在基于双线性配对处理生成公钥和私钥时,可以使用对称双线性配对,也可以使用非对称双线性配对。以下分别进行说明。
在说明之前,首先假设第一设备的公钥为pkV,私钥为skV,第二设备的公钥为pks,私钥为sks,第三设备的公钥为pkAA,私钥为skAA。本申请以下实施例均以这些符号来表示。另外,基于非线性配对处理生成的公钥和私钥以公私钥对的形式表示。
1、使用对称双线性配对。
以上述第一种确定系统公共参数的方式为例,基于前文中对于双线性配对的定义解释,第一设备、第二设备和第三设备可以协商确定出系统公共参数G1,假设P为G1的生成元,则第一设备的公私钥对(pkV,skV)可以通过如下公式(1)表示。
(pkV,skV)=(x.P,x∈ZP) (1)
其中,x.P表示第一设备的公钥,x表示第一设备的私钥。
第二设备的公私钥对(pkS,skS)可以通过如下公式(2)表示。
(pkS,skS)=(y.P,y∈ZP) (2)
其中,y.P表示第二设备的公钥,y表示第二设备的私钥。
第三设备的公私钥对(pkAA,skAA)可以通过如下公式(3)表示。
(pkAA,skAA)=(z.P,z∈ZP) (3)
其中,y.P表示第二设备的公钥,y表示第二设备的私钥。
2、使用非对称线性配对。
继续以上述第一种确定系统公共参数的方式为例,基于前文中对于双线性配对的定义解释,第一设备、第二设备和第三设备可以协商确定出系统公共参数G1和G2,假设P1为G1的生成元,假设P2为G2的生成元,则第一设备的公私钥对(pkV,skV)可以通过如下公式(4)表示。
(pkV,skV)=(x.P1,x∈ZP) (4)
其中,x.P1表示第一设备的公钥,x表示第一设备的私钥。
第二设备的公私钥对(pkS,skS)可以通过如下公式(5)表示。
(pkS,skS)=((y.P1,y.P2),y∈ZP) (5)
其中,(y.P1,y.P2)表示第二设备的公钥,y表示第二设备的私钥。
第三设备的公私钥对(pkAA,skAA)可以通过如下公式(6)表示。
(pkAA,skAA)=(z.P,z∈ZP) (3)
其中,z.P表示第三设备的公钥,z表示第二设备的私钥。
在上述使用非线性配对生成公私钥对的过程中,第一设备和第二设备中需有一方的公钥同时使用P1和P2,上述示出的为第一设备的公钥仅使用P1,第二设备的公钥同时使用P1和 P2的情况。应理解,在具体实施过程中,也可以第一设备的公钥同时使用P1和P2,第二设备的公钥仅使用P2,在这种情况下,第一设备的公私钥对使用上述公式(5)所示的方式,仅将公式(5)中的y替换为x即可,第二设备的公私钥对使用上述公式(4)所示的方式,仅将公式(4)中的x替换为y即可。
应理解,当第一设备使用其他方式生成公钥和私钥时,上述系统公共参数的具体形式可能为其他的形式,而不限于上述的G1,或者,G1及G2。
可选的,第一设备、第二设备和第三设备分别按照例如上述的方式,基于系统公共参数生成各自的公钥和私钥之后,可以将公钥提供给另外两方。示例性的,第一设备可以将自己的公钥发送给第二设备和第三设备。
第一设备、第二设备和第三设备分别将各自的公钥提供给另外两方之后,第一设备可以获取到第二设备的公钥以及第三设备的公钥。在此基础上,第一设备基于第二设备的公钥、第三设备的公钥以及第一设备的私钥,生成第一目标密钥。
S303、第一设备根据上述第一目标密钥,对上述目标数据进行加密,得到上述目标数据的加密数据。
可选的,第一设备可以使用前文所述的对称加密算法对目标数据进行加密。假设上述目标数据为m,经过前述步骤所得到的上述第一目标密钥为ek,则加密数据可以为Enc(ek,m)。
S304、第一设备向第二设备发送上述目标数据的加密数据。
值得说明的是,本申请实施例中,第一设备为加密目标数据的设备,第二设备为解密目标数据的设备,第三设备为三方设备中的一设备。本申请实施例对于第一设备、第二设备和第三设备的具体形态不作限定。例如,在前述图1所示的应用场景中,第一设备、第二设备和第三设备可以分别为车辆、云服务器和监管设备中的任一设备。
第一设备在发送数据时,仅需要发送对目标数据加密后的加密数据,而无需发送上述第一目标密钥。第二设备接收到加密数据后,使用与第一设备生成第一目标密钥的方法相应的方法生成第二目标密钥,并使用与第一设备加密目标数据的方法相应的方法解密出目标数据。第二设备根据第二设备的私钥、第三设备的公钥以及第一设备的公钥生成第二目标密钥,并使用第二目标密钥解密上述加密数据,得到上述目标数据。第二设备的解密过程将在下述实施例中详细说明。
值得说明的是,上述步骤S302仅需要在步骤S303之前执行即可,步骤S302与步骤S301 的执行顺序不分先后。
本实施例中,第一设备基于第二设备的公钥、第三设备的公钥以及第一设备的私钥,生成第一目标密钥,并使用该第一目标密钥加密目标数据,得到目标数据的加密数据。第一设备进而仅发送该加密数据即可,第二设备接收到该加密数据后,仅需要使用与第一设备相应的方式,根据第二设备的私钥、第一设备的公钥以及第三设备的公钥生成第二目标密钥,并使用该第二目标密钥解密出目标数据。第一设备通过生成第一目标密钥而非对第一目标密钥加密,使得在发送加密数据时无需携带加密的第一目标密钥而发送仅包括加密数据的密文即可,从而避免密文的长度过长。另外,第一设备无需分别对第一目标密钥加密,还可以减少加密时的计算量,因此,使得第一设备的加密复杂度得到极大程度的降低,进而使得数据加密不会占用过多的计算资源以及传输资源,保证第一设备的性能不受影响。
第一设备在根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成上述第一目标密钥时,可以基于下述方式中的任意一种可选方式进行。
第一种可选方式中,第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成一密钥,并将该生成的密钥直接作为上述第一目标密钥。相应的,第一设备使用该第一目标密钥加密目标数据,并发送加密数据。
第二种可选方式中,第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成一密钥,并将该生成的密钥作为第一中间密钥,在该第一中间密钥的基础上,结合目标数据的属性信息,生成第一目标密钥。相应的,第一设备使用该第一目标密钥加密目标数据,并发送加密数据以及目标数据的属性信息。
以下首先对上述两种可选方式中,第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成一密钥的过程进行说明。
如前文所述,第一设备、第二设备和第三设备分别可以基于双线性配对处理生成各自的公钥和私钥,相应的,第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成一密钥时,可以相应对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,生成一密钥。
一种方式中,如果前述生成公钥和私钥时使用对称双线性配对处理,则第一设备相应使用对称双线性配对处理生成一密钥。
可选的,继续假设第一设备的公钥为pkV,私钥为skV,第二设备的公钥为pks,私钥为 sks,第三设备的公钥为pkAA,私钥为skAA,则第一设备首先使用e(pkS,pkAA)x表示密钥,进而,对e(pkS,pkAA)x进行对称双线性配对处理,得到一密钥e(P,P)xyz,经过该处理,将 e(pkS,pkAA)x中的线性系数转变为e(P,P)xyz中的指数系数。
值得说明的是,上述过程中所出现的参数的含义与前文中的含义相同,可以参见前文,此处不再赘述。
如果使用上述第一种可选方式生成第一目标密钥,则第一设备可以直接将e(P,P)xyz作为第一目标密钥,并使用该第一目标密钥加密目标数据。
如果使用上述第二种可选方式生成第一目标密钥,则第一设备可以将e(P,P)xyz作为第一中间密钥,在该第一中间密钥的基础上,结合目标数据的属性信息生成第一目标密钥,再使用第一目标密钥加密目标数据。
另一种方式中,如果前述生成公钥和私钥时使用非对称双线性配对处理,则第一设备相应使用非对称双线性配对处理生成一密钥。
可选的,继续假设第一设备的公钥为pkV,私钥为skV,第二设备的公钥为pks,私钥为 sks,第三设备的公钥为pkAA,私钥为skAA,则第一设备首先使用e(y.P1,pkAA)x表示密钥,进而,对e(y.P1,pkAA)x进行非对称双线性配对处理,得到一密钥e(P1,P2)xyz,经过该处理,将e(y.P1,pkAA)x中的线性系数转变为e(P1,P2)xyz中的指数系数。
值得说明的是,上述过程中所出现的参数的含义与前文中的含义相同,可以参见前文,此处不再赘述。
如果使用上述第一种可选方式生成第一目标密钥,则第一设备可以直接将e(P1,P2)xyz作为第一目标密钥,并使用该第一目标密钥加密目标数据。
如果使用上述第二种可选方式生成第一目标密钥,则第一设备可以将e(P1,P2)xyz作为第一中间密钥,在该第一中间密钥的基础上,结合目标数据的属性信息生成第一目标密钥,再使用第一目标密钥加密目标数据。
本实施例中,第一设备通过对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,从而生成一密钥用于加密,进行解密的第二设备相应也可以基于双线性配对处理生成一密钥用于解密,从而使得第一设备与第二设备之间无需交互三方密钥。
以上说明了第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成一密钥的过程。如前文所述,如果采用前述的第一种可选方式生成第一目标密钥,则第一设备直接利用生成的一密钥作为第一目标密钥并加密目标数据。如果采用前述的第二种可选方式生成第一目标密钥,则第一设备将生成的一密钥作为第一中间密钥,在第一中间密钥的基础上,结合目标数据的属性信息生成第一目标密钥。以下说明第一设备结合第一中间密钥和目标数据的属性信息生成第一目标密钥的过程。
可选的,第一目标密钥的属性信息可以包括目标数据所属的时间标识与目标数据所属的数据类型中的至少一种。
其中,目标数据所属的时间可以为目标数据生成的时段,该时段例如为某一天。目标数据所属的时间标识可以为时间值。示例性的,某个目标数据所属的时间标识为20200101。目标数据所属的数据类型例如可以包括驾驶数据类型、充电数据类型、k-box数据类型等。
第一设备结合第一中间密钥和目标数据的属性信息生成第一目标密钥方式可能为以下任意一种:
1、第一设备结合第一中间密钥和目标数据所属的时间标识生成第一目标密钥。
可选的,第一设备可以将上述的每个时段作为周期,例如,一天为一个时段,则一天为一个周期。在每个周期起始时,第一设备结合第一中间密钥和该周期的时间标识生成第一目标密钥。
一种示例中,第一设备可以使用前文所解释的密钥导出函数KDF生成第一目标密钥。
假设第一目标密钥为ek,则第一设备可以使用如下公式(7),利用KDF计算ek。
ek=KDF(e(P,P)xyz,session-tag) (7)
其中,e(P,P)xyz为通过前述的方法所得到的第一中间密钥,session-tag表示当前周期的周期标识。
基于该方式得到第一目标密钥后,第一设备在发送加密数据时,假设对目标数据加密后的加密数据为c1,则第一设备发送的密文c为(session-tag,c1),即第一设备发送加密数据和目标数据所属的时间标识。
图4为第一设备结合第一中间密钥和目标数据所属的时间标识生成的密文c的示例,如图4所示,密文c的前一部分为目标数据所属的时间标识session-tag,在时间标识session-tag 之后为加密后的数据c1。
在该方式中,第一设备在第一中间密钥之上,结合目标数据所属的时间标识生成第一目标密钥,使得第一设备不直接使用第一中间密钥作为第一目标密钥,进而使得由公钥和私钥所生成的第一中间密钥的安全性得到保护。
2、第一设备结合第一中间密钥和目标数据所属的数据类型生成第一目标密钥。
可选的,第一设备为每一种数据类型分别生成该种类型的第一目标密钥。
示例性的,假设第一设备上的数据类型的数量为t,t为大于0的整数。则对于第i(i为大于0小于等于t的任意整数)种数据类型type-tagi,则第一设备可以使用如下公式(8),利用KDF计算第i种数据类型的第一目标密钥eki
eki=KDF(e(P,P)xyz,type-tagi) (8)
其中,e(P,P)xyz为通过前述的方法所得到的第一中间密钥。
经过上述处理,每一种数据类型均具有各自的第一目标密钥。
第一设备在对目标数据加密时,根据目标数据所属的数据类型使用数据类型对应的第一目标密钥进行加密。
示例性的,假设目标数据m=(m1,…,mt),m内的任意一个目标数据mi表示属于第i种数据类型的数据,第一设备可以使用下述公式(9)为mi加密,得到密文ci
ci=Enc(eki,mi) (9)
其中,eki为前述的第i种数据类型的第一目标密钥,mi为属于第i种数据类型的目标数据。
使用该方式,第一设备在发送加密数据时的密文c可以为如下形式:
c=((type-tag1,c1),(type-tag2,c2),…,(type-tagt,ct))
图5为第一设备结合第一中间密钥和目标数据所属的数据类型生成的密文c的示例,如图5所示,密文c包括多个部分,每一部分包括加密后的数据的数据类型以及加密后的数据。
在该方式中,第一设备在第一中间密钥之上,结合目标数据所属的数据类型分别生成每种数据类型对应的第一目标密钥,并使用每种数据类型对应的第一目标密钥加密每种目标数据,从而更加细化数据加密的粒度,使得不同类型的数据使用不同的密钥进行加密,通过这种方式,即使存在某一第一目标密钥泄漏的情况,也不会影响其他目标数据的安全性。
3、第一设备结合第一中间密钥、目标数据所属的时间标识以及目标数据所属的数据类型生成第一目标密钥。
该方式为上述的两种方式的结合,第一设备可以如下任意一种方式对上述两种方式进行结合。
第一种结合方式中,第一设备首先使用上述第一种方式,即结合第一中间密钥和目标数据所属的时间标识生成一密钥,并将该密钥作为第二中间密钥,进而,使用上述第二种方式,将该第二中间密钥作为上述第二种方式中的第一中间密钥,结合该第二中间密钥和目标数据所属的数据类型生成第一目标密钥。
第二种结合方式中,第一设备首先使用上述第二种方式,即结合第一中间密钥和目标数据所属的数据类型,分别生成每种数据类型的一密钥,将这些密钥分别作为一个第二中间密钥,进而,针对每个第二中间密钥,使用上述第一种方式,将该第二中间密钥作为上述第一种方式中的第一中间密钥,结合该第二中间密钥和目标数据所属的时间标识生成每种数据类型的第一目标密钥。
基于上述两种结合方式中的任意一种所得到的密文c可以为如下形式:
c=(session-tag,(type-tag1,c1),(type-tag2,c2),…,(type-tagt,ct))
其中,各参数的含义同前文相同,此处不再赘述。
图6为第一设备结合第一中间密钥和目标数据所属的时间标识以及数据类型生成的密文c的示例,如图6所示,密文c的前一部分为目标数据所属的时间标识session-tag,在时间标识session-tag之后包括多个部分,每个部分包括加密后的数据的数据类型以及加密后的数据。
使用该方式后,既能使得第一中间密钥的安全性得到保护,又能使得在某一第一目标密钥泄漏的情况,不会影响其他目标数据的安全性。
以下说明解密设备侧进行数据解密的过程。
图7为本申请实施例提供的数据解密处理方法的流程示意图,该方法的执行主体为第二设备,该第二设备为涉及加密和解密数据的三方设备中的解密数据的设备,例如上述图1或图2中所示例的云服务器。如图7所示,该方法包括:
S701、第二设备接收待解密的加密数据。
可选的,第二设备可以接收第一设备发送的密文,进而,将密文作为待解密的加密数据。
其中,加密数据是通过前述实施例的加密方法,对目标数据使用第一目标密钥加密得到的。
应理解,步骤S701和下述的步骤S702可以不是连续执行。示例性的,第二设备从第一设备接收加密数据之后,首先将其保存。在某些事件的触发下,例如,用户指示第二设备提供车辆运行数据时,第二设备执行下述步骤S702-S703,以得到目标数据。
S702、第二设备根据第一设备的公钥、第三设备的公钥以及第二设备的私钥,生成第二目标密钥。
第二设备生成第二目标密钥的过程与前述的第一设备生成第一目标密钥的过程相同,区别在于,第一设备使用的参数为第二设备的公钥、第三设备的公钥以及第一设备的私钥,而第二设备使用的参数为第一设备的公钥、第三设备的公钥以及第二设备的私钥。
可选的,与前述的加密方式相对应的,第二设备可以仅基于第一设备的公钥、第三设备的公钥以及第二设备的私钥生成第二目标密钥,或者,第二设备也可以基于第一设备的公钥、第三设备的公钥、第二设备的私钥以及目标数据的属性信息,生成第二目标密钥。
如果基于第一设备的公钥、第三设备的公钥、第二设备的私钥以及目标数据的属性信息,生成第二目标密钥,则第二设备可以首先根据第一设备的公钥、第三设备的公钥以及第二设备的私钥,生成第三中间密钥,再根据该第三中间密钥以及目标数据的属性信息生成第二目标密钥。
其中,第二设备根据第三中间密钥以及目标数据的属性信息生成第二目标密钥的方式包括以下几种:
1、根据第三中间密钥以及目标数据所属的时间标识生成第二目标密钥。
在这种方式中,第二设备首先从密文中读取到目标数据中所属的时间标识,并使用与前述第一设备根据第一中间密钥以及目标数据所属的时间标识生成第一目标密钥时相同的方法,生成第二目标密钥,具体可以参照前述的实施例,此处不再赘述。
2、根据第三中间密钥以及目标数据所属的数据类型生成第二目标密钥。
在这种方式中,第二设备首先从密文中读取到目标数据中所属的数据类型,并使用与前述第一设备根据第一中间密钥以及目标数据所属的数据类型生成第一目标密钥时相同的方法,生成每种数据类型的第二目标密钥,具体可以参照前述的实施例,此处不再赘述。
3、根据第三中间密钥以及目标数据所属的时间标识以及数据类型生成第二目标密钥。
在这种方式中,第二设备首先从密文中读取到目标数据中所属的时间标识以及数据类型,并使用与前述第一设备根据第一中间密钥以及目标数据所属的数据类型生成第一目标密钥时相同的方法,生成第二目标密钥。例如,第二设备首先根据第三中间密钥以及目标数据所属的时间标识,生成第四中间密钥,再根据第四中间密钥以及目标数据所属的数据类型,生成第二目标密钥。具体可以参照前述的实施例,此处不再赘述。
另外,与第一设备端相应的,第二设备子在根据第一设备的公钥、第三设备的公钥以及第二设备的私钥生成第二目标密钥时,可以对第一设备的公钥、第三设备的公钥以及第二设备的私钥进行双线性配对处理,以得到第二目标密钥,或者,得到第三中间密钥。
S703、第二设备根据上述第二目标密钥,对上述加密数据进行解密,得到上述目标数据。
可选的,第二设备使用与第一设备相应的解密算法,使用第二目标密钥解密出目标数据。
本实施例中,第二设备基于与第一设备相应的方法,根据第一设备的公钥、第三设备的公钥以及第二设备的私钥生成第二目标密钥,并使用该第二目标密钥解密出目标数据,由于第一设备和第二设备均基于公钥和私钥生成目标密钥,因此,第一设备传输的密文中并不包括第一目标密钥,因此,能够避免密文的长度过长,并且,第二设备无需执行解密过程以解密出第二目标密钥,也使得解密复杂度得以降低,因此,使用本实施例的解密方式能够避免占用过多的计算资源和传输资源,保证第二设备的性能不受影响。
图8为本申请实施例提供的一种数据加密处理装置的模块结构图,该装置可以为前述的第一设备,也可以为能够使得第一设备实现本申请实施例提供的方法中的第一设备的功能的装置,例如该装置可以是第一设备中的装置或芯片系统。如图8所示,该装置包括:处理模块801和收发模块802。
处理模块801,用于获取待加密的目标数据;以及,根据第一目标密钥,对目标数据进行加密,得到目标数据的加密数据,其中,第一设备根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成第一目标密钥。
收发模块802,用于向第二设备发送目标数据的加密数据,该加密数据用于通过根据第二设备的私钥、第三设备的公钥以及第一设备的公钥生成的第二目标密钥进行解密。
作为一种可选的实施方式,处理模块801具体用于:
根据第二设备的公钥、第三设备的公钥、第一设备的私钥以及目标数据的属性信息,生成第一目标密钥,第二目标密钥根据第二设备的私钥、第三设备的公钥、第一设备的公钥以及目标数据的属性信息生成。
其中,目标数据的属性信息包括目标数据所属的时间标识与目标数据所属的数据类型中的至少一种。
作为一种可选的实施方式,收发模块802具体用于:
发送目标数据的加密数据以及目标数据的属性信息。
作为一种可选的实施方式,处理模块801具体用于:
根据第二设备的公钥、第三设备的公钥以及第一设备的私钥,生成第一中间密钥;以及,根据第一中间密钥以及目标数据的属性信息,生成第一目标密钥,第二目标密钥根据第三中间密钥以及目标数据的属性信息生成,第三中间密钥根据第二设备的私钥、第三设备的公钥以及第一设备的公钥生成。
作为一种可选的实施方式,处理模块801具体用于:
根据第一中间密钥以及目标数据所属的时间标识,生成第二中间密钥;以及,根据第二中间密钥以及目标数据所属的数据类型,生成第一目标密钥,第二目标密钥根据第四中间密钥以及目标数据所属的数据类型生成,第四中间密钥根据第三中间密钥以及目标数据所属的时间标识生成。
作为一种可选的实施方式,处理模块801具体用于:
对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,生成第一中间密钥,第三中间密钥通过对第二设备的私钥、第三设备的公钥以及第一设备的公钥进行双线性配对处理生成。
作为一种可选的实施方式,处理模块801具体用于:
对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理,生成第一目标密钥,第二目标密钥通过对第二设备的私钥、第三设备的公钥以及第一设备的公钥进行双线性配对处理生成。
作为一种可选的实施方式,处理模块801还用于:
基于双线性配对处理,生成第一设备的公钥和第一设备的私钥。
作为一种可选的实施方式,上述的双线性配对处理为非对称双线性配对处理。
在上述各实施方式中,第一设备可以为车辆、云服务器以及监管设备中的任意一种。
本申请实施例提供的数据加密处理装置,可以执行上述方法实施例中的方法步骤,其实现原理和技术效果类似,在此不再赘述。
图9为本申请实施例提供的一种数据解密处理装置的模块结构图,该装置可以为前述的第二设备,也可以为能够使得第二设备实现本申请实施例提供的方法中的第二设备的功能的装置,例如该装置可以是第二设备中的装置或芯片系统。如图9所示,该装置包括:收发模块901处理模块902。
收发模块901,用于接收待解密的加密数据,该加密数据通过对目标数据使用第一目标密钥加密得到,第一目标密钥根据第一设备的私钥、第二设备的公钥以及第三设备的公钥生成。
处理模块902,用于根据第一设备的公钥、第三设备的公钥以及第二设备的私钥,生成第二目标密钥;以及,根据第二目标密钥,对加密数据进行解密,得到加密数据的目标数据。
作为一种可选的实施方式,处理模块902具体用于:
根据第一设备的公钥、第三设备的公钥、第二设备的私钥以及目标数据的属性信息,生成第二目标密钥,第一目标密钥根据第二设备的公钥、第三设备的公钥、第一设备的私钥以及目标数据的属性信息生成。
其中,目标数据的属性信息包括目标数据所属的时间标识与目标数据所属的数据类型中的至少一种。
作为一种可选的实施方式,处理模块902具体用于:
根据第一设备的公钥、第三设备的公钥以及第二设备的私钥,生成第三中间密钥;以及,根据第三中间密钥以及目标数据的属性信息,生成第二目标密钥,第一目标密钥根据第一中间密钥以及目标数据的属性信息生成,第一中间密钥根据第二设备的公钥、第三设备的公钥以及第一设备的私钥生成。
作为一种可选的实施方式,处理模块902具体用于:
根据第三中间密钥以及目标数据所属的时间标识,生成第四中间密钥;以及,根据第四中间密钥以及目标数据所属的数据类型,生成第二目标密钥,第一目标密钥根据第二中间密钥以及目标数据所属的数据类型生成,第二中间密钥根据第一中间密钥以及目标数据所属的时间标识生成。
作为一种可选的实施方式,处理模块902具体用于:
对第一设备的公钥、第三设备的公钥以及第二设备的私钥进行双线性配对处理,生成第三中间密钥,第一中间密钥通过对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理生成。
作为一种可选的实施方式,处理模块902具体用于:
对第一设备的公钥、第三设备的公钥以及第二设备的私钥进行双线性配对处理,生成第二目标密钥,第一目标密钥通过对第二设备的公钥、第三设备的公钥以及第一设备的私钥进行双线性配对处理生成。
作为一种可选的实施方式,处理模块902还用于:
基于双线性配对处理,生成第二设备的公钥和第二设备的私钥。
作为一种可选的实施方式,双线性配对处理为非对称双线性配对处理。
在上述各实施方式中,第二设备可以为车辆、云服务器以及监管设备中的任意一种。
本申请实施例提供的数据解密处理装置,可以执行上述方法实施例中的方法步骤,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,确定模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC) 的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)) 或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk (SSD))等。
图10为本申请实施例提供的一种电子设备的结构示意图。该电子设备可以为前述实施例中所述的第一设备,也可以为前述实施例中所述的第二设备。如图10所示,该电子设备1000 可以包括:处理器101(例如CPU)、存储器102、收发器103;收发器103耦合至处理器101,处理器101控制收发器103的收发动作。存储器102中可以存储各种指令,以用于完成各种处理功能以及实现本申请实施例中第一设备或第二设备执行的方法步骤。
可选的,本申请实施例涉及的电子设备还可以包括:电源104、系统总线105以及通信端口106。收发器103可以集成在电子设备的收发信机中,也可以为电子设备上独立的收发天线。系统总线105用于实现元件之间的通信连接。上述通信端口106用于实现电子设备与其他外设之间进行连接通信。
在本申请实施例中,上述处理器101用于与存储器102耦合,读取并执行存储器102中的指令,以实现上述方法实施例中第一设备或第二设备执行的方法步骤。收发器103与处理器101耦合,由处理器101控制收发器103进行消息收发,其实现原理和技术效果类似,在此不再赘述。
该图10中提到的系统总线可以是外设部件互连标准(peripheral componentinterconnect, PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。所述系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备 (例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(random access memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
该图10中提到的处理器可以是通用处理器,包括中央处理器CPU、网络处理器(network processor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可选的,本申请实施例还提供一种可读存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如上述图2至图7所示实施例的方法。
可选的,本申请实施例还提供一种运行指令的芯片,所述芯片用于执行上述图2至图7 所示实施例的方法。
本申请实施例还提供一种程序产品,所述程序产品包括计算机程序,所述计算机程序存储在存储介质中,至少一个处理器可以从所述存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序时可实现上述图2至图7所示实施例的方法。
在本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/ 或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系;在公式中,字符“/”,表示前后关联对象是一种“相除”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c, a-b,a-c,b-c,或a-b-c,其中,a,b,c可以是单个,也可以是多个。
可以理解的是,在本申请实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围。
可以理解的是,在本发明的实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (34)

1.一种数据加密处理方法,其特征在于,包括:
第一设备获取待加密的目标数据;
所述第一设备根据第一目标密钥,对所述目标数据进行加密,得到所述目标数据的加密数据,其中,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对生成所述第一目标密钥;
所述第一设备向所述第二设备发送所述目标数据的加密数据,所述加密数据用于通过第二目标密钥进行解密,所述第二目标密钥为根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对生成的。
2.根据权利要求1所述的方法,其特征在于,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥,生成所述第一目标密钥,包括:
所述第一设备根据所述第二设备的公钥、第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息,生成所述第一目标密钥;
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成,具体为:
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥、所述第一设备的公钥以及所述目标数据的属性信息生成;
所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
3.根据权利要求2所述的方法,其特征在于,所述第一设备向所述第二设备发送所述目标数据的加密数据,包括:
所述第一设备向所述第二设备发送所述目标数据的加密数据以及所述目标数据的属性信息。
4.根据权利要求2或3所述的方法,其特征在于,所述第一设备根据所述第二设备的公钥、第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息,生成所述第一目标密钥,包括:
所述第一设备根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥;
所述第一设备根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥;
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥、所述第一设备的公钥以及所述目标数据的属性信息生成,具体为:
所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成。
5.根据权利要求4所述的方法,其特征在于,所述第一设备根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥,包括:
所述第一设备根据所述第一中间密钥以及所述目标数据所属的时间标识,生成第二中间密钥;
所述第一设备根据所述第二中间密钥以及所述目标数据所属的数据类型,生成所述第一目标密钥;
所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,具体为:
所述第二目标密钥根据第四中间密钥以及所述目标数据所属的数据类型生成,所述第四中间密钥根据所述第三中间密钥以及所述目标数据所属的时间标识生成。
6.根据权利要求5所述的方法,其特征在于,所述第一设备根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥,包括:
所述第一设备对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一中间密钥;
所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成,具体为:
所述第三中间密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
7.根据权利要求1-3、5、6任一项所述的方法,其特征在于,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥,生成第一目标密钥之前,还包括:
所述第一设备基于双线性配对处理,生成所述第一设备的公钥和所述第一设备的私钥。
8.根据权利要求6所述的方法,其特征在于,所述双线性配对处理为非对称双线性配对处理。
9.一种数据解密处理方法,其特征在于,包括:
第二设备接收待解密的加密数据,所述加密数据通过对目标数据使用第一目标密钥加密得到,所述第一目标密钥为根据第一设备的私钥、所述第二设备的公钥以及第三设备的公钥进行双线性配对生成的;
所述第二设备根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥进行双线性配对生成第二目标密钥;
所述第二设备根据所述第二目标密钥,对所述加密数据进行解密,得到所述加密数据的所述目标数据。
10.根据权利要求9所述的方法,其特征在于,所述第二设备根据第一设备的公钥、第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥,包括:
所述第二设备根据所述第一设备的公钥、第三设备的公钥、所述第二设备的私钥以及所述目标数据的属性信息,生成所述第二目标密钥;
所述第一目标密钥根据第一设备的私钥、所述第二设备的公钥以及第三设备的公钥生成,具体为:
所述第一目标密钥根据所述第二设备的公钥、所述第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息生成;
所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
11.根据权利要求10所述的方法,其特征在于,所述第二设备根据所述第一设备的公钥、第三设备的公钥、所述第二设备的私钥以及所述目标数据的属性信息,生成所述第二目标密钥,包括:
所述第二设备根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥;
所述第二设备根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥;
所述第一目标密钥根据所述第二设备的公钥、所述第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息生成,具体为:
所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成。
12.根据权利要求11所述的方法,其特征在于,所述第二设备根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥,包括:
所述第二设备根据所述第三中间密钥以及所述目标数据所属的时间标识,生成第四中间密钥;
所述第二设备根据所述第四中间密钥以及所述目标数据所属的数据类型,生成所述第二目标密钥;
所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,具体为:
所述第一目标密钥根据第二中间密钥以及所述目标数据所属的数据类型生成,所述第二中间密钥根据所述第一中间密钥以及所述目标数据所属的时间标识生成。
13.根据权利要求11或12所述的方法,其特征在于,所述第二设备根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥,包括:
所述第二设备对所述第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第三中间密钥;
所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成,具体为:
所述第一中间密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
14.根据权利要求9-12任一项所述的方法,其特征在于,所述第二设备根据第一设备的公钥、第三设备的公钥以及所述第二设备的私钥,生成第二目标密钥之前,还包括:
所述第二设备基于双线性配对处理,生成所述第二设备的公钥和所述第二设备的私钥。
15.根据权利要求14所述的方法,其特征在于,所述双线性配对处理为非对称双线性配对处理。
16.一种数据加密处理装置,其特征在于,应用于第一设备,所述装置包括:处理模块和收发模块;
所述处理模块,用于获取待加密的目标数据;以及,
根据第一目标密钥,对所述目标数据进行加密,得到所述目标数据的加密数据,其中,所述第一设备根据第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对生成所述第一目标密钥;
所述收发模块,用于向所述第二设备发送所述目标数据的加密数据,所述加密数据用于通过第二目标密钥进行解密,所述第二目标密钥为根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对生成的。
17.根据权利要求16所述的装置,其特征在于,所述处理模块具体用于:
根据所述第二设备的公钥、第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息,生成所述第一目标密钥;
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成,具体为:
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥、所述第一设备的公钥以及所述目标数据的属性信息生成;
所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
18.根据权利要求17所述的装置,其特征在于,所述收发模块具体用于:
向所述第二设备发送所述目标数据的加密数据以及所述目标数据的属性信息。
19.根据权利要求17或18所述的装置,其特征在于,所述处理模块具体用于:
根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥,生成第一中间密钥;以及,
根据所述第一中间密钥以及所述目标数据的属性信息,生成所述第一目标密钥;
所述第二目标密钥根据所述第二设备的私钥、所述第三设备的公钥、所述第一设备的公钥以及所述目标数据的属性信息生成,具体为:
所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成。
20.根据权利要求19所述的装置,其特征在于,所述处理模块具体用于:
根据所述第一中间密钥以及所述目标数据所属的时间标识,生成第二中间密钥;以及,
根据所述第二中间密钥以及所述目标数据所属的数据类型,生成所述第一目标密钥;
所述第二目标密钥根据第三中间密钥以及所述目标数据的属性信息生成,具体为:
所述第二目标密钥根据第四中间密钥以及所述目标数据所属的数据类型生成,所述第四中间密钥根据所述第三中间密钥以及所述目标数据所属的时间标识生成。
21.根据权利要求20所述的装置,其特征在于,所述处理模块具体用于:
对所述第二设备的公钥、第三设备的公钥以及所述第一设备的私钥进行双线性配对处理,生成所述第一中间密钥;
所述第三中间密钥根据所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥生成,具体为:
所述第三中间密钥通过对所述第二设备的私钥、所述第三设备的公钥以及所述第一设备的公钥进行双线性配对处理生成。
22.根据权利要求16-18、20、21任一项所述的装置,其特征在于,所述处理模块还用于:
基于双线性配对处理,生成所述第一设备的公钥和所述第一设备的私钥。
23.根据权利要求21所述的装置,其特征在于,所述双线性配对处理为非对称双线性配对处理。
24.根据权利要求16-18、20、21、23任一项所述的装置,其特征在于,所述第一设备为车辆、云服务器以及监管设备中的任意一种。
25.一种数据解密处理装置,其特征在于,应用于第二设备,所述装置包括:收发模块和处理模块;
所述收发模块,用于接收待解密的加密数据,所述加密数据通过对目标数据使用第一目标密钥加密得到,所述第一目标密钥为根据第一设备的私钥、所述第二设备的公钥以及第三设备的公钥进行双线性配对生成的;
所述处理模块,用于根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥进行双线性配对生成第二目标密钥;以及,
根据所述第二目标密钥,对所述加密数据进行解密,得到所述加密数据的所述目标数据。
26.根据权利要求25所述的装置,其特征在于,所述处理模块具体用于:
根据所述第一设备的公钥、第三设备的公钥、所述第二设备的私钥以及所述目标数据的属性信息,生成所述第二目标密钥;
所述第一目标密钥根据第一设备的私钥、所述第二设备的公钥以及第三设备的公钥生成,具体为:
所述第一目标密钥根据所述第二设备的公钥、所述第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息生成;
所述目标数据的属性信息包括所述目标数据所属的时间标识与所述目标数据所属的数据类型中的至少一种。
27.根据权利要求26所述的装置,其特征在于,所述处理模块具体用于:
根据所述第一设备的公钥、所述第三设备的公钥以及所述第二设备的私钥,生成第三中间密钥;以及,
根据所述第三中间密钥以及所述目标数据的属性信息,生成所述第二目标密钥;
所述第一目标密钥根据所述第二设备的公钥、所述第三设备的公钥、所述第一设备的私钥以及所述目标数据的属性信息生成,具体为:
所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成。
28.根据权利要求27所述的装置,其特征在于,所述处理模块具体用于:
根据所述第三中间密钥以及所述目标数据所属的时间标识,生成第四中间密钥;以及,
根据所述第四中间密钥以及所述目标数据所属的数据类型,生成所述第二目标密钥;
所述第一目标密钥根据第一中间密钥以及所述目标数据的属性信息生成,具体为:
所述第一目标密钥根据第二中间密钥以及所述目标数据所属的数据类型生成,所述第二中间密钥根据所述第一中间密钥以及所述目标数据所属的时间标识生成。
29.根据权利要求27或28所述的装置,其特征在于,所述处理模块具体用于:
对所述第一设备的公钥、第三设备的公钥以及所述第二设备的私钥进行双线性配对处理,生成所述第三中间密钥;
所述第一中间密钥根据所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥生成,具体为:
所述第一中间密钥通过对所述第二设备的公钥、所述第三设备的公钥以及所述第一设备的私钥进行双线性配对处理生成。
30.根据权利要求25-28任一项所述的装置,其特征在于,所述处理模块还用于:
基于双线性配对处理,生成所述第二设备的公钥和所述第二设备的私钥。
31.根据权利要求25所述的装置,其特征在于,所述双线性配对处理为非对称双线性配对处理。
32.根据权利要求25-28、31任一项所述的装置,其特征在于,所述第二设备为车辆、云服务器以及监管设备中的任意一种。
33.一种电子设备,其特征在于,包括:处理器、存储器和收发器;
所述存储器与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述电子设备执行权利要求1-8任一项或权利要求9-15任一项所述的方法步骤;
所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
34.一种可读存储介质,所述可读存储介质中存储有执行指令,其特征在于,当电子设备的至少一个处理器执行所述执行指令时,所述电子设备执行权利要求1-8任一项或权利要求9-15任一项所述的方法步骤。
CN202080004574.XA 2020-02-24 2020-02-24 数据加密处理方法、数据解密处理方法、装置、电子设备及可读存储介质 Active CN112602289B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/076438 WO2021168614A1 (zh) 2020-02-24 2020-02-24 数据加密处理方法、数据解密处理方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112602289A CN112602289A (zh) 2021-04-02
CN112602289B true CN112602289B (zh) 2021-12-21

Family

ID=75208099

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080004574.XA Active CN112602289B (zh) 2020-02-24 2020-02-24 数据加密处理方法、数据解密处理方法、装置、电子设备及可读存储介质

Country Status (3)

Country Link
EP (1) EP4087180A4 (zh)
CN (1) CN112602289B (zh)
WO (1) WO2021168614A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024060149A1 (zh) * 2022-09-22 2024-03-28 Oppo广东移动通信有限公司 密钥验证方法、密钥获取方法及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539610A (zh) * 2014-12-25 2015-04-22 华中科技大学 一种提高外包加密数据共享功能的代理重加密方法
CN108401243A (zh) * 2018-02-23 2018-08-14 广州大学 车载自组网消息认证方法与系统
WO2019220298A1 (en) * 2018-05-14 2019-11-21 nChain Holdings Limited Method and system for communicating a secret

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2564909C (en) * 2004-04-30 2011-06-28 Research In Motion Limited Systems and methods to securely generate shared keys
US8732462B2 (en) * 2011-07-07 2014-05-20 Ziptr, Inc. Methods and apparatus for secure data sharing
US20130254536A1 (en) * 2012-03-22 2013-09-26 Workshare, Ltd. Secure server side encryption for online file sharing and collaboration
CN106533662A (zh) * 2016-11-03 2017-03-22 北京奇虎科技有限公司 一种传输网络安全密钥的方法与装置
CN107733646A (zh) * 2017-11-30 2018-02-23 中国联合网络通信集团有限公司 加密方法、解密方法和加密解密系统
CN109495454A (zh) * 2018-10-26 2019-03-19 北京车和家信息技术有限公司 认证方法、装置、云端服务器及车辆

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539610A (zh) * 2014-12-25 2015-04-22 华中科技大学 一种提高外包加密数据共享功能的代理重加密方法
CN108401243A (zh) * 2018-02-23 2018-08-14 广州大学 车载自组网消息认证方法与系统
WO2019220298A1 (en) * 2018-05-14 2019-11-21 nChain Holdings Limited Method and system for communicating a secret

Also Published As

Publication number Publication date
CN112602289A (zh) 2021-04-02
EP4087180A4 (en) 2023-01-04
EP4087180A1 (en) 2022-11-09
WO2021168614A1 (zh) 2021-09-02

Similar Documents

Publication Publication Date Title
CN108629027B (zh) 基于区块链的用户数据库重建方法、装置、设备及介质
CN108282459B (zh) 基于智能合约的数据传递方法及系统
US11128447B2 (en) Cryptographic operation method, working key creation method, cryptographic service platform, and cryptographic service device
CN112740733B (zh) 一种安全接入方法及装置
CN113051590B (zh) 一种数据处理方法和相关设备
CN111783129A (zh) 一种保护隐私的数据处理方法及系统
EP4258593A1 (en) Ota update method and apparatus
CN106453246A (zh) 设备身份信息分配方法、装置以及系统
CN105024807A (zh) 数据处理方法及系统
CN111555880B (zh) 数据碰撞方法、装置、存储介质及电子设备
CN111614670A (zh) 加密文件的发送方法及装置、存储介质
CN112512038A (zh) 会话密钥的生成方法、装置、电子设备及可读存储介质
KR20160136060A (ko) 공유 또는 검색을 위한 데이터 암호화 방법 및 이를 수행하는 장치
CN112602289B (zh) 数据加密处理方法、数据解密处理方法、装置、电子设备及可读存储介质
CN111404674B (zh) 一种会话密钥的生成和接收方法及设备
CN116405320A (zh) 数据传输方法及装置
US20230239144A1 (en) Deterministic chaos-based quantum computer resistant data encryption for large scale wide area network solutions
CN113965310B (zh) 基于可控去标识化的标签实现混合隐私计算处理的方法
CN112699391B (zh) 目标数据的发送方法及隐私计算平台
CN110419195A (zh) 在iot轻量级终端环境中基于代理重加密的数据管理方法及系统
KR101812311B1 (ko) 사용자 단말 및 속성 재암호 기반의 사용자 단말 데이터 공유 방법
CN113946855A (zh) 一方传输微量数据的隐私数据求交方法及系统
CN118041694A (zh) 加密数据授权方法、存储介质、程序产品及相关设备
CN114710359B (zh) 工业网络动态密钥管理方法及工业网络加密通信方法
CN113556733B (zh) 签约隐藏标识符生成、解密方法及相关装置

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