CN113796058B - 一种密钥的传输方法和装置 - Google Patents

一种密钥的传输方法和装置 Download PDF

Info

Publication number
CN113796058B
CN113796058B CN202180003014.7A CN202180003014A CN113796058B CN 113796058 B CN113796058 B CN 113796058B CN 202180003014 A CN202180003014 A CN 202180003014A CN 113796058 B CN113796058 B CN 113796058B
Authority
CN
China
Prior art keywords
key
client
management entity
information
signature
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
CN202180003014.7A
Other languages
English (en)
Other versions
CN113796058A (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 CN113796058A publication Critical patent/CN113796058A/zh
Application granted granted Critical
Publication of CN113796058B publication Critical patent/CN113796058B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/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
    • 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)
    • H04L9/0822Key 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) using key encryption key
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种密钥的传输方法和装置,该方法包括:客户端向密钥管理实体发送请求消息,请求消息中包括加密公钥或者第一密钥交换信息;密钥管理实体使用加密公钥对目标密钥加密得到密文,或使用由第一密钥信息和第一密钥交换信息、第一认证签名和第二密钥交换信息得到的加解密钥对目标密钥加密得到密文。密钥管理实体向客户端发送包括密文或第二密钥交换信息的响应消息;客户端使用加密私钥对密文解密获得目标密钥,或使用由客户端的第一密钥交换信息、第一认证签名、密钥管理实体的第二密钥信息和第二密钥交换信息得到的加解密密钥对密文解密得到目标密钥。该方法利用加密密钥对或密钥协商信息实现密钥传输,从而可以保证密钥传输的安全性。

Description

一种密钥的传输方法和装置
技术领域
本申请涉及通信技术领域,尤其涉及一种密钥的传输方法和装置。
背景技术
现有的汽车部件开发中,汽车的部件代工厂(Original EquipmentManufacturer,OEM)需要将存储的一些目标密钥传输给汽车的第一级零部件供应商(TierOne,TIER1),以便所述部件代工厂进一步将这些目标密钥灌装到汽车部件中。然而,目标密钥的传输安全性将直接影响车内部件的安全性。
现有的密钥传输技术中,通常采用传统的传输层安全协议(Transport LayerSecurity,TLS)或优良保密协议(Pretty Good Privacy,PGP)协议,甚至密钥明文方式,可以实现所述部件代工厂与所述第一级零部件供应商之间目标密钥的传输。然而,这些方式都极大可能导致目标密钥传输不安全。
发明内容
本申请提供一种密钥的传输方法和装置,用于提高密钥管理实体和客户端之间传输密钥的安全性。
第一方面,本发明实施例提供一种密钥的传输方法,在本申请中,以由客户端执行该方法进行描述。该方法的步骤包括:客户端向密钥管理实体发送请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;所述客户端接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;其中,所述密文为是根据所述客户端的加密公钥对所述目标密钥加密得到的;所述客户端使用所述密钥管理实体的签名认证信息确定所述密文的签名正确;所述客户端使用所述客户端的加密私钥对所述密文进行解密,获取所述目标密钥;所述客户端向所述密钥管理实体发送确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
通过该设计,客户端向密钥管理实体发送请求消息,用于请求目标密钥,该请求消息中包括了客户端的加密公钥、客户端对加密公钥的签名,以及客户端的签名认证信息。进一步的,客户端接收密钥管理实体发送的响应消息,客户端在认证所述响应消息中的密文正确后,使用客户端的加密私钥对密文进行解密获取目标密钥。最后客户端向密钥管理实体返回确认信息,该方案不仅可以保证客户端能准确的获取到目标密钥,也可以保证目标密钥的传输安全性。
在一种可能的实施方式中,所述客户端向所述密钥管理实体发送确认信息之前,所述方法还包括:所述客户端根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果产生确认密钥;所述客户端根据所述确认密钥得到验证信息。
通过该设计,客户端向密钥管理实体发送确认信息之前,根据目标密钥、目标密钥传输过程信息以及目标密钥的确认结果产生确认密钥,并根据确认密钥得到验证信息,从而保证客户端得到的确认密钥和验证信息,与目标密钥过程以及其传输结果紧密相关的,使得客户端返回的确认信息更具合法性和有效性。
在一种可能的实施方式中,所述确认信息包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名。
通过该设计,客户端通过确认信息向密钥管理实体告知已接收到目标密钥,并且确认信息中包括的验证信息可以用于防止客户端对已获取目标密钥的事实进行抵赖。
在一种可能的实施方式中,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
通过该设计,目标密钥传输过程信息中涉及客户端和密钥管理实体两端生成的各类签名、密文以及加密公钥中的任意一项或多项,从而可以保证客户端向密钥管理实体返回的确认信息更具合法性和有效性。
在一种可能的实施方式中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
通过该设计,客户端的签名认证信息包括客户端的数字签名证书时,密钥管理实体可以根据该客户端的签名认证信息,实现对客户端的身份认证。
在一种可能的实施方式中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述客户端向所述密钥管理实体发送所述请求消息之前,所述方法还包括:所述客户端向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;所述客户端接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
通过该设计,当客户端的签名认证信息包括初始认证签名和客户端的签名认证公钥时,客户端向密钥管理实体发送请求消息之前,需要向密钥管理实体发送认证请求,以实现对自己的身份认证并获取密钥管理实体发送的初始认证签名,进而保证后续能有效且安全的获取目标密钥。
在一种可能的实施方式中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
通过该设计,密钥管理实体的认证信息包括密钥管理系统的数字签名证书,客户端接收密钥管理实体发送的响应消息之后,可以根据密钥管理系统的数字签名证书,实现对密钥管理实体的身份认证。
在一种可能的实施方式中,所述响应消息还包括所述密钥管理实体对所述目标密钥的签名,所述方法包括:所述客户端根据所述密钥管理实体的签名认证信息,确定所述密钥管理实体对所述目标密钥的签名正确。
通过该设计,客户端接收到的响应消息还包括密钥管理实体对目标密钥的签名时,客户端可以根据密钥管理实体的签名认证信息,确定密钥管理实体对目标密钥的签名正确,从而可以保证获取目标密钥的完整性。
在一种可能的实施方式中,所述目标密钥传输过程信息还包括所述密钥管理实体对所述目标密钥的签名。
通过该设计,目标密钥传输过程信息还包括密钥管理实体对目标密钥的签名,从而进一步可以保证客户端返回的确认信息的有效性,并且通过验证密钥管理实体对目标密钥的签名,可以确保目标密钥在传输过程中的完整性。
第二方面,本发明实施例提供一种密钥的传输方法,在本申请中,以由密钥管理实体执行该方法进行描述。该方法的步骤包括:密钥管理实体接收客户端发送的请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;所述密钥管理实体根据所述客户端的签名认证信息确定所述客户端对所述加密公钥的签名正确;所述密钥管理实体使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文;所述密钥管理实体向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;所述密钥管理实体接收所述客户端发送的确认信息,所述确认信息用于确认所述客户端收到所述目标密钥。
通过该设计,密钥管理实体接收客户端发送的请求消息,密钥管理实体先确认请求消息中的客户端对加密公钥的签名正确。进一步的,密钥管理实体使用客户端的加密公钥对目标密钥和目标密钥的签名进行加密得到密文。然后密钥管理实体向客户端发送响应消息,该响应消息中不仅包括密文,还包括密钥管理实体对目标密钥的签名、密钥管理实体对密文的签名,以及密钥管理实体的签名认证信息,从而可以保证客户端接收该响应消息后,最终获取目标密钥的准确性和完整性。最后密钥管理实体还接收客户端发送的确认信息,从而根据该确认信息确认客户端已接收目标密钥。
在一种可能的设计中,所述确认消息包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名;其中,所述验证信息为所述客户端根据确认密钥得到的,所述确认密钥为所述客户端根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果得到的。
通过该设计,密钥管理实体接收客户端的确认信息,该确认信息中包括验证信息、客户端对验证信息和目标密钥传输过程信息的签名。因此,密钥管理实体根据该确认信息不仅可以确认客户端已接收目标密钥,还可以依据客户端对验证信息和目标密钥传输过程信息的签名,防止客户端对已接收目标密钥的事实进行否认。
在一种可能的设计中,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
通过该设计,由于密钥管理实体接收客户端的确认信息中包括客户端对验证信息和目标密钥传输过程信息的签名,其中,目标密钥传输过程信息的签名包括客户端对加密公钥的签名、密钥管理实体对目标密钥的签名、密钥管理实体对密文的签名、密文、加密公钥中任一项或多项。从而可以保证密钥管理实体接收客户端的确认信息具有有效性和合法性。
在一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
通过该设计,客户端发送的请求消息中客户端的签名认证信息包括:客户端的数字签名证书,从而密钥管理实体可以使用客户端的数字签名证书认证客户端对加密公钥的签名,从而可以保证密钥管理实体使用客户端的加密公钥为正确的。
在一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名以及所述客户端的签名认证公钥;所述密钥管理实体接收所述客户端发送的请求消息之前,所述方法还包括:所述密钥管理实体接收所述客户端发送的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;所述密钥管理实体根据所述认证请求,对所述客户端进行身份认证;所述密钥管理实体在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;所述密钥管理实体向所述客户端发送所述初始认证签名。
通过该设计,客户端的签名认证信息包括:初始认证签名以及客户端的签名认证公钥时,密钥管理实体在接收客户端的请求消息之前,需要接收到客户端的认证请求,从而根据该认证请求认证客户端的身份。在客户端的身份认证通过后,使用密钥管理实体的签名认证私钥对客户端的签名认证公钥进行签名,得到初始认证签名并发送给所述客户端。进而客户端可以根据该初始认证签名进行身份认证,实现从密钥管理实体获取目标密钥。
在一种可能的设计中,所述密钥管理实体使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文之前,所述方法还包括:所述密钥管理实体使用所述客户端的签名认证公钥,确定所述初始认证签名正确。
通过该设计,密钥管理实体使用客户端的加密公钥对目标密钥和目标密钥的签名进行加密,得到密文之前,密钥管理实体使用客户端的签名认证公钥,确定初始认证签名正确,确保客户端的身份正确,进而保证了目标密钥传输的安全性。
在一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
通过该设计,密钥管理实体的认证信息包括:密钥管理系统的数字签名证书时;客户端接收到密钥管理实体的响应消息后,可以使用该密钥管理系统的数字签名证书去认证响应消息中密文的签名。从而可以保证目标密钥的传输安全性,也可以保证客户端获取目标密钥的准确性。
第三方面,本发明实施例提供一种密钥的传输方法,在本申请中,以由客户端执行该方法进行描述。该方法的步骤包括:客户端向密钥管理实体发送请求消息;所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;所述客户端接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息,其中,所述密文为所述密钥管理实体根据所述密钥管理实体的加解密密钥对所述目标密钥加密得到的,所述密钥管理实体的加解密密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;所述第一传输过程信息包括以下一项或多项:所述密文、所述第一密钥交换信息、所述第二密钥交换信息;所述客户端根据所述密钥管理实体的签名认证信息确定所述密钥管理实体对第一传输过程信息的签名正确;所述客户端使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥;所述客户端的加解密密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;所述客户端向所述密钥管理实体发送确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
通过该设计,客户端向密钥管理实体发送请求消息,并且该请求消息中包括第一密钥交换信息、所述客户端对第一密钥交换信息的签名,以及客户端的签名认证信息。然后密钥管理实体可以根据自身得到加解密钥对目标密钥进行加密,得到密文。客户端接收密钥管理实体的响应消息之后,客户端根据响应消息中的密钥管理实体的签名认证信息确定密钥管理实体对第一传输过程信息的签名正确。进一步,客户端使用客户端的加解密钥对响应消息中密文进行解密,获取目标密钥。该方案可以保证客户端和密钥管理实体之间传输密钥的安全性,使得客户端准确且有效的获取目标密钥。最后,客户端还向密钥管理实体返回确认信息,用于告知客户端已接收目标密钥。
在一种可能的设计中,所述客户端向所述密钥管理实体发送确认消息之前,所述方法还包括:所述客户端根据所述目标密钥,第二传输过程信息以及所述目标密钥的确认结果产生确认密钥;所述客户端根据所述确认密钥和所述目标密钥传输过程信息得到第三验证信息;其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息;所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,所述密文。
通过该设计,客户端向所述密钥管理实体发送确认消息之前,客户端根据目标密钥,第二传输过程信息以及目标密钥的确认结果产生确认密钥,进一步根据确认密钥和目标密钥传输过程信息得到第三验证信息。该方案可以保证第三验证信息的有效性。
在一种可能的设计中,所述确认消息包括:所述第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名。
通过该设计,确认信息中除了包括第三验证信息,还包括客户端对第三验证信息和目标密钥传输过程信息的签名,因此,该确认信息不仅可以用于确认客户端已接收目标密钥,还可以作为客户端和密钥管理实体双方之间传输目标密钥的证据,以防止双方对传输目标密钥的事实进行否认。
在一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
通过该设计,客户端的签名认证信息包括客户端的数字签名证书时;密钥管理实体可根据客户端的数字签名证书,认证客户端对第一密钥交换信息的签名,从而可以保证密钥管理实体接收的第一密钥交换信息的合法性和有效性。
在一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述客户端向所述密钥管理实体发送所述请求消息之前,所述方法还包括:所述客户端向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;所述客户端接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
通过该设计,客户端的签名认证信息包括初始认证签名和客户端的签名认证公钥时,客户端向密钥管理实体发送请求消息之前,还需要向密钥管理实体发送认证请求,以实现对自己的身份认证,并获取密钥管理实体返回的初始认证签名,进而保证客户端后续可以有效的获取到目标密钥。
在一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
通过该设计,密钥管理实体的认证信息包括密钥管理系统的数字签名证书,客户端可以根据密钥管理实体的认证信息,认证密钥管理实体对第一传输过程信息的签名,以保证客户端接收到密钥管理实体发送的第一传输过程信息为正确的。
在一种可能的设计中,所述响应消息还包括:第一验证信息;其中,所述第一验证信息为所述密钥管理实体根据第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息得到的;所述第一验证密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;所述第一传输过程信息还包括:所述第一验证信息。
通过该设计,客户端接收密钥管理实体的响应消息中还包括第一验证信息,可进一步确保目标密钥的传输安全性。密钥管理实体发送的第一传输过程信息中也包括该第一验证信息,也可进一步保证客户端接收到密钥管理实体发送的第一传输过程信息的正确性。
在一种可能的设计中,所述客户端使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥之前,所述方法还包括:所述客户端根据第二验证密钥确定所述第一验证信息正确;其中,所述第二验证密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息、所述客户端对所述第一密钥交换信息的签名得到的。
通过该设计,客户端在对密文进行解密之前,使用自身得到的第二验证密钥认证响应消息中的第一验证信息正确,进而可以保证客户端获取目标密钥的合法性和有效性。
在一种可能的设计中,所述目标密钥传输过程信息还包括:所述第一验证信息。
通过该设计,目标密钥传输过程信息还包括第一验证信息,可进一步保证客户端返回的响应消息具有有效性。
第四方面,本发明实施例提供一种密钥的传输方法,在本申请中,以由密钥管理实体执行该方法进行描述。该方法的步骤包括:密钥管理实体接收客户端发送的请求消息;其中,所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;所述密钥管理实体根据所述客户端的签名认证信息确定所述客户端对所述第一密钥交换信息的签名正确;所述密钥管理实体使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文;所述密钥管理实体向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息;其中,所述第一传输过程信息包括以下一项或多项:所述密文,所述第一密钥交换信息,所述第二密钥交换信息;所述密钥管理实体接收所述客户端发送的确认信息,所述确认信息用于确认所述客户端收到所述目标密钥。
通过该设计,密钥管理实体接收客户端发送请求消息,并且该请求消息中包括第一密钥交换信息、客户端对第一密钥交换信息的签名,以及客户端的签名认证信息。然后,密钥管理实体根据客户端的签名认证信息确定客户端对所述第一密钥交换信息的签名正确。进一步的,密钥管理实体使用密钥管理实体的加解密密钥对目标密钥进行加密,得到密文,密钥管理实体向客户端返回包含密文的响应消息。该方案可以保证客户端和密钥管理实体之间实现密钥的安全传输,使得客户端准确且有效的获取目标密钥。最后,密钥管理实体接收客户端发送的确认信息,以知晓客户端已接收目标密钥。
在一种可能的设计中,所述确认消息包括:第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名;所述第三验证信息为所述客户端根据确认密钥和所述目标密钥传输过程信息得到的;所述确认密钥为所述客户端根据所述目标密钥、第二传输过程信息以及所述目标密钥的确认结果得到的。其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息;所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息,所述密文。
通过该设计,密钥管理实体接收的确认信息包括第三验证信息,以及客户端对第三验证信息和目标密钥传输过程信息的签名。因此,该方案中确认信息的有效性更高,并且该确认信息不仅可以用于确认客户端已接收目标密钥,还可以防止双方对传输目标密钥的事实进行否认。
在一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
通过该设计,客户端发送的请求消息中客户端的签名认证信息包括客户端的数字签名证书,从而密钥管理实体可以使用客户端的数字签名证书对第一密钥交换信息的签名进行认证,从而可以保证密钥管理实体使用第一密钥交换信息为正确的。
在一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述密钥管理实体接收所述客户端发送的所述请求消息之前,所述方法还包括:所述密钥管理实体接收所述客户端的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;所述密钥管理实体根据所述认证请求,对所述客户端进行身份认证;所述密钥管理实体在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;所述密钥管理实体向所述客户端发送所述初始认证签名。
通过该设计,客户端的签名认证信息包括:初始认证签名以及客户端的签名认证公钥时;密钥管理实体在接收客户端的请求消息之前,接收到客户端的认证请求,从而根据该认证请求认证客户端的身份,在客户端的身份认证通过后,使用密钥管理实体的签名认证私钥对客户端的签名认证公钥进行签名,得到初始认证签名,并发送给所述客户端,从而使得客户端利用该初始认证签名认证自身身份,从而可有效的获取目标密钥。
在一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理实体的数字签名证书。
通过该设计,密钥管理实体的认证信息包括:密钥管理实体的数字签名证书时;客户端接收到密钥管理实体的响应消息后,可以使用该密钥管理实体的数字签名证书去认证密钥管理实体对第一传输过程信息的签名。该方案可以保证客户端接收密钥管理实体第一传输过程信息的准确性,也进一步保证目标密钥的传输安全性。
在一种可能的设计中,所述密钥管理实体使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文时,所述方法还包括:所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到第一验证密钥;所述密钥管理实体根据所述第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,得到第一验证信息。
通过该设计,可以使得密钥管理实体得到的第一验证信息更具有效性和准确性。
在一种可能的设计中,所述响应消息还包括:所述第一验证信息;所述第一传输过程信息还包括:所述第一验证信息。
通过该设计,密钥管理实体发送的响应消息中还包括第一验证信息,以及第一传输过程信息中还包括该第一验证信息,可以进一步保证客户端接收该响应消息后,可以准确且有效的获取目标密钥。
第五方面,本申请提供一种密钥的传输装置,该装置可应用于客户端,具有实现上述第一方面或上述第一方面的任意一种可能的设计中第一种方案的功能,或者实现上述第三方面或上述第三方面的任意一种可能的设计中第二种方案的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。比如包括通信单元和处理单元。
第六方面,本申请提供一种密钥的传输装置,该装置可应用于密钥管理实体,具有实现上述第二方面或上述第二方面的任意一种可能的设计中第一种方案的功能,或者具有实现上述第四方面或上述第四方面的任意一种可能的设计中第二种方案的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。比如包括通信单元和处理单元。
第七方面,本申请实施例中还提供一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现第一方面或其中任意一种设计提供的第一种方案,或者可实现第二方面或其中任意一种设计提供的第一种方案,或者可实现第三方面或其中任意一种设计提供的第二种方案,或者实现第四方面或其中任意一种设计提供的第二种方案。
第八方面,本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述第一方面或其中任一种设计提供的第一方案被执行,或者使得上述第二方面或其中任一种设计提供的第一方案被执行,使得上述第三方面或其中任一种设计提供的第二方案被执行,或者使得上述第四方面或其中任一种设计提供的第二方案被执行。
第九方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持客户端实现上述第一方面中所涉及的功能,或者实现上述第三方面中所涉及的功能。
第十方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于支持密钥管理实体实现上述第二方面中所涉及的功能,或者实现上述第四方面中所涉及的功能。
在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存通信装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
第十一方面,本申请实施例还提供一种密钥的传输系统,该密钥的传输系统包括用于执行上述第一方面或其中任一种设计提供的方法的客户端,和用于执行上述第二方面或其中任一种设计提供的方法的密钥管理实体,以及用于实现所述客户端和所述密钥管理实体之间进行通信的传输信道。
第十二方面,本申请实施例还提供一种密钥的传输系统,该密钥的传输系统包括用于执行上述第三方面或其中任一种设计提供的方法的客户端,和用于执行上述第四方面或其中任一种设计提供的方法的密钥管理实体,以及用于实现所述客户端和所述密钥管理实体之间进行通信的传输信道。
上述第五方面至第十二方面中可以达到的技术效果,可以参照上述第一方面或第二方面中任意一种设计可以达到的技术效果说明,或者参照上述第三方面或第四方面中任意一种设计可以达到的技术效果说明。这里不再重复赘述。
附图说明
图1为本申请实施例提供的一种适用的密钥传输系统的示意图;
图2为本申请实施例提供的第一种密钥传输的方法流程示意图;
图3为本申请实施例提供的第一种密钥传输的实例流程示意图;
图4为本申请实施例提供的第二种密钥传输的实例流程示意图;
图5为本申请实施例提供的第二种密钥传输的方法流程示意图;
图6为本申请实施例提供的第三种密钥传输的实例流程示意图;
图7为本申请实施例提供的第四种密钥传输的实例流程示意图;
图8为本申请实施例提供的一种密钥传输装置的结构示意图;
图9为本申请实施例提供的一种密钥传输设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例提供一种密钥的传输方法及装置,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。本申请实施例的描述中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请中所涉及的至少一个是指一个或多个;多个,是指两个或两个以上。另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。本申请实施例中请求或响应中“包括”信息,可以理解为请求或响应中“携带”信息。在本申请实施例中方案中涉及的字母“S”表示为签名Sign。“K”表示为密钥Key。
本申请实施例提供的密钥传输方法可以用于客户端和密钥管理系统之间传输密钥,客户端可以是软件实体,虚拟功能实体,或者硬件装置等,密钥管理系统也可以是软件实体,虚拟功能实体,或者硬件装置等。例如,客户端可以设置于汽车的第一级零部件供应商TIER1设备,对应的密钥管理系统可以设置在汽车的部件代工厂OEM设备上。在密钥管理系统中存储了汽车内部的一些重要的密钥,密钥管理系统可以对这些密钥进行管理和维护,而客户端可以向密钥管理系统请求获取需要的目标密钥,并将获取到的目标密钥灌装到汽车内部件中。客户端和密钥管理系统可以通过移动通信网络、无线保真(wirelessfidelity,WiFi)或者其它等连接方式进行通信,以实现汽车部件开发过程中的密钥、数据、信息等传输。
应理解在本申请实施例中,以客户端和密钥管理实体为例,对本申请的方案进行描述。但在实际运用中,客户端和密钥管理实体可以视为空间上不处于同一点的实体,本申请对客户端和密钥管理实体不做具体限定。
图1示出了本申请实施例提供一种密钥的传输方法所适用的一种可能的密钥传输系统的架构,该密钥传输系统可用于汽车部件开发过程。
参阅图1所示,该密钥传输系统中包括TIER1设备和OEM设备,在整个汽车部件开发过程中,所述OEM设备中存储了汽车内部的一些重要密钥。
所述TIER1设备在确定车内部件所需的目标密钥后,向所述OEM设备发送请求消息,所述请求消息用于请求所述OEM设备中的目标密钥。所述OEM设备将所述目标密钥传输给所述TIER1设备,从而所述TIER1设备可以进一步将该目标密钥灌装到车内部件中。由于所述OEM设备中存储了的重要密钥是车厂的核心资产,传输这些密钥的安全性将直接影响车内部件的安全性,因此,所述OEM设备需要通过高安全的传输方式,将这些重要的目标密钥传输给所述TIER1设备。
在现有技术中,通常采用传统的传输层安全协议(Transport Layer Security,TLS)或优良保密协议(Pretty Good Privacy,PGP),甚至密钥明文方式,可实现所述OEM设备与所述TIER1设备之间的密钥传输。然而,现有技术中简单执行“直接返回密钥再更新”的策略,在很多场景不可行,在得到目标密钥和更新期间,容易违规泄露密钥。其中,所述TLS并不能实现真正的安全传输,所述PGP为一个自签名公钥/私钥加密,公钥的合法性认证没有信任根,且PGP使用静态加密方式,仅采用PGP并不具有前向安全。另外,所述TLS和所述PGP等协议的局限,所述OEM设备并不一定会收到所述TIER1设备的响应或回执,因此,该方案无法保证所述TIER1设备不对“已安全接收目标密钥”这一事实进行否认。同时,由于部分协议不具备“标识信息唯一来源”,从而也会可能导致所述OEM设备对“已发送目标密钥”这一事实进行否认。
因此,本申请实施例提供了一种密钥的传输方法,该方法中,客户端向密钥管理实体发送请求消息,该请求消息用于请求密钥管理实体的目标密钥,请求消息中包括客户端的加密公钥或者客户端的第一密钥交换信息;密钥管理实体可以使用客户端的加密公钥对目标密钥加密得到密文,或者密钥管理实体可以使用密钥管理实体的加解密密钥对目标密钥进行加密,得到密文。密钥管理实体向客户端发送包括密文或密钥管理实体的第二密钥交换信息的响应信息;客户端使用客户端的加密私钥对密文解密获得目标密钥,或者客户端使用客户端的加解密密钥对密文进行解密,得到目标密钥。该方法利用加密密钥对或密钥协商信息实现密钥传输,从而可以保证密钥传输的安全性。
本申请实施例提供的密钥的传输方法可以但不限于适用于如图1所示的密钥传输系统中,该密钥传输系统中可以包括客户端和密钥管理实体以及客户端和密钥管理实体之间的传输通道。可选的,客户端可存储了客户端的签名认证私钥和客户端的签名认证公钥,密钥管理实体中存储了一些汽车内部所需的密钥和密钥管理实体的数字签名证书以及密钥管理实体的签名认证私钥。其中,密钥管理实体的数字签名证书用于认证由密钥管理实体的签名认证私钥进行签名得到的认证签名。
参阅图2所示,本申请实施例提供一种密钥的传输方法,可以基于一次性公私钥对进行密钥传输,该方案的流程包括:
S201:客户端向密钥管理实体发送请求消息,该请求消息用于请求目标密钥,密钥管理实体设备接收客户端发送的请求消息。请求消息中包括客户端的加密公钥、客户端对加密公钥的签名,以及客户端的签名认证信息。
在第一种实施方式中,客户端的签名认证信息包括:客户端的数字签名证书。
可选的,客户端的数字签名证书可用于对客户端的认证签名私钥进行认证。例如,客户端使用客户端的签名认证私钥对待发送的信息或内容进行签名,得到相应的认证签名,客户端将自身的数字签名证书和相应的认证签名发送给密钥管理实体之后,密钥管理实体可以利用客户端的数字签名证书对相应的认证签名进行认证,若认证通过,则可以确定该认证签名来源于客户端。
在第二种实施方式中,客户端的签名认证信息包括:初始认证签名以及客户端的签名认证公钥。
在第二种实施方式情况下,客户端向密钥管理实体发送所述请求消息之前,还包括:客户端向密钥管理实体发送认证请求,密钥管理实体接收客户端发送的认证请求;其中,认证请求包括:客户端的签名认证公钥和客户端的身份标识;然后密钥管理实体可以根据该认证请求,对客户端进行身份认证;进一步密钥管理实体在客户端身份认证通过之后,使用密钥管理实体的签名认证私钥对客户端的签名认证公钥进行签名,得到初始认证签名;最后密钥管理实体向客户端发送初始认证签名,客户端接收密钥管理实体的初始认证签名。
其中,密钥管理实体根据该认证请求,对客户端进行身份认证时,可以通过其他可靠方法对该认证信息进行认证,以确保双方通信的安全性和合法性。例如线下由专人传送,或者双方通过合同进行约定,以保证客户端的合法性和有效性。具体的可靠方式,本申请不做具体限定。
需要注意的是,客户端从密钥管理实体获取初始认证签名的过程可以设为在线上或离线(线下)进行。
在该步骤S201中,客户端的加密公钥,可以通过但不限于以下方式获得:客户端通过实时生成一次性加密密钥对,或者客户端侧预先存储了一次性加密密钥对,客户端的加密密钥对中包括加密公钥和加密私钥。
需要注意的是,由于客户端的加密密钥对为一次性的,从而可以避免客户端的加密密钥因重复使用而易导致泄露,进而可保证两侧之间传输目标密钥的安全性。
示例性的,客户端以TIER1设备为例,此时,TIER1设备的签名认证私钥表示为sk_TIER1,加密公钥表示为enc_pk,TIER1设备对加密公钥的签名表示为S1,S1可以满足以下公式:S1=Sign(sk_TIER1,enc_pk||nonce1)。
其中,nonce1表示TIER1设备产生的随机数,“||”表示串联拼接。
S202:密钥管理实体根据客户端的签名认证信息确定客户端对加密公钥的签名正确。
S203:密钥管理实体使用客户端的加密公钥对目标密钥和目标密钥的签名进行加密,得到密文。
在一种实施方式中,若客户端的签名认证信息包括:初始认证签名以及客户端的签名认证公钥时;密钥管理实体使用客户端的加密公钥对目标密钥和目标密钥的签名进行加密,得到密文之前,还包括:密钥管理实体根据客户端的签名认证公钥,确定初始认证的签名正确。
在一种实施方式中,密钥管理实体在执行步骤S203时,具体包括以下:
首先,密钥管理实体使用密钥管理实体的签名认证私钥对目标密钥进行签名,得到密钥管理实体对目标密钥的签名;然后,密钥管理实体根据目标密钥、密钥管理实体对目标密钥的签名,得到待加密密文;其次,密钥管理实体使用客户端的加密公钥对待加密密文进行加密,得到密文;最后,密钥管理实体使用密钥管理实体的签名认证私钥对密文进行签名,得到密文的签名。
示例性的,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。此时OEM设备的签名认证私钥表示为sk_OEM,目标密钥表示为PMEK,目标密钥的签名表示为S2,待加密密文表示为C’,密文表示为C,密文的签名表示为S3。
S2可以满足公式为:S2=Sign(sk_OEM,PMEK)。
其中,Sign(.)表示签名函数,OEM设备对目标密钥的签名S2由OEM设备使用OEM的签名认证私钥对目标密钥PMEK进行签名得到的。.
待加密密文C’可以表示为PMEK||S2||nonce1||nonce2。
其中,“||”表示串联拼接,nonce1和nonce2分别表示TIER1设备产生的随机数和OEM设备产生的随机数。待加密密文C’由OEM设备将目标密钥PMEK、目标密钥的签名S2、TIER1设备产生的随机数nonce1、OEM设备产生的随机数nonce2串联拼接得到的。
密文C可以满足公式为:C=Enc(enc_pk,C’)。
即C=Enc(enc_pk,PMEK||S2||nonce1||nonce2)。
其中,Enc(.)表示加密符号,密文C由OEM设备使用TIER1设备的加密公钥enc_pk对待加密密文密文C’进行加密得到的。
密文的签名S3可以满足公式为:S3=Sign(sk_OEM,C)。
其中,密文的签名S3由OEM设备使用OEM设备的签名认证私钥对密文C进去签名得到的。
需要注意的是,密钥管理实体使用客户端的加密公钥进行加密时,可以使用非对称加密算法,例如,椭圆曲线综合加密方案(Elliptic Curve Integrated EncryptionScheme,ECIES)(ec25519)或者RSA(Rivest-Shamir-Adleman)(人名)最优非对称加密填充(RSA-Optimal Asymmetric Encryption Padding,RSA-OAEP)等。
S204:密钥管理实体向客户端发送响应消息,客户端接收密钥管理实体发送的响应消息,该响应消息中包括密文、密钥管理实体对密文的签名,以及密钥管理实体的签名认证信息。
S205:客户端使用密钥管理实体的签名认证信息确定密文的签名正确。
其中,密钥管理实体的认证信息包括:密钥管理实体的数字签名证书。
该密钥管理系统的数字签名证书可以用于认证密钥管理系统对密文的签名,从而可以保证客户端接收响应消息中的密文为有效且准确的。
S206:客户端使用客户端的加密私钥对密文进行解密,获取目标密钥。
示例性的,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。TIER1设备的加密私钥表示为enc_sk,目标密钥表示为PMEK,密文表示为C。
具体的,目标密钥PMEK可以满足以下公式:
PMEK=Dec(enc_sk,C),同时获得nonce2。
其中,Dec(.)表示解密符号,目标密钥PMEK由客户端使用加密私钥对密文C进行解密得到的,nonce2表示OEM设备产生的随机数。
在一种实施方式中,响应消息还包括:密钥管理实体对目标密钥的签名。在执行步骤S206之后,还包括:客户端根据密钥管理实体的签名认证信息,确定密钥管理实体对目标密钥的签名正确。
在该方式中,客户端可以通过确定密钥管理实体对目标密钥的签名正确,从而保证获取的目标密钥的完整性。
S207:客户端向密钥管理实体发送确认信息,密钥管理实体接收该确认信息,确认信息用于确认客户端收到目标密钥。
在一种实施方式中,客户端向密钥管理实体发送确认消息之前,所述方法还包括:客户端根据目标密钥、目标密钥传输过程信息以及目标密钥的确认结果产生确认密钥;客户端根据确认密钥得到验证信息。
因此,确认消息中具体包括:验证信息,以及客户端对验证信息和目标密钥传输过程信息的签名。
可选的,目标密钥传输过程信息包括以下一项或多项:客户端对加密公钥的签名、密钥管理实体对目标密钥的签名、密钥管理实体对密文的签名、密文、加密公钥。
示例性的,客户端以TIER1设备为例,密钥管理实体以OEM设备为例;TIER1设备的签名认证私钥表示为sk_TIER1,目标密钥表示为PMEK,加密公钥表示为enc_pk,确认密钥表示为K_ack,验证信息表示为MAC,客户端对验证信息和目标密钥传输过程信息的签名表示为ACK。
具体的,K_ack、MAC、ACK可以满足以下公式:
K_ack=HKDF(PMEK,S1||S2||S3||enc_pk||nonce1||nonce2||“ACK”);
MAC=HKDF(K_ack,nonce1||nonce2);
ACK=Sign(sk_TIER1,MAC||S1||S2||S3||C||enc_pk||nonce1||nonce2||“Succeeded or Failed”)。
其中,HKDF表示一种基于散列消息鉴别码(Hash Message Authentication Code,HMAC)的密钥推导算法(HMAC based Key Derivation Function),nonce1和nonce2分别表示TIER1设备产生的随机数和OEM设备产生的随机数。“ACK”为一个用于标识派生K_ack的字符串或二进制串,可以是由TIER1设备和OEM设备预先协商特定编码规则的字符串,当然也可采用其它的字符串所代替,本申请实施例对此不做限制。“Succeeded or Failed”为一个用于标识ACK数字签名用途的字符串,可以是由TIER1设备和OEM设备预先协商特定编码规则的字符串,当然也可采用其它的字符串所代替,本申请实施例对此不做限定。
在一种实施方式中,密钥管理实体接收客户端发送的确认信息之后,还包括:密钥管理实体根据预设的密钥算法和目标密钥得到第一确认密钥,使用该第一确认密钥认证确认信息中的验证信息。
具体的,密钥管理实体使用第一确认密钥认证确认信息中的验证信息,包括:密钥管理实体先根据预设的密钥算法和目标密钥得到第一确认密钥,然后,密钥管理实体根据第一确认密钥得到第一验证信息,进一步的,将该第一验证信息与确认信息中的验证信息进行比较,若相同,则确定认证通过。
示例性的,第一确认密钥表示为K_ack’,第一验证信息MAC’,确认信息中的验证信息表示为MAC。K_ack’和MAC’的公式可以满足以下:
K_ack’=HKDF(PMEK,S1||S2||S3||enc_pk||nonce1||nonce2||“ACK”);
MAC’=HKDF(K_ack’,nonce1||nonce2);
其中,HKDF、“||”、nonce1、nonce2、“ACK”的意义具体可参考上述实施,此处不再具体赘述。
密钥管理实体将第一验证信息MAC’与确认信息中的验证信息MAC进行比较,若相同,则确定目标密钥传输成功。
综上所述,基于一次性公私钥对进行密钥传输的方案中,首先,客户端向密钥管理实体发送用于请求目标密钥的请求消息,该请求消息中包括客户端的加密公钥、客户端对加密公钥的签名,以及客户端的签名认证信息。由于客户端的加密公钥为一次性,从而可避免加密公钥发生泄露,从而保证客户端和密钥管理实体之前的密钥传输安全性。
然后,密钥管理实体在接收到该请求消息后,密钥管理实体根据客户端的签名认证信息确定客户端对加密公钥的签名正确,则使用客户端的加密公钥对目标密钥进行加密得到密文。进一步,密钥管理实体向客户端返回响应消息。客户端接收响应消息后,先对其中密文的签名进行认证,确保接收的密文为有效且准确的,进而使用加密私钥对密文解密获取目标密钥,并对目标密钥的签名进行认证,以确保获取的目标密钥的完整性。从而可知,客户端和密钥管理实体在进行信息交互时,执行任务之前均需要对接收的信息进行认证,保证接收的信息的有效性和准确性。且客户端的加密密钥对可以用于实现对目标密钥的安全加密和解密,保证客户端获取目标密钥过程的有效性和安全性。
最后,客户端获取目标密钥之后得到确认信息,该确认信息中包括验证信息,以及客户端对验证信息和所述目标密钥传输过程信息的签名。客户端将确认信息发送给密钥管理实体,从而密钥管理实体可以根据确认信息知晓客户端已获取目标密钥,同时,密钥管理实体可依据该确认信息,防止客户端对“已获取目标密钥”的事实进行否认,客户端也可以以该确认信息为证据,防止密钥管理实体对“已发送目标密钥”的事实进行否认。
因此,该方案既可以保证目标密钥传输的安全性,也可以防止密钥传输的双方对密钥传输的事实进行否认。
基于以上实施例提供的第一种密钥的传输方案,该方案主要利用一次性加密公钥来加密目标密钥,以实现密钥的传输。本申请根据该方案,还提供了以下两个具体的实施例,以详细说明本申请的技术方案。
在第一个实施例中,如图3所示,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。TIER1设备中没有存储TIER1设备的数字签名证书、但存储了TIER1设备的签名认证私钥和TIER1设备的签名认证公钥。OEM设备中存储了OEM设备的数字签名证书、OEM设备的签名认证私钥、目标密钥。具体流程包括以下步骤:
由于TIER1设备没有数字签名证书,OEM设备在与TIER1设备进行密钥传输之前,需要先对TIER1设备进行认证。因此,需要在OEM设备与TIER1设备进行密钥传输之前,执行下述初始阶段(具体参考步骤S301-S304),TIER1设备获取初始认证签名S,进而OEM设备通过验证TIER1设备的初始认证签名S有效且合法,才可以进一步传输目标密钥,从而可保证OEM设备与TIER1设备之前传输密钥的安全性。
S301:TIER1设备向OEM设备发送认证信息,该认证信息中包括TIER1设备的身份标识TIER1_ID和TIER1设备的签名认证公钥pk_TIER1。
S302:OEM设备对TIER1设备的身份标识和TIER1设备的签名认证公钥进行认证。
S303:OEM设备认证TIER1设备的身份标识和TIER1设备的签名认证公钥通过之后,使用OEM设备的证书对应的签名认证私钥sk_OEM对TIER1设备的签名认证公钥pk_TIER1进行签名,得到初始认证签名S。
具体的,初始认证签名S可以满足:S=Sign(sk_OEM,TIER1_ID||pk_TIER1)。
S304:OEM设备将初始认证签名S发送给TIER1设备,TIER1设备接收OEM设备发送的初始认证签名S。
需要注意的是,上述步骤S301-S304为密钥传输初始阶段,此阶段可以在线或离线进行。
下面的步骤为TIER1设备向OEM设备请求获取目标密钥的在线阶段:
S305:TIER1设备产生一次加密公私钥对(enc_pk,enc_sk),该加密公私钥对包括加密公钥enc_pk和加密私钥enc_sk。
S306:TIER1设备向OEM设备发送请求消息,OEM设备接收TIER1设备发送的请求。
其中,所述请求消息中包括TIER1设备的加密公钥enc_pk、初始认证签名S,第一认证签名S1、TIER1设备的签名认证公钥pk_TIER1,以及一次性随机次数nonce1。第一认证签名S1由TIER1设备对加密公钥enc_pk签名得到的。
具体的,第一认证签名S1可以满足:S=Sign(sk_TIER1,enc_pk||nonce1)。
S307:OEM设备对请求消息中的初始认证签名S和第一认证S1进行认证。
具体的,首先,OEM设备使用OEM设备的签名认证私钥sk_OEM对初始认证签名S进行认证。当OEM设备认证初始认证签名S有效后,然后,OEM设备使用TIER1设备的签名认证公钥pk_TIER1对第一认证签名S1进行认证。当OEM设备认证第一认证签名S1有效之后,执行下面步骤S308。
S308:OEM设备使用TIER1设备的加密公钥enc_pk对目标密钥进行加密,得到密文。
执行步骤308时,具体包括以下步骤:
第一步骤:OEM设备使用OEM设备的签名认证私钥sk_OEM对目标密钥PMEK进行签名,得到第一数字签名S2。
具体的,第一数字签名S2可以满足:S2=Sign(sk_OEM,PMEK)。
第二步骤:OEM设备根据目标密钥PMEK和第一数字签名S2,得到待加密密文C’。
具体的,待加密密文C’可以表示为:PMEK||S2||nonce1||nonce2。
nonce1表示为TIER1设备产生的随机数,nonce2表示为OEM产生的随机数。
第三步骤:OEM设备使用TIER1设备的加密公钥enc_pk对待加密密文C’进行加密,得到密文C;
密文C可以满足:C=Enc(enc_pk,C’),即:C=Enc(enc_pk,PMEK||S2||nonce1||nonce2)。
需要注意的是,该处可以使用非对称加密算法ECIES(ec25519)或者RSA-OEAP,本申请实施例不做具体限定。
第四步骤:OEM设备使用OEM设备的签名认证私钥sk_OEM对密文C进行签名,得到第二数字签名S3。
第二数字签名S3可以满足:S3=Sign(sk_OEM,C)。
S309:OEM设备向TIER1设备发送响应消息,TIER1设备接收OEM设备发送的响应消息。
其中,响应消息中包括密文C、第一数字签名S2、第二数字签名S3、OEM的数字签名证书。
S310:TIER1设备使用响应消息中的OEM设备的数字签名证书对第二数字签名S3进行认证。
当TIER1设备认证第二数字签名S3通过之后,执行下面步骤S311。
S311:TIER1设备使用TIER1设备的加密私钥enc_sk对密文C进行解密,获取目标密钥PMEK。
执行步骤S311时,具体包括以下步骤:
第一步骤:当TIER1设备认证第二数字签名S3通过后,使用加密私钥enc_sk对密文C进行解密,得到解密后的密文。
第二步骤:TIER1设备使用响应消息中的OEM设备的数字签名证书对第一数字签名S2进行认证。
第三步骤:当TIER1设备认证第一数字签名S2通过后,从解密后的密文中获取目标密钥PMEK。
目标密钥PMEK可以满足:PMEK=Dec(enc_sk,C),同时可以获得OEM设备产生的第二随机次数nonce2。另外,该步骤可以确保获取的目标密钥PMEK的完整性。
S312:TIER1设备根据预设的密钥算法和目标密钥,得到确认密钥K_ack;
确认密钥K_ack可以满足:K_ack=HKDF(PMEK,S1||S2||S3||enc_pk||nonce1||nonce2“ACK”)。
S313:TIER1设备根据确认密钥K_ack,生成验证信息MAC;进一步TIER1设备根据TIER1设备的签名认证私钥sk_TIER1和验证信息MAC,得到验证签名ACK。
确认信息MAC可以满足:MAC=HKDF(K_ack,nonce1||nonce2)。
确认签名ACK可以满足:
ACK=Sign(sk_TIER1,MAC||S1||S2||S3||C||enc_pk||nonce1||nonce2||“Succeeded or Failed”)。
S314:TIER1设备向OEM设备发送确认信息,该确认信息中包括验证信息MAC和验证签名ACK。OEM设备接收TIER1设备发送的确认信息。
该步骤中由于OEM设备接收TIER1设备发送的确认信息包括的验证签名ACK是TIER1设备在获取目标密钥之后,根据TIER1设备的签名认证私钥和验证信息得到,因此,ACK可以作为不可抵赖的证明信息,用于证明OEM设备发送了目标密钥且TIER1设备获取了OEM设备提供的目标密钥。
S315:OEM设备接收TIER1设备发送的确认信息之后,OEM设备根据预设的密钥算法和目标密钥PMEK得到的第一确认密钥K_ack’,使用该第一确认密钥K_ack’认证响应信息中的验证信息MAC。
OEM设备根据该第一确认密钥K_ack’得到第一验证信息MAC’,K_ack’和MAC’的公式可以满足以下:
K_ack’=HKDF(PMEK,S1||S2||S3||enc_pk||nonce1||nonce2||“ACK”);
MAC’=HKDF(K_ack’,nonce1||nonce2)。
OEM设备将第一验证信息MAC’与认证响应信息中的验证信息MAC进行比较,若相同,则认证通过,即确定目标密钥传输成功。
在第二个实施例中,TIER1设备中存储了TIER1的数字签名证书、TIER1设备的签名认证私钥sk_TIER1。OEM设备中存储了OEM设备的数字签名证书、OEM设备的签名认证私钥sk_OEM,目标密钥PMEK。如图4所示,TIER1设备向OEM设备请求获取目标密钥的具体流程包括以下步骤:
S401:TIER1设备产生一次加密公私钥对(包括加密公钥enc_pk和加密私钥enc_sk),TIER1设备使用TIER1设备的签名认证私钥sk_TIER1对TIER1设备的加密公钥enc_sk进行签名,得到第一认证签名S1。
S402:TIER1设备向OEM设备发送请求消息,OEM设备接收TIER1设备发送的请求消息。
其中,请求消息中包括加密公钥enc_pk、第一认证签名S1、TIER1设备的数字签名证书,以及一次性随机次数nonce1。
具体的,第一认证签名S1可以满足:S=Sign(sk_TIER1,enc_pk||nonce1)。
nonce1表示为TIER1设备产生的随机数。
S403:OEM设备对请求消息中的第一认证签名S1进行认证。
具体的,OEM设备使用请求消息中包含的TIER1设备的数字签名证书对请求消息中包含的第一认证签名S1进行认证。
当OEM设备认证第一认证签名S1有效且合法之后,执行下面步骤S404。
S404:OEM设备使用请求消息中包括加密公钥enc_pk对目标密钥进行加密,得到密文。
执行步骤404时,具体可以参考上述步骤S308,此处不再具体赘述。
S405:OEM设备向TIER1设备发送响应消息,TIER1设备接收OEM设备发送的响应消息。
其中,响应消息中包括密文C、第一数字签名S2、第二数字签名S3、OEM设备的数字签名证书。
S406:TIER1设备使用响应消息中的OEM设备的数字签名证书对第二数字签名S3进行认证。
当TIER1设备认证第二数字签名S3通过之后,执行下面步骤S407。
S407:TIER1设备使用加密私钥enc_sk对所述密文C进行解密,获取所述目标密钥PMEK。
执行步骤S407时,具体可参考上述步骤S311,此处不再具体赘述。
S408:TIER1设备根据预设的密钥算法和所述目标密钥,得到确认密钥K_ack;
执行步骤S408时,具体可参考上述步骤S312,此处不再具体赘述。
S409:TIER1设备根据确认密钥K_ack,生成确认信息MAC;进一步TIER1设备根据TIER1设备的签名私钥sk_TIER1和验证信息MAC,得到验证签名ACK。
执行步骤S508时,具体可参考上述步骤S313,此处不再具体赘述。
S410:TIER1设备向OEM设备发送确认信息,该确认信息中包括验证信息MAC和验证签名ACK。OEM设备接收TIER1设备发送的确认信息。
执行步骤S410时,具体可参考上述步骤S314,此处不再具体赘述。
S411:OEM设备接收TIER1设备发送的确认信息之后,OEM设备根据预设的密钥算法和目标密钥PMEK得到的第一确认密钥K_ack’,使用该第一确认密钥K_ack’认证确认信息中的验证信息MAC。
执行步骤S411时,具体可参考上述步骤S315,此处不再具体赘述。
参阅图5所示,本申请实施例提供又一密钥的传输方法,该方法的流程包括:
S501:客户端向密钥管理实体发送请求消息,密钥管理实体接收客户端发送的请求消息,其中,请求消息用于请求目标密钥,请求消息中包括第一密钥交换信息、客户端对第一密钥交换信息的签名,以及客户端的签名认证信息。
可选的,客户端可以通过实时生成一次性第一密钥信息,或者已预先存储了一次性的第一密钥信息,客户端在实际中如何得到第一密钥信息,本申请可不做具体限定。
示例性的,客户端的第一密钥信息和第二密钥交换信息可以为客户端生成一次性基于椭圆曲线密码体制的DH密钥交换算法(elliptic curves-Diffie-Hellman,EC-DH)的秘密x和密钥交换材料X。并且,X=x*G,其中,G为所使用EC曲线的基点(base point)。
需要注意的是,客户端侧的第一密钥信息和第一密钥交换信息均为一次性的,可以避免客户端的第一密钥交换信息因重复使用而易导致泄露,进而可保证两侧之间传输目标密钥的安全性。
在第一种实施方式中,客户端的签名认证信息包括:客户端的数字签名证书。
客户端的数字签名证书可以用于认证客户端对第一密钥交换信息的签名。
在第二种实施方式中,客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥。
在第二种实施方式情况下,客户端向密钥管理实体发送请求消息之前,还包括:客户端向密钥管理实体发送认证请求,密钥管理实体接收所述客户端发送的认证请求;其中,认证请求包括:客户端的签名认证公钥和客户端的身份标识;然后密钥管理实体根据该认证请求,对客户端进行身份认证;进一步密钥管理实体在客户端身份认证通过之后,使用密钥管理实体的签名认证私钥对客户端的签名认证公钥进行签名,得到初始认证签名;最后密钥管理实体向客户端发送初始认证签名,客户端接收密钥管理实体的初始认证签名。
可选的,密钥管理实体根据该认证请求,对客户端进行身份认证时,可以通过其他可靠方法对该认证信息进行认证,以确保双方通信的安全性和合法性。例如线下由专人传送,或者双方通过合同进行约定,以保证客户端的合法性和有效性。具体的可靠方式,本申请不做具体限定。
需要注意的是,客户端从密钥管理实体获取初始认证签名的过程可以设为在线上或离线(线下)进行。
其中,客户端的签名认证公钥的作用为:密钥管理实体在接收到该请求消息之后,可以使用客户端的签名公钥对初始认证签名进行认证。
S502:密钥管理实体根据客户端的签名认证信息确定客户端对第一密钥交换信息的签名正确。
示例性的,客户端以TIER1设备为例,TIER1设备的签名认证私钥表示为sk_TIER1,第一密钥交换信息表示为X,客户端对第一密钥交换信息的签名表示为S1,S1可以满足以下公式:S1=Sign(sk_TIER1,X)。即该步骤为了确定S1正确。
在上述第二种实施方式中,客户端的签名认证信息包括:初始认证签名和客户端的签名认证公钥时,执行步骤S502时,还包括:密钥管理实体使用客户端的签名认证公钥认证初始认证签名正确。
S503:密钥管理实体使用密钥管理实体的加解密密钥对目标密钥进行加密,得到密文。其中,密钥管理实体的加解密密钥为密钥管理实体根据客户端的第一密钥交换信息、密钥管理实体的第二密钥交换信息以及客户端对所述第一密钥交换信息的签名得到的。
在一种实施方式中,密钥管理实体使用密钥管理实体的加解密密钥对目标密钥进行加密,得到密文时,还包括:
密钥管理实体可以根据所述客户端的第一密钥交换信息、密钥管理实体的第二密钥交换信息,以及客户端对第一密钥交换信息的签名,得到第一验证密钥;密钥管理实体根据第一验证密钥、客户端对第一密钥交换信息的签名、第一密钥交换信息、第二密钥交换信息,得到第一验证信息。
示例性的,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。密钥管理实体的加解密密钥表示为K_enc、k_dec,第一验证密钥表示为K_mac,第一验证信息表示为MAC1,目标密钥表示为PMEK,密文表示为C。客户端的第一密钥交换信息表示为X,密钥管理实体的第二密钥信息表示为y,密钥管理实体的第二密钥交换信息表示为Y。
其中,Y=y*G,其中,G为所使用EC曲线的基点(base point)。
密钥管理实体的加解密密钥可以满足公式为:K_enc=k_dec=HKDF(y*X,S1||X||Y||“ENC”)。
其中,K_enc表示为密钥管理实体的加密密钥,k_dec表示为密钥管理实体的解密密钥。
K_mac可以满足公式为:K_mac=HKDF(y*X,S1||X||Y||“MAC”)。
MAC1可以满足公式为:MAC1=HKDF(K_mac,S1||X||Y||)。
C=AES-GCM(K_enc,PMEK),其中,C需要的IV=|SHA256(X||Y)|96
其中,“ENC”为一个用于标识派生K_enc的字符串,可以是由TIER1设备和OEM设备预先协商特定编码规则的字符串,当然也可采用其它的字符串所代替,本申请实施例对此不进行限制。“MAC”为一个用于标识派生K_mac的字符串,可以是由TIER1设备和OEM设备预先协商特定编码规则的字符串,当然也可采用其它的字符串所代替,本申请实施例对此不进行限制。“|…|96”表示取前96个比特。
S504:密钥管理实体向客户端发送响应消息,客户端接收该响应消息,响应消息中包括密文、密钥管理实体的第二密钥交换信息、密钥管理实体对第一传输过程信息的签名,以及密钥管理实体的签名认证信息。
其中,所述第一传输过程信息包括以下一项或多项:密文,第一密钥交换信息,第二密钥交换信息。
示例性的,密钥管理实体对第一传输过程信息的签名表示为S2。
S2可以满足公式为:S2=Sign(sk_OEM,X||Y||MAC1||C)。
需要注意的是,响应信息中还包括:第一验证信息。第一传输过程信息还包括:第一验证信息。
S505:客户端根据密钥管理实体的签名认证信息确定密钥管理实体对第一传输过程信息的签名正确。
S506:客户端使用客户端的加解密密钥,对密文进行解密,获取目标密钥。
其中,客户端的加解密密钥为客户端根据客户端的第一密钥交换信息、密钥管理实体的第二密钥交换信息以及客户端对所述第一密钥交换信息的签名得到的。
在一种实施方式中,在客户端使用客户端的加解密密钥,对密文进行解密,获取目标密钥之前,还包括:客户端根据第二验证密钥确定第一验证信息正确;其中,第二验证密钥为客户端根据客户端的第一密钥交换信息、密钥管理实体的第二密钥交换信息、客户端对所述第一密钥交换信息的签名得到的。
示例性的,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。密钥管理实体的加解密密钥表示为(K_enc、K_dec),第二验证密钥表示为K_mac’,第二验证信息表示为MAC2,目标密钥表示为PMEK,密文表示为C,客户端的第一密钥信息表示为x,客户端的第一密钥交换信息表示为X,密钥管理实体的第二密钥信息表示为y,密钥管理实体的第二密钥交换信息表示为Y。
X=x*G,其中,G为所使用EC曲线的基点(base point)。
密钥管理实体的加解密密钥可以满足公式为:K_enc=K_dec=HKDF(x*Y,S1||X||Y||“ENC”);
其中,K_enc为密钥管理实体进行加密使用的加密密钥,K_dec为密钥管理实体进行解密使用的解密密钥。
K_mac’可以满足公式为:K_mac’=HKDF(x*Y,S1||X||Y||“MAC”);
MAC2可以满足公式为:MAC2=HKDF(K_mac’,S1||X||Y);
PMEK可以满足公式为:PMEK=AES-GCM(K_dec,C);其中,C需要的IV=|SHA256(X||Y)|96
此处公式的解释可参考第一种密钥传输方案,此处不再具体赘述。
可选的,密钥管理实体根据第二验证密钥确定第一验证信息正确,具体包括:密钥管理实体根据第二验证密钥得到第二验证信息MAC2,将第一验证信息MAC1与第二验证信息MAC2进行比较,若相同,确定第一验证信息正确。
S507:客户端向密钥管理实体发送确认消息,密钥管理实体接收该确认信息,确认信息用于确认客户端收到目标密钥。
在一种实施方式中,客户端向密钥管理实体发送确认消息之前,还包括:客户端根据目标密钥,第二传输过程信息以及目标密钥的确认结果产生确认密钥;客户端根据确认密钥和目标密钥传输过程信息得到第三验证信息。
其中,第二传输过程信息包括以下一项或多项:客户端对第一密钥交换信息的签名、密钥管理实体对第一传输过程信息的签名、第一密钥交换信息、第二密钥交换信息;
目标密钥传输过程信息包括以下一项或多项:客户端对所述第一密钥交换信息的签名、密钥管理实体对第一传输过程信息的签名、第一密钥交换信息、第二密钥交换信息,密文。
因此,确认消息包括:第三验证信息,以及客户端对第三验证信息和目标密钥传输过程信息的签名。
示例性的,客户端以TIER1设备为例,TIER1设备的签名认证私钥表示为sk_TIER1,目标密钥表示为PMEK,确认密钥表示为K_ack,第三验证信息表示为MAC3,客户端对第三验证信息和目标密钥传输过程信息的签名表示为ACK。
K_ack满足公式为:K_ack=HKDF(PMEK,S1||S2||X||Y||“ACK”);
MAC3满足公式为:MAC3=HKDF(K_ack,S1||S2||X||Y||MAC1||C);
ACK满足公式为:ACK=Sign(sk_TIER1,MAC3||S1||S2||X||Y|||MAC1||C||“Succeeded or Failed”)。
此处公式的解释可参考第一种密钥传输方案,此处不再具体赘述。
其中,目标密钥传输过程信息包括:S1、S2、X、Y、C。
即目标密钥传输过程信息包括:客户端对第一密钥交换信息的签名S1、密钥管理实体对第一传输过程信息的签名S2、第一密钥交换信息X、第二密钥交换信息Y、密文C。
需要注意的是:目标密钥传输过程信息还包括:第一验证信息MAC1。
在一种实施方式中,密钥管理实体接收该确认信息之后,还包括:密钥管理实体可以根据预设的密钥算法和目标密钥得到的第一确认密钥,使用该确认密钥认证响应信息中的确认信息。
其中,密钥管理实体使用该第一确认密钥对响应信息中的第一确认信息进行认证时,具体包括:密钥管理实体先根据预设的密钥算法和目标密钥得到的第一确认密钥,然后,密钥管理实体根据第一确认密钥,进一步密钥管理实体使用该第一确认密钥认证确认信息中的第三验证信息。同时还可以利用事先存储的客户端的数字签名证书认证客户端对第三验证信息和目标密钥传输过程信息的签名ACK。
示例性的,密钥管理实体生成的第一确认密钥K_ack’的方式可参考客户端生成确认密钥的方式。此处不再具体赘述。
综上所述,基于密钥协商协议传输的方案中,首先,客户端向密钥管理实体发送用于请求目标密钥的请求消息,该请求消息中包括一次性客户端的密钥交换信息、客户端对第一密钥交换信息的签名,以及客户端的签名认证信息。由于客户端的密钥交换信息为一次性,进而避免客户端的密钥交换信息重复使用容易发生泄漏,从而保证客户端和密钥管理实体之间的密钥传输安全性。
然后,密钥管理实体在接收到该请求消息后,先认证该请求消息中客户端对第一密钥交换信息的签名正确后,则使用密钥管理实体的加密密钥对目标密钥进行加密得到密文,并得到密钥管理实体的第一验证信息。进一步,密钥管理实体向客户端返回包括密文的响应消息。客户端接收响应消息之后,确定密钥管理实体对第一传输过程信息的签名正确;并且需要认证第一验证消息正确,然后,客户端使用客户端的加解密钥对响应消息中的密文进行解密,获取目标密钥。从而可知,这样可以保证密钥管理实体和客户端双方进行加密和解密的安全性和有效性。
最后,客户端获取目标密钥之后得到确认信息,该确认信息既可以用于确定客户端已获取目标密钥,还可以作为证据,防止客户端对“已获取目标密钥”的事实进行否认或者防止密钥管理实体对“已发送目标密钥”的事实进行否认。
因此,该方案既可以保证目标密钥传输的安全性,也可以防止密钥传输的双方对密钥传输的事实进行否认。
基于以上实施例提供的第二种密钥的传输方案,该方案主要利用密钥协商协议的方式,实现密钥的传输。本申请根据该方案,同样也提供了以下两种具体的实例(即下述的第三实施例和第四实施例),以详细说明本申请的技术方案。
在第三个实施例中,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。TIER1设备中没有存储TIER1设备的数字签名证书、但存储了TIER1设备的签名认证私钥和TIER1设备的签名认证公钥。OEM设备中存储了OEM的数字签名证书、OEM的签名认证私钥、目标密钥PMEK。如图6所示,TIER1设备向OEM设备请求获取目标密钥的具体流程包括以下步骤:
由于TIER1设备没有数字签名证书,OEM设备在与TIER1设备进行密钥传输之前,需要先对TIER1设备进行相关认证。因此,需要在OEM设备与TIER1设备进行密钥传输之前,执行下述初始阶段(具体参考步骤S601-S604),TIER1设备获取初始认证签名S,进而OEM设备通过验证TIER1设备的初始认证签名S有效且合法,才可以进一步传输目标密钥。从而保证OEM设备与TIER1设备之前传输密钥的安全性。
S601:TIER1设备向OEM设备发送TIER1设备的身份标识TIER1_ID和TIER1设备的签名认证公钥pk_TIER1。
S602:OEM设备对TIER1设备的身份标识和TIER1设备的签名认证公钥进行认证。
S603:OEM设备认证TIER1的身份标识和TIER1设备的签名认证公钥通过时,使用OEM设备的证书对应的签名认证私钥sk_OEM对TIER1设备的签名认证公钥pk_TIER1进行签名,得到初始认证签名S。
具体的,初始认证签名S可以满足:S=Sign(sk_OEM,TIER1_ID||pk_TIER1)。
S604:OEM设备将初始认证签名S发送给TIER1设备,TIER1设备接收OEM设备发送的初始认证签名S。
S605:TIER1设备生成一次性第一密钥信息,并根据该第一密钥信息x,得到第一密钥交换信息X。
在本申请实施例中,第一密钥信息可以为一次性基于椭圆曲线密码体制的DH密钥交换算法EC-DH秘密x,第一密钥交换信息可以为密钥交换材料X,并且满足公式:X=x*G。其中,G为所使用EC曲线的基点(base point)。
S606:TIER1设备向OEM设备发送请求消息,OEM设备接收TIER1设备发送的请求消息。
该请求消息中包括:TIER1设备的第一密钥交换信息X、第一认证签名S1、初始认证签名S、TIER1设备的签名认证公钥pk_TIER1;其中,第一认证签名S1为TIER1设备使用TIER1设备的签名认证私钥sk_TIER1对第一密钥交换信息X进行签名得到的。
具体的,S1可以满足:S1=Sign(sk_TIER1,X)。
需要注意的是,TIER1设备和OEM设备中均存储了EC曲线的基点G的情况下,TIER1设备的第一密钥信息x和TIER1设备的第一密钥交换信息X可以互相推导出来,OEM设备的第二密钥信息y和OEM设备的第二密钥交换信息Y可以互相推导出来。
S607:OEM设备对请求消息中的初始认证签名S和第一认证签名S1进行认证。
具体的,首先,OEM设备使用OEM设备的签名认证私钥sk_OEM对请求消息中的初始认证签名S进行认证。然后,当OEM设备认证初始认证签名S有效之后,使用请求消息中的TIER1设备的签名认证公钥pk_TIER1对请求消息中第一认证签名S1进行认证,当OEM设备认证第一认证签名S1有效之后,执行下面步骤S608。
S608:OEM设备根据第一认证签名S1、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥信息y、OEM设备的第二密钥交换信息Y,得到OEM设备的加密密钥,使用该OEM设备的加密密钥对目标密钥进行加密,得到密文C。
OEM设备执行步骤608,具体包括以下步骤:
第一步骤:OEM设备根据第一认证签名S1、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥信息y、OEM设备的第二密钥交换信息Y,分别得到OEM设备的加密密钥K_enc和OEM设备的工作密钥K_mac。
OEM设备的加密密钥K_enc可以满足:K_enc=HKDF(y*X,S1||X||Y||“ENC”);
OEM设备的工作密钥K_mac可以满足:K_mac=HKDF(y*X,S1||X||Y||“MAC”)。
第二步骤:OEM设备使用OEM设备的加密密钥k_enc对目标密钥PMEK进行加密,得到密文C,并根据OEM设备的工作密钥k_mac,得到OEM设备的工作密钥标签MAC1。
密文C可以满足:C=AES-GCM(K_enc,PMEK),其中,C需要的IV=|SHA256(X||Y)|96
OEM设备的工作密钥标签MAC1可以满足:MAC1=HMAC(K_mac,S1||X||Y)。
第三步骤:OEM设备使用OEM设备的签名认证私钥sk_OEM对密文C和OEM设备的工作密钥标签MAC1进行签名,得到第一数字签名S2。
第一数字签名S2可以满足:S2=Sign(sk_OEM,X||Y||MAC1||C)。
S609:OEM设备向TIER1设备发送响应消息,TIER1设备接收OEM设备发送的响应消息。
其中,响应消息中包括密文C、OEM设备的第二密钥交换信息Y、OEM的数字签名证书、第一数字签名S2、OEM设备的工作密钥标签MAC1。
S610:TIER1设备使用上述响应消息中包括的OEM设备的数字签名证书,对响应消息中包含的第一数字签名S2进行认证。
TIER1设备认证第一数字签名S2有效之后,才执行下面步骤S611。
S611:TIER1设备根据第一认证签名S1、TIER1设备的第一密钥信息x、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥交换信息Y,得到TIER1设备的解密密钥,并使用该TIER1设备的解密密钥对密文C进行解密,获取目标密钥PMEK。
TIER1设备在执行步骤611时,具体包括以下步骤:
第一步骤:TIER1设备使用上述响应消息中包括的OEM设备的数字签名证书,对响应消息中包含的第一数字签名S2进行认证。
第一步骤:TIER1设备认证第一数字签名S2有效之后,根据第一认证S1、TIER1设备的第一密钥信息x、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥交换信息Y,分别得到TIER1设备的解密密钥K_dec和TIER1设备的工作密钥K_mac’。
TIER1设备的解密密钥K_dec可以满足:K_dec=HKDF(x*Y,S1||X||Y||“ENC”);
TIER1设备的工作密钥K_mac’可以满足:K_mac=HKDF(x*Y,S1||X||Y||“MAC”)。
第二步骤:TIER1设备根据TIER1设备的工作密钥K_mac’,得到TIER1设备的工作密钥标签MAC2,将TIER1设备的工作密钥标签MAC2和响应消息中的OEM设备的工作密钥标签MAC1进行比较。
TIER1设备的工作密钥标签MAC2可以满足:MAC2=HMAC(K_mac,S1||X||Y)。
第三步骤:当TIER1设备确定OEM设备的工作密钥标签MAC2和OEM设备的工作密钥标签MAC1相同时,TIER1设备使用TIER1设备的解密密钥K_dec对响应消息中的密文C进行解密,得到目标密钥PMEK。
目标密钥PMEK可以满足:PMEK=AES-GCM(K_dec,C),其中,C需要的IV=|SHA256(X||Y)|96
S612:TIER1设备根据预设的密钥算法和目标密钥PMEK,得到确认密钥K_ack;
确认密钥K_ack可以满足:K_ack=HKDF(PMEK,S1||X||Y“ACK”)。
S613:TIER1设备根据确认密钥K_ack,生成确认信息MAC3;进一步TIER1设备根据TIER1设备的签名认证私钥和确认信息MAC3,得到确认签名ACK。
确认信息MAC3可以满足:MAC3=HKDF(K_ack,S1||S2||X||Y||MAC1||C)。
确认签名ACK可以满足:ACK=Sign(sk_TIER1,MAC1||S1||S2||X||Y||MAC1||C“Succeeded or Failed”)。
S614:TIER1设备向OEM设备发送确认信息,该确认信息中包括验证信息MAC3和验证签名ACK。OEM设备接收TIER1设备发送的确认信息。
S615:OEM设备根据预设的密钥算法和目标密钥得到的第一确认密钥K_ack’,使用该第一确认密钥K_ack’认证确认信息中的验证信息MAC3。
第一确认密钥表示为K_ack’,确认信息中的验证信息表示为MAC3,第一验证信息MAC’。K_ack’和MAC’的公式可以满足以下:
K_ack’=HKDF(PMEK,S1||S2||S3||enc_pk||nonce1||nonce2||“ACK”);
MAC’=HKDF(K_ack’,nonce1||nonce2)。
OEM设备将第一确认密钥MAC’与确认信息中的验证信息MAC3进行比较,若相同,则确定TIER1设备已成功获取目标密钥传输。
在第四个实施例中,客户端以TIER1设备为例,密钥管理实体以OEM设备为例。TIER1设备中存储了TIER1设备的数字签名证书、TIER1设备的签名认证私钥sk_TIER1。OEM设备中存储了OEM设备的数字签名证书、OEM设备的签名认证私钥sk_OEM,目标密钥PMEK。如图7所示,具体流程包括以下步骤:
S701:TIER1设备生成一次性第一密钥信息,并根据该第一密钥信息x,得到TIER1设备的第一密钥交换信息X。
TIER1设备在有数字签名证书的情况下,执行步骤S601具体可以参考上述步骤S605,此处不再具体赘述。
S702:TIER1设备向OEM设备发送请求消息,OEM设备接收TIER1设备发送的请求消息。
该请求消息中包括TIER1设备的第一密钥交换信息X、第一认证签名S1、TIER1设备的签名认证公钥pk_TIER1,以及TIER1设备的数字签名证书。其中,第一认证签名S1为TIER1设备使用TIER1设备的签名认证私钥sk_TIER1对第一密钥交换信息X进行签名得到的。
具体的,S1可以满足:S1=Sign(sk_TIER1,X)。
S703:OEM设备对请求消息中的第一认证签名S1进行认证。
具体的,OEM设备使用请求消息中的OEM设备的数字签名证书对请求消息中的第一认证签名S1进行认证。当OEM设备认证第一认证签名S1有效之后,执行下面步骤S704。
S704:OEM设备根据第一认证签名S1、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥信息y、OEM设备的第二密钥交换信息Y,得到OEM设备得加密密钥,使用OEM设备的加密密钥,对目标密钥PMEK进行加密,得到密文C。
OEM设备执行步骤S704时,具体可以参考上述步骤S608,此处不再具体赘述。
需要注意的是,TIER1设备和OEM设备均存储了EC曲线的基点G的情况下,TIER1设备的第一密钥信息x和TIER1设备的第一密钥交换信息X可以互相推导出来,OEM设备的第二密钥信息x和OEM设备的第二密钥交换信息X可以互相推导出来。
S705:OEM设备向TIER1设备发送响应消息,TIER1设备接收OEM设备发送的响应消息。
响应消息中包括密文C、OEM设备的第二密钥交换信息Y、OEM的数字签名证书、第一数字签名S2、OEM设备的工作密钥标签MAC1。具体可参考上述步骤S609,此处不再具体赘述。
S706:TIER1设备使用上述响应消息中包括的OEM设备的数字签名证书,对响应消息中包含的第一数字签名S2进行认证。
TIER1设备认证第一数字签名S2有效之后,才执行下述步骤S707。
S707:TIER1设备根据所述第一认证签名S1、TIER1设备的第一密钥信息x、TIER1设备的第一密钥交换信息X、OEM设备的第二密钥交换信息Y,得到TIER1设备的解密密钥,使用该TIER1设备的解密密钥,对密文C进行解密,获取目标密钥PMEK。
TIER1设备执行步骤S707时,具体可参考上述步骤S611,此处不再具体赘述。
S708:TIER1设备根据预设的密钥算法和目标密钥PMEK,得到确认密钥K_ack;
TIER1设备执行步骤S708时,具体可参考上述步骤S612,此处不再具体赘述。
S709:TIER1设备根据所述确认密钥K_ack,生成验证信息MAC3;进一步TIER1设备根据TIER1设备的签名认证私钥和验证信息MAC3,得到验证签名ACK。
TIER1设备执行步骤S709时,具体可参考上述步骤S613,此处不再具体赘述。
S710:TIER1设备向OEM设备发送确认信息,该确认信息中包括验证信息MAC3和验证签名ACK。OEM设备接收TIER1发送的确认信息。
TIER1设备执行步骤S710时,具体可参考上述步骤S614,此处不再具体赘述。
S711:OEM设备根据预设的密钥算法和目标密钥得到的第一确认密钥K_ack’,使用该确认密钥K_ack’认证确认信息中的验证信息MAC3。
TIER1设备执行步骤S711时,具体可参考上述步骤S615,此处不再具体赘述。
基于同一技术构思,本申请实施例提供第一种密钥的传输装置(与本申请实施例的第一种方案相对应),具有上述方法实施例中客户端的行为功能。该密钥的传输装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置可以具有如图8所示的结构。
如图8所示,该装置800可包括通信单元801、处理单元802,下面对各单元进行具体的介绍。
通信单元801,用于向密钥管理实体发送请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;
所述通信单元801,还用于接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;其中,所述密文为是根据所述客户端的加密公钥对所述目标密钥加密得到的;
处理单元802,用于使用所述密钥管理实体的签名认证信息确定所述密文的签名正确;所述处理单元802还用于使用所述客户端的加密私钥对所述密文进行解密,获取所述目标密钥;
所述通信单元801还用于向所述密钥管理实体发送确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
一种可能的设计中,所述处理单元802,还用于:在所述通信单元801向所述密钥管理实体发送确认消息之前,根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果产生确认密钥;根据所述确认密钥得到验证信息。
一种可能的设计中,所述确认消息包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名。
一种可能的设计中,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述通信单元801还用于:在向所述密钥管理实体发送所述请求消息之前,
向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
一种可能的设计中,所述响应消息还包括所述密钥管理实体对所述目标密钥的签名,所述方法包括:所述客户端根据所述密钥管理实体的签名认证信息,确定所述密钥管理实体对所述目标密钥的签名正确。
一种可能的设计中,所述目标密钥传输过程信息还包括所述密钥管理实体对所述目标密钥的签名。
基于同一技术构思,本申请实施例还提供第一种密钥的传输装置(与本申请实施例的第一种方案相对应),具有上述方法实施例中密钥管理实体的行为功能。该密钥的传输装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置结构图也可以参考上述图8所示的结构。
如图8所示,该装置800可包括通信单元801、处理单元802,下面对各单元进行具体的介绍。
通信单元801,用于接收客户端发送的请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;
处理单元802,用于根据所述客户端的签名认证信息确定所述客户端对所述加密公钥的签名正确;
所述处理单元802,还用于使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文;
所述通信单元801,还用于向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;接收所述客户端发送的确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
一种可能的设计中,所述确认消息包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名;其中,所述验证信息为所述客户端根据确认密钥得到的,所述确认密钥为所述客户端根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果得到的。
一种可能的设计中,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名以及所述客户端的签名认证公钥;所述通信单元801还用于:在接收所述客户端发送的请求消息之前,先接收所述客户端发送的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;然后通过处理单元802使用所述认证请求,对所述客户端进行身份认证;进一步在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;最后向所述客户端发送所述初始认证签名。
一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
一种可能的设计中,所述处理单元802还用于:使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文之前,使用所述客户端的签名认证公钥,确定所述初始认证签名正确。
基于同一技术构思,本申请实施例还提供一种密钥的传输装置(与本申请实施例的第二种方案相对应),具有上述方法实施例中客户端的行为功能。该密钥的传输装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置的结构图可以参考上述图8所示的结构。
如图8所示,该装置800可包括通信单元801、处理单元802,下面对各单元进行具体的介绍。
通信单元801,用于向密钥管理实体发送请求消息;所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;
所述通信单元801还用于接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息,其中,所述密文为所述密钥管理实体根据所述密钥管理实体的加解密密钥对所述目标密钥加密得到的,所述密钥管理实体的加解密密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述第一传输过程信息包括以下一项或多项:所述密文、所述第一密钥交换信息、所述第二密钥交换信息;
处理单元802,用于根据所述密钥管理实体的签名认证信息确定所述密钥管理实体对第一传输过程信息的签名正确;
所述处理单元802还用于使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥;所述客户端的加解密密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述通信单元801还用于向所述密钥管理实体发送确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
一种可能的设计中,所述处理单元802还用于:在所述通信单元801向所述密钥管理实体发送确认消息之前,根据所述目标密钥,第二传输过程信息以及所述目标密钥的确认结果产生确认密钥;根据所述确认密钥和所述目标密钥传输过程信息得到第三验证信息;
其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息;
所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,所述密文。
一种可能的设计中,所述确认消息包括:所述第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名。
一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述通信单元801还用于:在所述客户端向所述密钥管理实体发送所述请求消息之前,向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
一种可能的设计中,所述响应消息还包括:第一验证信息;其中,所述第一验证信息为所述密钥管理实体根据第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息得到的;所述第一验证密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述第一传输过程信息还包括:所述第一验证信息。
一种可能的设计中,所述处理单元802还用于:在使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥之前,根据第二验证密钥确定所述第一验证信息正确;其中,所述第二验证密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息、所述客户端对所述第一密钥交换信息的签名得到的。
一种可能的设计中,所述目标密钥传输过程信息还包括:所述第一验证信息。
基于同一技术构思,本申请实施例还提供一种密钥的传输装置(与本申请实施例的第二种方案相对应),具有上述方法实施例中密钥管理实体的行为功能。该密钥的传输装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置的结构图可以参考上述图8所示的结构。
如图8所示,该装置800可包括通信单元801、处理单元802,下面对各单元进行具体的介绍。
所述通信单元801,用于接收客户端发送的请求消息;其中,所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;
处理单元802,用于根据所述客户端的签名认证信息确定所述客户端对所述第一密钥交换信息的签名正确;所述处理单元802,还用于使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文;
所述通信单元801,还用于向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息;
其中,所述第一传输过程信息包括以下一项或多项:所述密文,所述第一密钥交换信息,所述第二密钥交换信息;
所述通信单元801,还用于接收所述客户端发送的确认消息,所述确认信息用于确认所述客户端收到所述目标密钥。
一种可能的设计中,所述确认消息包括:第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名;所述第三验证信息为所述客户端根据确认密钥和所述目标密钥传输过程信息得到的;所述确认密钥为所述客户端根据所述目标密钥、第二传输过程信息以及所述目标密钥的确认结果得到的。
其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息;
所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息,所述密文。
一种可能的设计中,所述客户端的签名认证信息包括:所述客户端的数字签名证书。一种可能的设计中,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;所述通信单元801还用于:在接收所述客户端发送的所述请求消息之前,接收所述客户端的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;然后通过处理单元802根据所述认证请求,对所述客户端进行身份认证;
进一步在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;最后向所述客户端发送所述初始认证签名。
一种可能的设计中,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
一种可能的设计中,所述处理单元802还用于:在使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文时,根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到第一验证密钥;然后根据所述第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,得到第一验证信息。
一种可能的设计中,所述响应消息还包括:所述第一验证信息;所述第一传输过程信息还包括:所述第一验证信息。
此外,本申请实施例还提供一种本申请第一种方案所使用的密钥传输的设备,该密钥传输的设备可以具有如图9所示的结构,所述密钥传输的设备可以是客户端,也可以是能够支持客户端实现上述方法的芯片或芯片系统。如图9所示的密钥传输的设备900可以包括至少一个处理器902,所述至少一个处理器902用于与存储器903耦合,读取并执行所述存储器中的指令以实现本申请实施例提供的方法中客户端涉及的步骤。可选的,该装置900还可以包括收发器901,所述收发器901可以用于支持装置900进行信令或者数据的接收或发送。装置900中的收发器902,可用于实现上述通信单元801所具有的功能,例如,收发器901可用于装置900执行如图2所示的密钥的传输方法中的S201、S204和S207,或者如图3所示的密钥的传输方法中的S301和S304、S306、S309、S314,或者如图4所示的密钥的传输方法中的S402、S405和S410所示步骤,处理器902可用于实现上述处理单元802所具有的功能,例如,处理器902可用于装置900执行如图2所示的密钥的传输方法中的S202、S203、S205和S206,或者如图3所示的密钥的传输方法中的S305和S310-S313,或者如图4所示的密钥的传输方法中的S401和S406-S409所示步骤。此外,收发器901可与天线耦合,用于支持装置900进行通信。可选的,装置900还可以包括存储器903,其中存储有计算机程序、指令,存储器903可以与处理器902和/或收发器901耦合,用于支持处理器902调用存储器903中的计算机程序、指令以实现本申请实施例提供的方法中TIER1设备涉及的步骤;另外,存储器903还可以用于存储本申请方法实施例所涉及的数据,例如,用于存储支持收发器902实现交互所必须的数据、信息。
本申请实施例还提供的一种本申请第一种方案所使用的密钥传输的设备,该密钥传输的设备也可以具有如图9所示的结构,所述密钥传输的设备可以是密钥管理实体,也可以是能够支持密钥管理实体实现上述方法的芯片或芯片系统。如图9所示的密钥传输的设备900可以包括至少一个处理器902,所述至少一个处理器902用于与存储器903耦合,读取并执行所述存储器903中的指令以实现本申请实施例提供的方法中密钥管理实体涉及的步骤。可选的,该装置900还可以包括收发器901,所述收发器901可以用于支持装置900进行信令或者数据的接收或发送。装置900中的收发器901,可用于实现上述通信单元801所具有的功能,例如,收发器901可用于装置900执行如图2所示的密钥的传输方法中的S201、S204和S207,或者如图3所示的密钥的传输方法中的S301和S304、S306、S309、S314,或者如图4所示的密钥的传输方法中的S401和S406-S409所示步骤,处理器902可用于实现上述处理单元802所具有的功能,例如,处理器902可用于装置900执行如图2所示的密钥的传输方法中的S205、S206,或者如图3所示的密钥的传输方法中的S302-S303、S307-S308、S315,或者如图4所示的密钥的传输方法中的S403-S404、S411所示步骤。此外,收发器901可与天线耦合,用于支持装置900进行通信。可选的,装置900还可以包括存储器903,其中存储有计算机程序、指令,存储器903可以与处理器902和/或收发器901耦合,用于支持处理器902调用存储器903中的计算机程序、指令以实现本申请实施例提供的方法中OEM设备涉及的步骤;另外,存储器903还可以用于存储本申请方法实施例所涉及的数据,例如,用于存储支持收发器901实现交互所必须的数据、信息。
本申请实施例还提供一种本申请第二种方案所使用的密钥传输的设备,该密钥传输的设备也可以具有如图9所示的结构,所述密钥传输的设备可以是客户端,也可以是能够支持客户端实现上述方法的芯片或芯片系统。如图9所示的密钥传输的设备900可以包括至少一个处理器902,所述至少一个处理器902用于与存储器903耦合,读取并执行所述存储器中的指令以实现本申请实施例提供的方法中客户端涉及的步骤。可选的,该装置900还可以包括收发器901,所述收发器901可以用于支持装置900进行信令或者数据的接收或发送。装置900中的收发器901,可用于实现上述通信单元801所具有的功能,例如,收发器901可用于装置900执行如图5所示的密钥的传输方法中的S501、S504和S507,或者如图6所示的密钥的传输方法中的S601和S604、S606、S609、S614,或者如图7所示的密钥的传输方法中的S702、S705和S710所示步骤,处理器902可用于实现上述处理单元802所具有的功能,例如,处理器902可用于装置900执行如图5所示的密钥的传输方法中的S502、S503、S505和S506,或者如图6所示的密钥的传输方法中的S605和S610-S613,或者如图7所示的密钥的传输方法中的S701和S706-S709所示步骤。此外,收发器901可与天线耦合,用于支持装置900进行通信。可选的,装置900还可以包括存储器903,其中存储有计算机程序、指令,存储器903可以与处理器902和/或收发器901耦合,用于支持处理器902调用存储器903中的计算机程序、指令以实现本申请实施例提供的方法中TIER1设备涉及的步骤;另外,存储器903还可以用于存储本申请方法实施例所涉及的数据,例如,用于存储支持收发器901实现交互所必须的数据、信息。
本申请实施例还提供本申请第二种方案所使用的密钥传输的设备,该密钥传输的设备也可以具有如图9所示的结构,所述密钥传输的设备可以是密钥管理实体,也可以是能够支持密钥管理实体实现上述方法的芯片或芯片系统。如图9所示的密钥传输的设备900可以包括至少一个处理器902,所述至少一个处理器902用于与存储器903耦合,读取并执行所述存储器中的指令以实现本申请实施例提供的方法中密钥管理实体涉及的步骤。可选的,该装置900还可以包括收发器901,所述收发器901可以用于支持装置900进行信令或者数据的接收或发送。装置900中的收发器901,可用于实现上述通信单元801相应的所具有的功能,例如,收发器901可用于装置900执行如图5所示的密钥的传输方法中的S501、S504和S507,或者如图6所示的密钥的传输方法中的S601和S606、S611,或者如图7所示的密钥的传输方法中的S702和S710所示步骤,处理器902可用于实现上述相应的处理单元802所具有的功能,例如,处理器902可用于装置900执行如图5所示的密钥的传输方法中的S505、S506,或者如图6所示的密钥的传输方法中的S602-S603、S607-S608、S615,或者如图7所示的密钥的传输方法中的S703-S704、S711所示步骤。此外,收发器901可与天线耦合,用于支持装置900进行通信。可选的,装置900还可以包括存储器903,其中存储有计算机程序、指令,存储器903可以与处理器902和/或收发器902耦合,用于支持处理器902调用存储器903中的计算机程序、指令以实现本申请实施例提供的方法中OEM设备涉及的步骤;另外,存储器903还可以用于存储本申请方法实施例所涉及的数据,例如,用于存储支持收发器901实现交互所必须的数据、信息。
基于与上述方法实施例相同构思,本申请实施例还提供了一种计算机可读存储介质,其上存储有一些指令,这些指令被计算机调用执行时,可以使得计算机完成上述方法实施例、方法实施例的任意一种可能的设计中所涉及的方法。本申请实施例中,对计算机可读存储介质不做限定,例如,可以是RAM(random-access memory,随机存取存储器)、ROM(read-only memory,只读存储器)等。
基于与上述方法实施例相同构思,本申请还提供一种计算机程序产品,该计算机程序产品在被计算机调用执行时可以完成方法实施例以及上述方法实施例任意可能的设计中所涉及的方法。
基于与上述方法实施例相同构思,本申请还提供一种芯片,该芯片可以包括处理器以及接口电路,用于完成上述方法实施例、方法实施例的任意一种可能的实现方式中所涉及的方法,其中,“耦合”是指两个部件彼此直接或间接地结合,这种结合可以是固定的或可移动性的,这种结合可以允许流动液、电、电信号或其它类型信号在两个部件之间进行通信。
综上所述,本申请实施例提供了一种密钥的传输方法,该方法中,客户端向密钥管理实体发送请求消息,该请求消息用于请求密钥管理实体的目标密钥,请求消息中包括客户端的加密公钥或者客户端的第一密钥交换信息;密钥管理实体可以使用客户端的加密公钥对目标密钥加密得到密文,或者密钥管理实体可以使用密钥管理实体的加解密密钥对目标密钥进行加密,得到密文。密钥管理实体向客户端发送包括密文或密钥管理实体的第二密钥交换信息的响应信息;客户端使用客户端的加密私钥对密文解密获得目标密钥,或者客户端使用客户端的加解密密钥对密文进行解密,得到目标密钥。该方法利用加密密钥对或密钥协商信息实现密钥传输,从而可以保证密钥传输的安全性,并防止不同设备发送或接收目标密钥后进行否认。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请实施例可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、电可擦可编程只读存储器(electrically erasable programmable read only memory,EEPROM)、只读光盘(compactdisc read-Only memory,CD-ROM)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(digital subscriber line,DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本申请实施例所使用的,盘(disk)和碟(disc)包括压缩光碟(compact disc,CD)、激光碟、光碟、数字通用光碟(digital video disc,DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
总之,以上所述仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡根据本申请的揭露,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (32)

1.一种密钥的传输方法,其特征在于,包括:
客户端向密钥管理实体发送请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;
所述客户端接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;其中,所述密文为是根据所述客户端的加密公钥对所述目标密钥加密得到的;
所述客户端使用所述密钥管理实体的签名认证信息确定所述密文的签名正确;
所述客户端使用所述客户端的加密私钥对所述密文进行解密,获取所述目标密钥;
所述客户端向所述密钥管理实体发送确认信息,所述确认信息用于确认所述客户端收到所述目标密钥;其中,所述客户端向所述密钥管理实体发送确认信息之前,所述方法还包括:所述客户端根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果产生确认密钥;所述客户端根据所述确认密钥得到验证信息,所述确认信息中包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名。
2.如权利要求1所述的方法,其特征在于,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
3.如权利要求1所述的方法,其特征在于,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
4.如权利要求1至3任一项所述的方法,其特征在于,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;
所述客户端向所述密钥管理实体发送所述请求消息之前,所述方法还包括:
所述客户端向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;
所述客户端接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
5.如权利要求1至3任一项所述的方法,其特征在于,所述密钥管理实体的认证信息包括:所述密钥管理实体的数字签名证书。
6.如权利要求1至3任一项所述的方法,其特征在于,所述响应消息还包括所述密钥管理实体对所述目标密钥的签名,所述方法包括:所述客户端根据所述密钥管理实体的签名认证信息,确定所述密钥管理实体对所述目标密钥的签名正确。
7.如权利要求6所述的方法,其特征在于,所述目标密钥传输过程信息还包括:所述密钥管理实体对所述目标密钥的签名。
8.一种密钥的传输方法,其特征在于,所述方法包括:
密钥管理实体接收客户端发送的请求消息,其中,所述请求消息用于请求目标密钥,所述请求消息中包括所述客户端的加密公钥、所述客户端对所述加密公钥的签名,以及所述客户端的签名认证信息;
所述密钥管理实体根据所述客户端的签名认证信息确定所述客户端对所述加密公钥的签名正确;
所述密钥管理实体使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文;
所述密钥管理实体向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名,以及所述密钥管理实体的签名认证信息;
所述密钥管理实体接收所述客户端发送的确认信息,所述确认信息用于确认所述客户端收到所述目标密钥;其中,所述确认信息中包括:所述验证信息,以及所述客户端对所述验证信息和所述目标密钥传输过程信息的签名;其中,所述验证信息为所述客户端根据确认密钥得到的,所述确认密钥为所述客户端根据所述目标密钥、所述目标密钥传输过程信息以及所述目标密钥的确认结果得到的。
9.如权利要求8所述的方法,其特征在于,所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述加密公钥的签名、所述密钥管理实体对所述目标密钥的签名、所述密钥管理实体对所述密文的签名、所述密文、所述加密公钥。
10.如权利要求8所述的方法,其特征在于,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
11.如权利要求8至10任一项所述的方法,其特征在于,所述客户端的签名认证信息包括:初始认证签名以及所述客户端的签名认证公钥;
所述密钥管理实体接收所述客户端发送的请求消息之前,所述方法还包括:
所述密钥管理实体接收所述客户端发送的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;
所述密钥管理实体根据所述认证请求,对所述客户端进行身份认证;
所述密钥管理实体在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;
所述密钥管理实体向所述客户端发送所述初始认证签名。
12.如权利要求11所述的方法,其特征在于,所述密钥管理实体使用所述客户端的加密公钥对所述目标密钥和所述目标密钥的签名进行加密,得到密文之前,所述方法还包括:
所述密钥管理实体使用所述客户端的签名认证公钥,确定所述初始认证签名正确。
13.如权利要求8至10任一项所述的方法,其特征在于,所述密钥管理实体的认证信息包括:所述密钥管理系统的数字签名证书。
14.一种密钥的传输方法,其特征在于,所述方法包括:
客户端向密钥管理实体发送请求消息;所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;
所述客户端接收所述密钥管理实体的响应消息,所述响应消息中包括密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息,其中,所述密文为所述密钥管理实体根据所述密钥管理实体的加解密密钥对所述目标密钥加密得到的,所述密钥管理实体的加解密密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述第一传输过程信息包括以下一项或多项:所述密文、所述第一密钥交换信息、所述第二密钥交换信息;
所述客户端根据所述密钥管理实体的签名认证信息确定所述密钥管理实体对第一传输过程信息的签名正确;
所述客户端使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥;所述客户端的加解密密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述客户端向所述密钥管理实体发送确认信息,所述确认信息用于确认所述客户端收到所述目标密钥。
15.如权利要求14所述的方法,其特征在于,所述客户端向所述密钥管理实体发送确认信息之前,所述方法还包括:
所述客户端根据所述目标密钥,第二传输过程信息以及所述目标密钥的确认结果产生确认密钥;所述客户端根据所述确认密钥和所述目标密钥传输过程信息得到第三验证信息;
其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息;
所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名、所述密钥管理实体对第一传输过程信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,所述密文。
16.如权利要求15所述的方法,其特征在于,所述确认信息中包括:所述第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名。
17.如权利要求14至16任一项所述的方法,其特征在于,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
18.如权利要求14至16任一项所述的方法,其特征在于,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;
所述客户端向所述密钥管理实体发送所述请求消息之前,所述方法还包括:
所述客户端向所述密钥管理实体发送认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;
所述客户端接收所述密钥管理实体的初始认证签名,其中,所述初始认证签名是根据所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名得到的。
19.如权利要求14至16任一项所述的方法,其特征在于,所述密钥管理实体的认证信息包括:所述密钥管理实体的数字签名证书。
20.如权利要求14至16任一项所述的方法,其特征在于,所述响应消息中还包括:第一验证信息;其中,所述第一验证信息为所述密钥管理实体根据第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息得到的;所述第一验证密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述第一传输过程信息还包括:所述第一验证信息。
21.如权利要求20所述的方法,其特征在于,所述客户端使用所述客户端的加解密密钥,对所述密文进行解密,获取所述目标密钥之前,所述方法还包括:
所述客户端根据第二验证密钥确定所述第一验证信息正确;其中,所述第二验证密钥为所述客户端根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息、所述客户端对所述第一密钥交换信息的签名得到的。
22.如权利要求20所述的方法,其特征在于,所述目标密钥传输过程信息中还包括:所述第一验证信息。
23.一种密钥的传输方法,其特征在于,所述方法包括:
密钥管理实体接收客户端发送的请求消息;其中,所述请求消息用于请求目标密钥,所述请求消息中包括第一密钥交换信息、所述客户端对所述第一密钥交换信息的签名,以及所述客户端的签名认证信息;
所述密钥管理实体根据所述客户端的签名认证信息确定所述客户端对所述第一密钥交换信息的签名正确;
所述密钥管理实体使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文;所述密钥管理实体的加解密密钥为所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到的;
所述密钥管理实体向所述客户端发送响应消息,所述响应消息中包括所述密文、所述密钥管理实体的第二密钥交换信息、所述密钥管理实体对第一传输过程信息的签名,以及所述密钥管理实体的签名认证信息;
其中,所述第一传输过程信息包括以下一项或多项:所述密文,所述第一密钥交换信息,所述第二密钥交换信息;
所述密钥管理实体接收所述客户端发送的确认信息,所述确认信息用于确认所述客户端收到所述目标密钥。
24.如权利要求23所述的方法,其特征在于,所述确认信息中包括:第三验证信息,以及所述客户端对所述第三验证信息和所述目标密钥传输过程信息的签名;所述第三验证信息为所述客户端根据确认密钥和所述目标密钥传输过程信息得到的;所述确认密钥为所述客户端根据所述目标密钥、第二传输过程信息以及所述目标密钥的确认结果得到的;
其中,所述第二传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息;
所述目标密钥传输过程信息包括以下一项或多项:所述客户端对所述第一密钥交换信息的签名,所述密钥管理实体对第一传输过程信息的签名,所述第一密钥交换信息,所述第二密钥交换信息,所述密文。
25.如权利要求23所述的方法,其特征在于,所述客户端的签名认证信息包括:所述客户端的数字签名证书。
26.如权利要求23所述的方法,其特征在于,所述客户端的签名认证信息包括:初始认证签名和所述客户端的签名认证公钥;
所述密钥管理实体接收所述客户端发送的所述请求消息之前,所述方法还包括:
所述密钥管理实体接收所述客户端的认证请求,其中,所述认证请求包括:所述客户端的签名认证公钥和所述客户端的身份标识;
所述密钥管理实体根据所述认证请求,对所述客户端进行身份认证;
所述密钥管理实体在所述客户端身份认证通过之后,使用所述密钥管理实体的签名认证私钥对所述客户端的签名认证公钥进行签名,得到初始认证签名;
所述密钥管理实体向所述客户端发送所述初始认证签名。
27.如权利要求23至26任一项所述的方法,其特征在于,所述密钥管理实体的认证信息包括:所述密钥管理实体的数字签名证书。
28.如权利要求23至26任一项所述的方法,其特征在于,所述密钥管理实体使用所述密钥管理实体的加解密密钥对所述目标密钥进行加密,得到密文时,所述方法还包括:
所述密钥管理实体根据所述客户端的第一密钥交换信息、所述密钥管理实体的第二密钥交换信息以及所述客户端对所述第一密钥交换信息的签名得到第一验证密钥;
所述密钥管理实体根据所述第一验证密钥、所述客户端对所述第一密钥交换信息的签名、所述第一密钥交换信息、所述第二密钥交换信息,得到第一验证信息。
29.如权利要求28所述的方法,其特征在于,所述响应消息还包括:所述第一验证信息;所述第一传输过程信息还包括:所述第一验证信息。
30.一种密钥的传输装置,所述装置应用于客户端时,其特征在于,所述装置包括:
通信单元,用于接收或发送信息;
处理单元,用于使得所述客户端执行如权利要求1至7任一所述的方法,或者使得所述客户端执行如权利要求14至22任一所述的方法。
31.一种密钥的传输装置,所述装置应用于密钥管理实体时,其特征在于,所述装置包括:
通信单元,用于接收或发送信息;
处理单元,用于使得所述密钥管理实体执行如权利要求8至13任一所述的方法,或者使得所述密钥管理实体执行如权利要求23至29任一所述的方法。
32.一种密钥的传输系统,其特征在于,包括客户端和密钥管理实体,所述客户端用于执行如权利要求1-7任一所述的方法,所述密钥管理实体用于执行如权利要求8-13任一所述方法;或者所述客户端用于执行如权利要求14-22任一所述的方法,所述密钥管理实体用于执行如权利要求23-29任一所述的方法。
CN202180003014.7A 2021-02-27 2021-02-27 一种密钥的传输方法和装置 Active CN113796058B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/078330 WO2022178890A1 (zh) 2021-02-27 2021-02-27 一种密钥的传输方法和装置

Publications (2)

Publication Number Publication Date
CN113796058A CN113796058A (zh) 2021-12-14
CN113796058B true CN113796058B (zh) 2022-08-19

Family

ID=78877403

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180003014.7A Active CN113796058B (zh) 2021-02-27 2021-02-27 一种密钥的传输方法和装置

Country Status (2)

Country Link
CN (1) CN113796058B (zh)
WO (1) WO2022178890A1 (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371794A (en) * 1993-11-02 1994-12-06 Sun Microsystems, Inc. Method and apparatus for privacy and authentication in wireless networks
CN1534936A (zh) * 2003-03-31 2004-10-06 华为技术有限公司 一种无线局域网中基于公钥证书机制的密钥分发方法
CN101286842B (zh) * 2008-05-26 2011-04-06 西安西电捷通无线网络通信股份有限公司 一种利用公钥密码技术的密钥分配及其公钥在线更新方法
CN101600204B (zh) * 2009-06-30 2011-05-11 中兴通讯股份有限公司 一种文件传输方法及系统
CN105577613B (zh) * 2014-10-11 2018-11-23 电信科学技术研究院 一种密钥信息的发送和接收方法、设备及系统
CN106453330B (zh) * 2016-10-18 2019-11-12 深圳市金立通信设备有限公司 一种身份认证的方法和系统
CN112054906B (zh) * 2020-08-21 2022-02-11 郑州信大捷安信息技术股份有限公司 一种密钥协商方法及系统

Also Published As

Publication number Publication date
CN113796058A (zh) 2021-12-14
WO2022178890A1 (zh) 2022-09-01

Similar Documents

Publication Publication Date Title
US9912485B2 (en) Method and apparatus for embedding secret information in digital certificates
CN113438071B (zh) 安全通信的方法及设备
US8719952B1 (en) Systems and methods using passwords for secure storage of private keys on mobile devices
US9137017B2 (en) Key recovery mechanism
US8788811B2 (en) Server-side key generation for non-token clients
US8887246B2 (en) Privacy preserving authorisation in pervasive environments
US10567370B2 (en) Certificate authority
CN101828357B (zh) 用于证书提供的方法和装置
JP5136012B2 (ja) データ送付方法
US20110296171A1 (en) Key recovery mechanism
US9124561B2 (en) Method of transferring the control of a security module from a first entity to a second entity
EP2262164A1 (en) Secure data transfer
CN109800588B (zh) 条码动态加密方法及装置、条码动态解密方法及装置
CN116458117A (zh) 安全数字签名
CN111065081A (zh) 一种基于蓝牙的信息交互方法及其装置
US20100223464A1 (en) Public key based device authentication system and method
US20240113885A1 (en) Hub-based token generation and endpoint selection for secure channel establishment
CN113872765B (zh) 身份凭据的申请方法、身份认证的方法、设备及装置
CN114598455A (zh) 数字证书签发的方法、装置、终端实体和系统
CN114696999A (zh) 一种身份鉴别方法和装置
CN113796058B (zh) 一种密钥的传输方法和装置
US20220272087A1 (en) Owner identity confirmation system and owner identity confirmation method
US20220271948A1 (en) Owner identity confirmation system, certificate authority server and owner identity confirmation method
EP3800825A1 (en) Method and device for configuring alias credential
Yoon et al. Security enhancement scheme for mobile device using H/W cryptographic module

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