CN117957861A - 一种密钥传输方法及装置 - Google Patents

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

Info

Publication number
CN117957861A
CN117957861A CN202180102455.2A CN202180102455A CN117957861A CN 117957861 A CN117957861 A CN 117957861A CN 202180102455 A CN202180102455 A CN 202180102455A CN 117957861 A CN117957861 A CN 117957861A
Authority
CN
China
Prior art keywords
key
shared
information
instruction
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180102455.2A
Other languages
English (en)
Inventor
彭建芬
郭志鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 CN117957861A publication Critical patent/CN117957861A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
    • 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
    • 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/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/0825Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Lock And Its Accessories (AREA)

Abstract

本申请公开了一种密钥传输方法及装置,在该方法中:第一部件可以接收来自第一密钥工具的第一指令,该第一指令包括与初始密钥相关联的第一信息,其中,该初始密钥至少可以用于生成共享密钥,共享密钥至少可以用于加密包含地理位置信息的数据;进而第一部件可以根据第一指令,获取初始密钥。如此,通过第一密钥工具向车辆中的第一部件传输与初始密钥相关联的第一信息,使得第一部件可以根据第一信息,获取初始密钥,可以有效提升密钥传输的安全性,从而使得根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆的部件之间通信的安全性能,有效实现对部件关联的数据的保护。

Description

一种密钥传输方法及装置 技术领域
本申请实施例涉及通信技术领域,尤其涉及一种密钥传输方法及装置。
背景技术
随着智能汽车的发展,智能汽车中的不同部件(例如,域控制器、电子控制单元、传感器等)可以进行通信交互,以协同完成智能汽车的业务。例如,智能汽车在进行智能驾驶业务时,传感器和智能驾驶控制器之间可以传输地理位置信息。
为了使得不同部件之间能够安全通信,需要使用不同部件之间的共享密钥对相关业务数据加密传输。其中,该共享密钥是根据车辆的初始密钥生成的。在现有的初始密钥灌装过程中,初始密钥的安全性无法得到保证,进而导致车辆的业务数据安全受到威胁。因此,如何安全传输密钥,以提升不同部件之间通信的安全性能,是亟需解决的技术问题。
发明内容
本申请实施例公开了一种密钥传输方法及装置,用以提升密钥传输的安全性,从而提升车辆中各个部件之间的通信的安全性能,以达到保护车辆关联的业务数据的目的。
第一方面,本申请实施例提供了一种密钥传输方法,该方法可以由车辆中的第一部件或配置于第一部件中的芯片执行。该方法包括:接收来自第一密钥工具的第一指令,第一指令包括与初始密钥相关联的第一信息;根据第一指令,获取初始密钥;其中,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据。应理解,第一部件可以是车辆中的控制器或电子控制单元或传感器等,本申请实施例不作具体的限定。其中,第一指令可以用于为第一部件灌装初始密钥。
该方案中,通过第一密钥工具向车辆中的第一部件传输与初始密钥相关联的第一信息,使得第一部件可以根据第一信息,获取初始密钥,可以有效提升密钥传输的安全性,从而使得根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆的部件之间通信的安全性能。
其中,地理位置信息的数据可以是包括与如下一项或多项相关的数据:经纬度、高程、地理轨迹,例如地理位置信息的数据可以是包括经纬度数据范围和/或高程数据范围在预设阈值范围内的数据;或者,地理位置信息的数据可以是与地理位置相关的数据,本申请实施例不作具体的限制。其中,高程是指某一点相对于基准面的高度,例如,车辆的顶部相对于地面的高度,相应地,高程数据包括反映某一点相对于基准面的高度的数据,例如,反映车辆的顶部相对于地面的高度的数据。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域(例如智能驾驶域)关联的部件的共享密钥,本申请实施例不作限定。
在一种可能的设计中,初始密钥与原始设备制造商(original equipment manufacture,OEM)无关,或者与不具备导航电子地图制作资质的OEM无关,这里的OEM是与车辆相关联的OEM。在该设计中,初始密钥的整个传输过程无需与车辆相关联的OEM参与,使得该初始密钥对OEM不可见,或者无需无导航电子地图制作资质的OEM参与,使得该 初始密钥对无导航电子地图制作资质的OEM不可见,可以进一步提升密钥传输的安全性。
在一种可能的设计中,初始密钥与具有导航电子地图制作资质的机构有关,这样可以保证初始密钥的安全性,进而保证地理位置信息传输的安全性。
在一种可能的设计中,初始密钥不同于认证密钥,认证密钥来自与车辆相关联的OEM,第一部件可以根据该认证密钥,确定至少一个功能密钥,其中,至少一个功能密钥对应第一部件的至少一个业务功能。在本申请实施例,与地理位置信息相关的业务可以基于来自第一密钥工具的初始密钥以及由该初始密钥生成的共享密钥实现,而与地理位置信息无关的业务可以基于来自OEM的认证密钥以及由该认证密钥生成的功能密钥实现,从而可以实现与地理位置信息相关的业务和与地理位置信息无关的业务使用不同的密钥,进一步保证了与地理位置信息相关的数据传输的安全性。
上述第一信息有多种实现方式,包括但不限于以下方式:
方式1,第一信息包括第一密文,第一密文包括通过第一部件的第一公钥对初始密钥加密得到的信息。相应的,第一部件根据第一指令,获取初始密钥的过程可以是:根据第一部件的第一私钥对第一密文进行解密,获取初始密钥;其中,第一私钥对应于第一公钥。
在方式1中,初始密钥是通过第一部件的第一公钥加密传输的,使得第一部件可以利用第一公钥对应的第一私钥对初始密钥的密文进行解密,以获得初始密钥。在一种可选的设计中,第一部件可以生成第一公钥和与第一公钥对应的第一私钥,并将第一公钥发送给第一密钥工具,第一密钥工具使用第一公钥对初始密钥进行加密,得到第一密文,并将第一密文发送给第一部件。第一部件因为具有与第一公钥对应的第一私钥,所以可以基于第一私钥对第一密文进行解密,进而获得初始密钥。基于这种非对称加密算法实现的初始密钥传输,可以有效提升初始密钥传输的安全性。
方式2,第一信息包括初始密钥。相应的,第一部件根据第一指令,获取初始密钥的过程可以是:通过有线连接的方式,根据第一指令,获取初始密钥。
在方式2中,通过有线连接的方式,第一部件可以直接接收初始密钥,无需第一部件进行加解密操作,因此对于不具备加解密能力的第一部件,也可以获取初始密钥,进而保证不同部件之间通信的安全性。此外,通过这种方式获取初始密钥,可以简化第一部件的操作,降低部件实现复杂度和部件成本。
在一种可能的设计中,第一部件还可以向第一密钥工具发送第一响应信息,第一响应信息包括初始密钥的灌装结果。在该设计中,通过在第一部件发送的第一响应信息中包含初始密钥的灌装结果,使得第一密钥工具可以更好的监测第一部件的密钥灌装结果。
其中,初始密钥的灌装结果可以用于指示初始密钥灌装成功或初始密钥灌装失败。
在一种可能的设计中,初始密钥的灌装结果包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。在该设计中,初始密钥的灌装结果包括第一标识和/或第三密文,使得第一密钥工具可以根据第一标识和/或第三密文,确定初始密钥是否灌装成功。
在一种可能的设计中,初始密钥的灌装结果可以包括第二标识,第二标识可以用于指示初始密钥灌装失败。在该设计中,初始密钥的灌装结果包括第二标识,使得第一密钥工具可以根据第二标识,确定初始密钥灌装失败。
在一种可能的设计中,初始密钥的灌装结果还可以包括车辆的标识和/或第一部件的标 识。如此,使得第一密钥工具可以监测车辆和/或第一部件的初始密钥的灌装情况。
在一种可能的设计中,第一部件还可以接收来自第一密钥工具或者来自第二密钥工具的第二指令,第二指令包括与共享密钥相关联的第二信息;根据初始密钥和第二信息,得到共享密钥。其中,第二指令可以用于为第一部件灌装共享密钥。在该设计中,第一部件可以接收来自第一密钥工具的共享密钥灌装指令,即通过第一密钥工具可以实现初始密钥和共享密钥的灌装,一方面可以简化第一部件密钥灌装的操作,另一方面也可以简化用于密钥灌装的密钥工具的设计。或者,通过上述设计,第一部件可以通过不同于第一密钥工具的第二密钥工具实现共享密钥的灌装,进而实现初始密钥和共享密钥灌装的灵活性。可以理解的是,对于后一种设计,第一密钥工具可以仅用于初始密钥的灌装。
在一种可能的设计中,第一密钥工具和第二密钥工具可以对应于不同的密钥灌装环境。例如,第一密钥工具对应于部件供应商/部件生产线,即在部件供应商和/或部件生成线,可以通过第一密钥工具实现对第一部件的初始密钥的灌装,或实现对第一部件的初始密钥和共享密钥灌装;第二密钥工具对应于OEM产线,即在OEM产线,可以通过第二密钥工具实现对第一部件的共享密钥灌装。在该设计中,不同的密钥灌装环境,使用不同的密钥工具来实现对第一部件的初始密钥和共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以设计适配于不同密钥灌装环境的密钥工具,进一步保证不同密钥灌装环境下密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
在另一种可能的设计中,第一密钥工具和第二密钥工具还可以对应车内不同的部件。例如,第一密钥工具对应于车内的任一部件或者参与地理信息交互的车内部件,则第一密钥工具可以用于为车内的任一部件或者参与地理信息交互的车内部件实现初始密钥的灌装,或实现初始密钥和共享密钥灌装;而第二密钥工具仅对应于车内的主控部件(例如,用于支撑智能驾驶的软硬件一体化平台即车载计算平台(vehicle computing platform)、网关等)或者特定功能域(例如,智能驾驶域、人机交互系统(human machine interface,HMI)等)关联的部件,则第二密钥工具可以用于为车内的主控部件或者特定功能域关联的部件实现共享密钥的灌装。在该设计中,针对不同的车内部件,使用不同的密钥工具来实现初始密钥和/或共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以设计适配于不同车内部件的密钥工具,进一步保证不同车内部件密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
在另一种可能的设计中,第一密钥工具和第二密钥工具还可以对应不同的部件供应商。例如,第一密钥工具对应于部件供应商1,则第一密钥工具可以用于为部件供应商1关联任一车内部件实现初始密钥的灌装,或实现初始密钥和共享密钥的灌装;例如,第二密钥工具对应于部件供应商2,则第二密钥工具可以用于为部件供应商2关联任一车内部件实现共享密钥的灌装。在该设计中,针对不同的部件供应商,使用不同的密钥工具来实现对第一部件的初始密钥和/或共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以设计适配于不同部件供应商的密钥工具,进一步保证不同部件供应商密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
需要说明的是,第一部件根据初始密钥和第二信息,得到共享密钥的实施方式有多种,包括但不限于以下方式:
方式1,第二信息可以作为密钥材料,第一部件基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第二信息,得到共享密钥。
在方式1中,第二信息可以作为密钥材料,第一部件基于特定的密钥算法,根据初始密钥和第二信息,生成共享密钥,无需密钥工具对共享密钥进行传输,使得其他设备无法获取第一部件的共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式1对第一部件的算法要求低,例如只需要第一部件支持任意对称加密算法或支持任意基于对称加密算法的消息认证码或支持任意密钥派生算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。方式2,第二信息包括通过初始密钥对共享密钥加密得到的信息,进而第一部件可以根据初始密钥和第二信息,得到共享密钥。例如,通过初始密钥对第二信息解密,得到共享密钥。
在方式2中,第二信息包括共享密钥的密文,该密文即为通过初始密钥对共享密钥加密得到的信息,第一部件根据初始密钥和该密文,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式2对第一部件的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
需要说明的是,第一部件还可以通过和第二部件信息交互,实现共享密钥的灌装,包括但不限于以下实施方式:
方式1,第二部件至少用于分发来自第一密钥工具或第二密钥工具的密钥信息(例如第二指令)。相应的,第一部件还可以接收第二部件转发的第二指令,通过第二指令实现共享密钥的灌装。其中,第二部件为车辆内不同于第一部件的另一部件。
在方式1中,第二部件直接将来自第一密钥工具或第二密钥工具的第二指令转发至第一部件,进而实现对第一部件的共享密钥的灌装,使得第一密钥工具和第二密钥工具只需要和第二部件通信,无需和车辆中的其他部件通信交互,也能为车辆中的其他部件灌装共享密钥,有效提升车辆中所有部件的共享密钥的灌装效率。
方式2,第一部件还可以接收来自第二部件的第三指令,第三指令包括与共享密钥相关联的第三信息;以及根据初始密钥和第三信息,得到共享密钥。其中,第三指令可以用于为第一部件灌装共享密钥。其中,上述第三指令可以是第二部件通过对第二指令进行处理得到的,例如,第二部件可以对第二指令的通信协议格式进行转换,得到第三指令;又例如,第二部件可以对第二指令包括的第二信息的通信协议格式进行转换,得到第三指令包括的第三信息。或者,上述第三信息也可以是第二部件生成的,例如,第三信息包括第二部件生成的密钥材料;又例如,第二部件可以生成共享密钥,并根据共享密钥和初始密钥,确定第三信息。
应理解,“第一部件根据初始密钥和第三信息,得到共享密钥”的实施方式与“第一部件根据初始密钥和第二信息,得到共享密钥”的实施方式类似,请参见前文的描述,只需将“第二信息”替换为“第三信息”即可,这里不再赘述。
在方式2中,上述第二部件可以对来自第一密钥工具或第二密钥工具的第二指令或第二信息,进行通信协议格式转换,相应地,得到第三指令或第三信息,使得第三指令或第三信息可以更好地适配于第一部件和第二部件之间的通信协议,使得第一部件可以根据该指令(即第三指令)实现共享密钥的灌装,并且第一部件不需要从第一密钥工具或者第二密钥工具获取共享密钥灌装指令,进而有效提升共享密钥的灌装效率。或者,第二部件可以生成共享密钥灌装指令(如第三指令或第三信息),为车辆内的其他部件(即第一部件)实现共享密钥的灌装,使得共享密钥的灌装不再依赖第一密钥工具或者第二密钥工具,简 化了共享密钥灌装的流程。
在一种可能的设计中,第一部件还可以响应于第二指令,发送第二响应信息,第二响应信息包括共享密钥的灌装结果。其中,第一部件可以将第二响应信息发送至第一密钥工具或者第二密钥工具,本申请实施例不作具体的限制。
在一种可能的设计中,第一部件还可以响应于第三指令,发送第三响应信息,第三响应信息包括共享密钥的灌装结果。其中,第一部件可以将第三响应信息发送至第二部件。
在一种可能的设计中,共享密钥的灌装结果可以包括第三标识,第三标识用于指示共享密钥的灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数或第三指令包括的第二随机数加密得到的信息。在该设计中,共享密钥的灌装结果包括第一标识和/或第三密文,使得第一密钥工具可以根据第一标识和/或第三密文,确定共享密钥是否灌装成功。
在一种可能的设计中,共享密钥的灌装结果包括第四标识,第四标识可以用于指示共享密钥灌装失败。在该设计中,共享密钥的灌装结果包括第四标识,使得第一密钥工具可以根据第四标识,确定共享密钥灌装失败。
在一种可能的设计中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。在该设计中,使得第一密钥工具或第二密钥工具可以监测车辆和/或第一部件的共享密钥的灌装情况。
在一种可能的设计中,第一部件还可以接收来自第一密钥工具或来自密钥检测工具的第四指令,第四指令包括第三随机数;根据第三随机数和共享密钥,确定第一校验值;发送第四响应信息,第四响应信息包括第一校验值。其中,第四指令可以用于检测第一部件的共享密钥是否存在异常。在该设计中,第一部件接收来自第一密钥工具或来自密钥检测工具的第四指令,并根据第四指令中包含的随机数和第一部件的共享密钥生成第一校验值,并返回给第一密钥工具或者密钥检测工具,使得第一密钥工具或者密钥检测工具可以根据该第一校验值,确定第一部件的共享密钥与第一密钥工具或密钥检测工具的本地共享密钥是否一致,进而判断第一部件的共享密钥是否存在异常。如此,便于第一密钥工具或者密钥检测工具监测第一部件的共享密钥的异常情况,以便于当存在异常情况时,可以通过后续的操作保证第一部件的共享密钥与第一密钥工具或密钥检测工具的本地共享密钥一致,进而保证车辆的部件之间通信的安全性。
在一种可能的设计中,第一部件还用于接收第一密钥工具或来自密钥检测工具的第五指令,第五指令包括第五随机数,其中,第五指令可以用于检测第一部件的初始密钥是否存在异常;第一部件还用于根据第五随机数和初始密钥,确定第三校验值;第一部件还用于发送第五响应信息,第五响应信息包括第三校验值。如此,以便于当初始密钥存在异常情况时,可以通过后续的操作保证第一部件的初始密钥与第一密钥工具的本地初始密钥一致,进而后续根据初始密钥确定的共享密钥的安全性。
第二方面,本申请实施例还提供了一种密钥传输方法,该方法可以由车辆中的第二部件或配置于第二部件中的芯片执行。该方法包括:第二部件获取共享密钥灌装指令;第二部件向第一部件发送该共享密钥灌装指令,该共享密钥灌装指令用于为所述第一部件灌装共享密钥。其中,所述共享密钥至少用于加密包含地理位置信息的数据。
其中,共享密钥和地理位置信息的数据的具体描述,可以参见第一方面或第一方面任一可能的设计中的相关描述。
其中,第二部件获取共享密钥灌装指令,可以是第二部件生成或接收共享密钥灌装指令。
在一种可能的设计中,共享密钥灌装指令可以为第二指令,第二指令包括与该共享密钥相关联的第二信息。在该设计中,第二部件获取共享密钥灌装指令包括:第二部件接收来自第一密钥工具或第二密钥工具的第二指令,所述共享密钥灌装指令包括该第二指令,例如所述共享密钥灌装指令为第二指令。应理解,在该设计中,第二部件可以直接将来自第一密钥工具或第二密钥工具的第二指令作为共享密钥的灌装指令,并转发至第一部件,实现对第一部件的共享密钥灌装。通过该设计,可以简化第二部件的操作流程,实现简单,且第一部件不需要从第一密钥工具或者第二密钥工具获取共享密钥灌装指令,进而有效提升共享密钥的灌装效率。
其中,上述第二信息有多种实现方式。例如,第一密钥工具或第二密钥工具生成为密钥材料(比如密钥材料是随机生成的或者按照一定规则生成的),并将密钥材料作为第二指令中的第二信息。又例如,第一密钥工具或第二密钥工具可以生成共享密钥(比如共享密钥是随机生成的或者按照一定规则生成的),根据初始密钥和共享密钥,得到共享密钥的密文,将该密文作为第二信息;再例如,第一密钥工具或第二密钥工具可以利用初始密钥对共享密钥进行加密,得到共享密钥的密文,将该密文作为第二信息。
在又一种可能的设计中,共享密钥灌装指令可以包括第三指令,例如该共享密钥灌装指令为第三指令,该第三指令包括与该共享密钥相关联的第三信息。在该设计中,该第三指令有多种实现方式,包括但不限于以下实施方式:
方式1:第三指令是第二部件通过对第二指令进行处理得到的。
示例性的,第二部件可以对第二指令的通信协议格式进行转换,得到第三指令;或者,可以对第二指令包括的第二信息的通信协议格式进行转换,得到第三指令包括的第三信息。
方式1中,第二部件可以接收来自第一密钥工具或第二密钥工具发送的第二指令,再通过处理第二指令,得到第三指令。其中第二指令包括与共享密钥相关联的第二信息,该第二信息有多种实现方式,具体可以参加前述共享密钥灌装指令为第二指令对应的可能的设计中,第二信息的实现方式。
在方式1中,第三指令或第三指令包含的第三信息可以更好地适配于第一部件和第二部件之间的通信协议,使得第一部件可以根据该指令(即第三指令)实现共享密钥的灌装,第一部件不需要从第一密钥工具或者第二密钥工具获取共享密钥灌装指令,进而有效提升共享密钥的灌装效率。
方式2:第三指令是第二部件生成的。
示例性地,第二部件可以是在满足预设条件或接收到特定指令时,生成上述第三指令,上述共享密钥灌装指令包括该第三指令,例如上述共享密钥灌装指令为该第三指令。
其中,“特定指令”可以是任意指令,第二部件可以将该指令作为触发信号。比如专门用于生成共享密钥灌装指令的诊断命令,也可以是其他功能的诊断命令,比如部件刷写、部件复位等指令。在一种可选的设计中,特定指令可以来自诊断仪、整车电检测试设备、云端、车内其他部件(如车载通信盒子(telematics box,TBOX)、网关(gate way,GW))。
其中,该预设条件包括但不限于第二部件关联的设备启动、到达特定时间。
可以理解的是,“第二部件关联的设备启动”可以是第二部件启动或者第二部件所在的设备启动。例如,第二部件是A,则A启动或A所在的设备启动时,A可以生成上述第三 指令。又例如,第二部件是B,则B启动或B所在的设备启动时,B可以生成上述第三指令。
可以理解的是,“到达特定时间”可以是到达设定的密钥灌装时间(例如,每月1号0点),或者,到达距离密钥过期的预设时间(例如密钥过期前一天)。
在方式2中,第三信息有多种实现方式。例如,第二部件可以生成密钥材料(比如密钥材料是随机生成的或者按照一定规则生成的),并将密钥材料作为第三指令中的第三信息;又例如,第二部件可以生成共享密钥(比如共享密钥是随机生成的或者按照一定规则生成的),并根据初始密钥和共享密钥,得到共享密钥的密文,将该密文作为第三信息。
在方式2中,第二部件可以生成共享密钥灌装指令,为车辆内的其他部件(即第一部件)实现共享密钥的灌装,使得共享密钥的灌装不再依赖第一密钥工具或者第二密钥工具,简化了共享密钥灌装的流程。
在一种可能的设计中,第二部件可以接收来自第一密钥工具或第二密钥工具的第二指令,该第二指令包括与共享密钥相关联的第二信息;根据初始密钥和第二信息,得到共享密钥。其中,第二指令可以用于为第二部件灌装共享密钥。在该设计中,第二部件可以接收来自第一密钥工具的共享密钥灌装指令,即通过第一密钥工具可以实现初始密钥和共享密钥的灌装,一方面可以简化第二部件密钥灌装的操作,另一方面也可以简化用于密钥灌装的密钥工具的设计。或者,通过上述设计,第二部件可以通过不同于第一密钥工具的第二密钥工具实现共享密钥的灌装,进而实现初始密钥和共享密钥灌装的灵活性。
需要说明的是,第二部件根据初始密钥和第二信息,得到共享密钥的实施方式有多种,包括但不限于以下方式:
方式1,第二部件基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第二信息,得到共享密钥。
在方式1中,第二信息可以作为密钥材料,第二部件基于特定的密钥算法,根据初始密钥和第二信息,生成共享密钥,无需密钥工具对共享密钥进行传输,使得其他设备无法获取第二部件的共享密钥,进而有效提升第二部件的共享密钥的安全性。此外,方式1对第二部件的算法要求低,例如只需要第二部件支持任意对称加密算法或支持任意基于对称加密算法的消息认证码或支持任意密钥派生算法,就可以得到共享密钥,降低第二部件实现复杂度和成本。
方式2,第二信息包括通过初始密钥对共享密钥加密得到的信息,进而第二部件可以根据初始密钥和第二信息,得到共享密钥。例如,通过初始密钥对第二信息解密,得到共享密钥。
在方式2中,第二信息包括共享密钥的密文,该密文即为通过初始密钥对共享密钥加密得到的信息,第二部件根据初始密钥和该密文,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第二部件的共享密钥的安全性。此外,方式2对第二部件的算法要求低,例如只需要第二部件支持任意解密算法,就可以得到共享密钥,降低第二部件实现复杂度和成本。在又一种可能的设计中,第二部件可以直接生成共享密钥。
在一种可能的设计中,第二部件可以接收来自第一密钥工具的第一指令,第一指令包括与初始密钥相关联的第一信息;第二部件可以根据第一指令,获取初始密钥;其中,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据。
关于地理位置信息的数据的描述,请参见上述第一方面的相关描述。
上述第一信息有多种实现方式,相应的,第二部件根据第一指令获取初始密钥有多种实现方式,包括但不限于以下方式:
方式1,第一信息包括第一密文,第一密文包括通过第二部件的第一公钥对初始密钥加密得到的信息。相应的,第二部件根据第一指令,获取初始密钥的过程可以是:根据第二部件的第一私钥对第一密文进行解密,获取初始密钥;其中,第一私钥对应于第一公钥。
在方式1中,初始密钥是通过第二部件的第一公钥加密传输的,使得第二部件可以利用第一公钥对应的第一私钥对初始密钥的密文进行解密,以获得初始密钥。在一种可选的设计中,第二部件可以生成第一公钥和与第一公钥对应的第一私钥,并将第一公钥发送给第一密钥工具,第一密钥工具使用第一公钥对初始密钥进行加密,得到第一密文,并将第一密文发送给第二部件。第二部件因为具有与第一公钥对应的第一私钥,所以可以基于第一私钥对第一密文进行解密,进而获得初始密钥。基于这种非对称加密算法实现的初始密钥传输,可以有效提升初始密钥传输的安全性。
方式2,第一信息包括初始密钥。相应的,第二部件根据第一指令,获取初始密钥的过程可以是:通过有线连接的方式,根据第一指令,获取初始密钥。
在方式2中,通过有线连接的方式,第二部件可以直接接收初始密钥,无需第二部件进行加解密操作,因此对于不具备加解密能力的第二部件,也可以获取初始密钥,进而保证不同部件之间通信的安全性。此外,通过这种方式获取初始密钥,可以简化第二部件的操作,降低部件实现复杂度和部件成本。
在一种可能的设计中,第二部件还可以向第一密钥工具发送第一响应信息,第一响应信息包括初始密钥的灌装结果。在该设计中,通过在第二部件发送的第一响应信息中包含初始密钥的灌装结果,使得第一密钥工具可以更好的监测第二部件的密钥灌装结果。
其中,初始密钥的灌装结果可以用于指示初始密钥灌装成功或初始密钥灌装失败。
在一种可能的设计中,初始密钥的灌装结果包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。在该设计中,初始密钥的灌装结果包括第一标识和/或第三密文,使得第一密钥工具可以根据第一标识和/或第三密文,确定初始密钥是否灌装成功。
在一种可能的设计中,初始密钥的灌装结果可以包括第二标识,第二标识可以用于指示初始密钥灌装失败。在该设计中,初始密钥的灌装结果包括第二标识,使得第一密钥工具可以根据第二标识,确定初始密钥灌装失败。
在一种可能的设计中,初始密钥的灌装结果还可以包括车辆的标识和/或第二部件的标识。如此,使得第一密钥工具可以监测车辆和/或第二部件的初始密钥的灌装情况。
在一种可能的设计中,第二部件还可以响应于第二指令,发送第二响应信息,第二响应信息包括共享密钥的灌装结果。
其中,共享密钥的灌装结果可以用于指示共享密钥灌装成功或共享密钥灌装失败。
在一种可能的设计中,共享密钥的灌装结果可以包括第三标识,第三标识用于指示共享密钥的灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数或第三指令包括的第二随机数加密得到的信息。在该设计中,共享密钥的灌装结果包括第一标识和/或第三密文,使得第一密钥工具可以根据第一标识和 /或第三密文,确定共享密钥是否灌装成功。
在一种可能的设计中,共享密钥的灌装结果包括第四标识,第四标识可以用于指示共享密钥灌装失败。在该设计中,共享密钥的灌装结果包括第四标识,使得第一密钥工具可以根据第四标识,确定共享密钥灌装失败。
在一种可能的设计中,共享密钥的灌装结果还可以包括车辆的标识和/或第二部件的标识。在该设计中,使得第一密钥工具或第二密钥工具可以监测车辆和/或第二部件的共享密钥的灌装情况。
在一种可能的设计中,第二部件还可以接收来自第一密钥工具或密钥检测工具的第四指令,第四指令包括第三随机数,第四指令用于检测第一部件的共享密钥是否存在异常;根据第三随机数和共享密钥,确定第一校验值;发送第四响应信息,第四响应信息包括第一校验值。在该设计中,第二部件接收来自第一密钥工具或密钥检测工具的第四指令,并根据第四指令中包含的随机数和第二部件的共享密钥生成第一校验值,并返回给第一密钥工具或者密钥检测工具,使得第一密钥工具或者密钥检测工具可以根据该第一校验值,确定第二部件的共享密钥与第一密钥工具或密钥检测工具的本地共享密钥是否一致,进而判断第二部件的共享密钥是否存在异常。如此,便于第一密钥工具或者密钥检测工具监测第二部件的共享密钥的异常情况,以便于当存在异常情况时,可以通过后续的操作保证第二部件的共享密钥与第一密钥工具或密钥检测工具的本地共享密钥一致,进而保证车辆的部件之间通信的安全性。
在一种可能的设计中,第二部件还用于接收来自第一密钥工具或密钥检测工具的第五指令,第五指令包括第五随机数,其中,第五指令可以用于检测第二部件的初始密钥是否存在异常;第二部件还用于根据第五随机数和初始密钥,确定第三校验值;第二部件还用于发送第五响应信息,第五响应信息包括第三校验值。如此,以便于当初始密钥存在异常情况时,可以通过后续的操作保证第二部件的初始密钥与第一密钥工具或密钥检测工具的本地初始密钥一致,进而后续根据初始密钥确定的共享密钥的安全性。
第三方面,本申请实施例还提供了一种密钥传输方法,该方法可以由第一密钥工具执行。在该方法中:确定车辆的初始密钥,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据;向车辆的第一部件发送第一指令,第一指令包括与初始密钥相关联的第一信息。
在该方案中,第一密钥工具可以向车辆中的第一部件传输与初始密钥相关联的第一信息,使得第一部件可以根据第一信息,获取初始密钥,可以有效提升密钥传输的安全性,从而使得根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆的部件之间通信的安全性能。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
在一种可能的设计中,初始密钥与OEM无关,或者与不具备导航电子地图制作资质的OEM无关,这里的OEM是与车辆相关联的OEM。在该设计中,初始密钥的整个传输过程无需与车辆相关联的OEM参与,使得该初始密钥对OEM不可见,或者无需无导航电子地图制作资质的OEM参与,使得该初始密钥对无导航电子地图制作资质的OEM不可见,可以进一步提升密钥传输的安全性。
在一种可能的设计中,初始密钥与具有导航电子地图制作资质的机构有关,这样可以 保证初始密钥的安全性,进而保证地理位置信息传输的安全性。
在一种可能的设计中,初始密钥不同于认证密钥,认证密钥来自与车辆相关联的原始设备制造商OEM。其中,认证密钥至少用于生成至少一个功能密钥,至少一个功能密钥对应第一部件的至少一个业务功能。在该设计中,与地理位置信息相关的业务可以基于来自第一密钥工具的初始密钥以及由该初始密钥生成的共享密钥实现,而与地理位置信息无关的业务可以基于来自OEM的认证密钥以及由该认证密钥生成的功能密钥实现,从而可以实现与地理位置信息相关的业务和与地理位置信息无关的业务使用不同的密钥,进一步保证了与地理位置信息相关的数据传输的安全性。
其中,认证密钥至少用于认证车辆的功能密钥。认证密钥例如可以为如下其中一项:ECU主密钥(master ECU key,MEK)、预备ECU主密钥(pre-master ECU key,PMEK)和根密钥,本申请实施例不作具体的限定。
在一种可能的设计中,第一信息包括第一密文,该第一密文包括通过第一公钥对初始密钥加密得到的信息,第一公钥来自第一部件。
在一种可能的设计中,第一信息包括初始密钥,向车辆的第一部件发送第一指令,包括:通过有线连接的方式,向第一部件发送初始密钥。
在一种可能的设计中,第一密钥工具确定车辆的初始密钥的过程可以是:生成第二公钥和第二私钥;向密钥管理系统发送请求信息,请求信息用于请求初始密钥,请求信息包括第二公钥;接收来自密钥管理系统的第二密文,根据第二密文和第二私钥,确定初始密钥。在该设计中,第一密钥工具可以向密钥管理系统请求初始密钥,并且可以接收初始密钥的密文,保证了第一密钥工具获取初始密钥的安全性。
在一种可能的设计中,第一密钥工具还可以接收来自第一部件的第一响应信息,第一响应信息包括初始密钥的灌装结果。
在一种可能的设计中,若初始密钥的灌装结果指示初始密钥灌装失败,第一密钥工具还可以重新发送第一指令。
在一种可能的设计中,初始密钥的灌装结果包括第二标识,第二标识用于指示初始密钥灌装失败。
在一种可能的设计中,初始密钥的灌装结果可以包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。
在一种可能的设计中,当初始密钥的灌装结果包括第三密文时,第一密钥工具还可以根据第三密文,确定初始密钥是否灌装成功。
在一种可能的设计中,初始密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
在一种可能的设计中,若初始密钥的灌装结果指示初始密钥灌装成功,第一密钥工具还可以向第一部件发送第二指令,第二指令包括与共享密钥相关联的第二信息。
需要说明的是,上述第二信息有多种实施方式,包括但不限于以下实施方式:
方式1,第一密钥工具生成共享密钥(例如该共享密钥是随机生成的或者根据一定规则生成的),并根据初始密钥和共享密钥,得到第二信息。例如,第一密钥工具可以根据初始密钥对共享密钥进行加密,得到第二信息。
在方式1中,第一密钥工具可以生成共享密钥,根据初始密钥和共享密钥,得到第二 信息,使得第一部件可以根据初始密钥和共享密钥的密文,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式1对第一部件的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
方式2,第一密钥工具可以生成密钥材料(例如该密钥材料是随机生成的或者根据一定规则生成的),并将密钥材料作为第二信息。
在方式2中,第二信息可以作为密钥材料,使得第一部件基于特定的密钥算法,根据初始密钥和第二信息,生成共享密钥,无需第一密钥工具对共享密钥进行传输,使得其他设备无法获取第一部件的共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式2对第一部件的算法要求低,例如只需要第一部件支持任意对称加密算法或支持任意基于对称加密算法的消息认证码或支持任意密钥派生算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
在一种可能的设计中,第一密钥工具还可以接收来自第一部件的第二响应信息,第二响应信息包括共享密钥的灌装结果。
在一种可能的设计中,上述共享密钥的灌装结果可以包括:第三标识,第三标识用于指示共享密钥灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数加密得到的信息。
在一种可能的设计中,当共享密钥的灌装结果包括第四密文时,方法还包括:第一密钥工具还可以根据第二信息和第四密文,确定共享密钥是否灌装成功。在该设计中,通过第四密文验证共享密钥是否灌装成功,有助于第一密钥工具准确监测关共享密钥的灌装情况。
在一种可能的设计中,共享密钥的灌装结果还可以包括第四标识,第四标识用于指示共享密钥灌装失败。
在一种可能的设计中,若共享密钥的灌装结果指示共享密钥灌装失败,第一密钥工具还可以重新发送第二指令。在该设计中,可以有效提升共享密钥灌装成功的可能性。
在一种可能的设计中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
在一种可能的设计中,第一密钥工具还可以向车辆的第一部件发送第四指令,第四指令包括第三随机数;接收来自第一部件的第四响应信息;第四响应信息中包括第一校验值,第一校验值与第三随机数和车辆的共享密钥相关联,共享密钥至少用于加密包含地理位置信息的数据;根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致;若车辆的共享密钥与本地共享密钥不一致,上报异常信息。在该方法中,第一密钥工具通过和车辆中的第一部件通信交互,实现对车辆的共享密钥的异常检测。如此,以便于当存在异常情况时,可以通过后续的操作保证第一部件的共享密钥与第一密钥工具的本地共享密钥一致,进而保证车辆的部件之间通信的安全性。
在一种可能的设计中,第一密钥工具还可以向车辆的第一部件发送第五指令,第五指令包括第五随机数;接收来自第一部件的第五响应信息;第五响应信息中包括第三校验值,第三校验值与第五随机数和车辆的初始密钥相关联,初始密钥至少用于生成共享密钥;根据第三校验值,确定车辆的初始密钥与对应于车辆的本地初始密钥是否一致;若车辆的初始密钥与本地初始密钥不一致,上报异常信息。在该设计中,第一密钥工具通过和车辆中 的第一部件通信交互,实现对车辆的初始密钥的异常检测。如此,以便于当存在异常情况时,可以通过后续的操作保证第一部件的初始密钥与第一密钥工具的本地初始密钥一致,进而后续根据初始密钥确定的共享密钥的安全性。
第四方面,本申请实施例还提供了一种密钥传输方法,该方法可以由第二密钥工具执行。该方法包括:确定第二指令,向车辆中的第一部件发送第二指令,第二指令包括与共享密钥相关联的第二信息,共享密钥至少用于加密包含地理位置信息的数据;其中,第二指令用于为第一部件灌装共享密钥。
在该方案中,第二密钥工具可以向车辆中的第一部件传输与共享密钥相关联的第二信息,使得第一部件可以根据第二信息和初始密钥,获取共享密钥,可以有效提升共享密钥传输的安全性,从而使得第一部件的共享密钥无法被其他设备获取,进而有效提升车辆的部件之间通信的安全性能。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
需要说明的是,上述第二信息有多种实施方式,包括但不限于以下实施方式:
方式1,第二密钥工具生成共享密钥(例如该共享密钥是随机生成的或者依照一定规则生成的),并根据初始密钥和共享密钥,得到第二信息。例如,第二密钥工具可以根据初始密钥对共享密钥进行加密,得到第二信息。
在方式1中,第二密钥工具可以生成共享密钥,根据初始密钥和共享密钥,得到第二信息,使得第一部件可以根据初始密钥和共享密钥的密文,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式1对第一部件的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
方式2,第二密钥工具可以生成密钥材料(例如该密钥材料是随机生成的或者依照一定规则生成的),并将密钥材料作为第二信息。
在方式2中,第二信息可以作为密钥材料,使得第一部件基于特定的密钥算法,根据初始密钥和第二信息,生成共享密钥,无需第二密钥工具对共享密钥进行传输,使得其他设备无法获取第一部件的共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式2对第一部件的算法要求低,例如只需要第一部件支持任意对称加密算法或支持任意基于对称加密算法的消息认证码或支持任意密钥派生算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
方式3,第二密钥工具可以向第一密钥工具请求共享密钥,并根据初始密钥和共享密钥,得到第二信息。例如,第二密钥工具可以根据初始密钥对共享密钥进行加密,得到第二信息。
在方式3中,共享密钥由第一密钥工具进行管理,第二密钥工具向第一密钥工具请求共享密钥,如此利用多个密钥工具为第一部件灌装共享密钥,使得共享密钥不会轻易被其他设备获取,有效提升第一部件的共享密钥的安全性。此外,方式3对第一部件的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
在一种可能的设计中,第二密钥工具还可以接收来自第一部件的第二响应信息,第二响应信息包括共享密钥的灌装结果。
在一种可能的设计中,共享密钥的灌装结果包括:第三标识,第三标识用于指示共享密钥灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数加密得到的信息。
在一种可能的设计中,当共享密钥的灌装结果包括第四密文时,第二密钥工具还可以根据第二信息和第四密文,确定共享密钥是否灌装成功。在该设计中,通过第四密文验证共享密钥是否灌装成功,有助于第二密钥工具准确监测关共享密钥的灌装情况。
在一种可能的设计中,若共享密钥的灌装结果指示共享密钥灌装失败,第二密钥工具还可以:重新发送第二指令。在该设计中,可以有效提升共享密钥灌装成功的可能性。
在一种可能的设计中,共享密钥的灌装结果包括第四标识,第四标识用于指示共享密钥灌装失败。
在一种可能的设计中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。如此,使得第二密钥工具可以监测车辆和/或第一部件的共享密钥的灌装情况。
第五方面,本申请实施例还提供了一种密钥检测方法,该方法可以由密钥检测工具执行。该方法包括:向车辆的第一部件发送第四指令,第四指令包括第三随机数;接收来自第一部件的第四响应信息;第四响应信息中包括第一校验值,第一校验值与第三随机数和车辆的共享密钥相关联,共享密钥至少用于加密包含地理位置信息的数据;根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致;若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
在该方法中,密钥检测工具通过和车辆中的第一部件通信交互,实现对车辆的共享密钥的异常检测。如此,以便于当存在异常情况时,可以通过后续的操作保证第一部件的共享密钥与密钥检测工具的本地共享密钥一致,进而保证车辆的部件之间通信的安全性。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
需要说明的是,密钥检测工具可以根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致,有多种实施方式,包括但不限于以下实施方式:
实施方式1,根据本地共享密钥和第三随机数,计算第二校验值,将第一校验值和第二校验值相比较,若第一校验值和第二校验值一致,则该车辆的本地共享密钥与车辆当前的共享密钥一致;若第一校验值和第二校验值不一致,则该车辆的本地共享密钥与车辆当前的共享密钥不一致。在实施方式1中,密钥检测工具通过比较其确定的第二校验值和第一部件确定的第一校验值的一致性来进行共享密钥的异常检测,可以提升密钥异常检测的准确性。
实施方式2,根据接收到的第一校验值与本地共享密钥,确定第四随机数,然后比较该第四随机数与第三随机数是否一致,若第三随机数和第四随机数一致,则密钥检测工具存储的该车辆的本地共享密钥与车辆当前的共享密钥一致;若第三随机数和第四随机数不一致,则该车辆的本地共享密钥与车辆当前的共享密钥不一致。在实施方式2中,密钥检测工具通过比较其根据第一校验值确定的第四随机数与第三随机数的一致性来进行共享密钥的异常检测,可以提升密钥异常检测的准确性。
在一种可能的设计中,密钥检测工具还可以向车辆的第一部件发送第五指令,第五指令包括第五随机数;接收来自第一部件的第五响应信息;第五响应信息中包括第三校验值, 第三校验值与第五随机数和车辆的初始密钥相关联,初始密钥至少用于生成共享密钥;根据第三校验值,确定车辆的初始密钥与对应于车辆的本地初始密钥是否一致;若车辆的初始密钥与本地初始密钥不一致,上报异常信息。在该设计中,密钥检测工具通过和车辆中的第一部件通信交互,实现对车辆的初始密钥的异常检测。如此,以便于当存在异常情况时,可以通过后续的操作保证第一部件的初始密钥与密钥检测工具的本地初始密钥一致,进而后续根据初始密钥确定的共享密钥的安全性。
第六方面,本申请实施例还提供了另一种密钥检测方法,该方法可以由密钥检测工具执行。该方法包括:获取车辆的第一部件的通信信息密文,通信信息密文包括通过车辆的共享密钥加密第一信息得到的信息,第一信息包括地理位置信息;根据对应于车辆的本地共享密钥和通信信息密文,确定车辆的共享密钥与本地共享密钥是否一致;若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
在该方法中,在该方法中,密钥检测工具可以获取第一部件的通信信息密文,并根据该通信信息密文,实现对车辆的共享密钥的异常检测,有助于及时发现车辆的密钥异常。密钥检测工具通过和车辆中的第一部件通信交互,实现对车辆的共享密钥的异常检测。如此,以便于当存在异常情况时,可以通过后续的操作保证第一部件的共享密钥与密钥检测工具的本地共享密钥一致,进而保证车辆的部件之间通信的安全性。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
在一种可能的设计中,密钥检测工具根据其所存储的该车辆的本地共享密钥和通信信息密文,确定该车辆使用的共享密钥与该本地共享密钥是否一致的过程可以是:根据本地共享密钥和通信信息密文,得到通信信息,判断该通信信息是否存在异常,若该通信信息存在异常,则确定该车辆使用的共享密钥与本地共享密钥不一致;若该通信信息不存在异常,则确定该车辆使用的共享密钥与本地共享密钥一致。其中,密钥检测工具根据本地共享密钥和通信信息密文,得到通信信息的过程,例如可以是:利用本地共享密钥对通信信息密文解密,得到通信信息。
在一种可能的设计中,上述第五方面和第六方面中的密钥检测工具,获取对应于车辆的本地共享密钥有多种实现方式,包括但不限于以下方式:
方式1,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询对应于车辆的初始密钥和用于生成本地共享密钥的密钥材料;根据初始密钥和密钥材料生成本地共享密钥。如此,使得密钥检测工具的本地共享密钥具备较高的实时性。
方式2,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询本地共享密钥。如此,使得密钥检测工具可以快速获取本地共享密钥,进而提升密钥检测的效率。
在一种可能的设计中,上述第五方面和第六方面中的密钥检测工具还可以向资质管理机构上报异常信息,或者向密钥管理系统上报异常信息。在一些可能的实施例中,资质管理机构为具备测绘资质和/或依法从事测绘活动的机构。
第七方面,本申请实施例提供了一种控制装置,用以实现上述第一方面中的第一部件所执行的方法。
示例性的,该装置可以包括:
收发模块,用于接收来自第一密钥工具的第一指令,第一指令包括与初始密钥相关联 的第一信息;
处理模块,用于根据第一指令,获取初始密钥;其中,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第七方面中其他可能的设计及相关的有益效果描述请参见上述第一方面以及第一方面相应的可能的设计,这里不再赘述。
第八方面,本申请实施例提供了另一种控制装置,用以实现上述第二方面中的第二部件所执行的方法。
示例性的,该装置可以包括:
处理模块,获取共享密钥灌装指令,所述共享密钥灌装指令用于为第一部件灌装共享密钥;其中,所述共享密钥至少用于加密包含地理位置信息的数据;
收发模块,用于向第一部件发送所述共享密钥灌装指令。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第八方面中其他可能的设计及相关的有益效果描述请参见上述第二方面以及第二方面相应的可能的设计,这里不再赘述。
第九方面,本申请实施例提供一种密钥传输装置,该装置可以为上述第三方面中的第一密钥工具。
示例性的,该装置可以包括:
处理模块,用于确定车辆的初始密钥,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据;
收发模块,用于向车辆的第一部件发送第一指令,第一指令包括与初始密钥相关联的第一信息。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第九方面中其他可能的设计及相关的有益效果描述请参见上述第三方面以及第三方面相应的可能的设计,这里不再赘述。
第十方面,本申请实施例提供另一种密钥传输装置,该装置可以为上述第四方面中的第二密钥工具。
示例性的,该装置可以包括:
处理模块,用于确定第二指令;
收发模块,用于向车辆中的第一部件发送第二指令,第二指令包括与共享密钥相关联的第二信息。其中,第二指令用于为第一部件灌装共享密钥;共享密钥至少用于加密包含地理位置信息的数据。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第十方面中其他可能的设计及相关的有益效果描述请参见上述第四方面以及第四方面相应的可能的设计,这里不再赘述。
第十一方面,本申请实施例提供一种密钥检测装置,用以实现上述第五方面中的密钥检测工具所执行的方法。
示例性的,该装置包括:
收发模块,用于向车辆的第一部件发送第四指令,第四指令包括第三随机数;
收发模块,还用于接收来自第一部件的第四响应信息,第四响应信息中包括第一校验值,第一校验值与第三随机数和车辆的共享密钥相关联,共享密钥至少用于加密包含地理位置信息的数据;
处理模块,用于根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致;若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第十一方面中其他可能的设计请参见上述第五方面相应的可能的设计,这里不再赘述。
第十二方面,本申请实施例还提供了另一种密钥检测装置,用以实现上述第六方面中的密钥检测工具所执行的方法。
示例性的,该装置包括:
处理模块,用于获取车辆的第一部件的通信信息密文,通信信息密文包括通过车辆的共享密钥加密第一信息得到的信息,第一信息包括地理位置信息;
处理模块,还用于根据对应于车辆的本地共享密钥和通信信息密文,确定车辆的共享密钥与本地共享密钥是否一致;
收发模块,用于若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
其中,上述共享密钥和地理位置信息的数据的具体描述可以参见第一方面或第一方面任一可能的设计中的相关描述。
第十二方面中其他可能的设计请参见上述第六方面相应的可能的设计,这里不再赘述。
第十三方面,本申请实施例还提供一种车载部件,所述车载部件包括处理器和存储介质,所述存储介质存储有指令,所述指令被所述处理器运行时,使得所述车载部件执行上述第一方面或第一方面任一项可能的设计中所述的方法,或者,使得所述车载部件执行上述第二方面或第二方面任一项可能的设计中所述的方法。
第十四方面,本申请实施例还提供一种电子设备,所述电子设备包括处理器和存储介质,所述存储介质存储有指令,所述指令被所述处理器运行时,使得所述电子设备执行上述第三方面至第六方面或第三方面至第六方面任一项可能的设计中所述的方法。
第十五方面,本申请实施例提供了一种芯片系统,该芯片系统包括处理器,用于调用存储器中存储的计算机程序或计算机指令,以使得该处理器执行上述第一方面以及第一方面任一项可能的设计所述的方法,或者,使得该处理器执行上述第二方面以及第二方面任一项可能的设计所述的方法,或者,使得该处理器执行上述第三方面以及第三方面任一项可能的设计所述的方法,或者,使得该处理器执行上述第四方面以及第四方面任一项可能的设计所述的方法,或者,使得该处理器执行上述第五方面以及第五方面任一项可能的设计所述的方法,或者,使得该处理器执行上述第六方面以及第六方面任一项可能的设计所述的方法。
在一种可能的设计中,该处理器通过接口与存储器耦合。
在一种可能的设计中,该芯片系统还包括存储器,该存储器中存储有计算机程序或计 算机指令。
第十六方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被执行时,使得上述第一方面或第一方面的任意可能的设计中的方法被执行,或者使得上述第二方面或第二方面的任意可能的设计中的方法被执行,或者使得上述第三方面或第三方面的任意可能的设计中的方法被执行;或者,使得上述第四方面或第四方面的任意可能的设计中的方法被执行,或者使得上述第五方面或第五方面的任意可能的设计中的方法被执行,或者使得上述第六方面或第六方面的任意可能的设计中的方法被执行。
第十七方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品在一个或多个处理器上运行时,使得上述第一方面或第一方面的任意可能的设计中的方法被执行,或者使得上述第二方面或第二方面的任意可能的设计中的方法被执行,或者使得上述第三方面或第三方面的任意可能的设计中的方法被执行;或者,使得上述第四方面或第四方面的任意可能的设计中的方法被执行,或者使得上述第五方面或第五方面的任意可能的设计中的方法被执行,或者使得上述第六方面或第六方面的任意可能的设计中的方法被执行。
第十八方面,本申请实施例提供了一种车辆,该车辆包括上述第一方面或第一方面的任意可能的设计中涉及的第一部件,和/或,上述第二方面或第二方面的任意可能的设计中涉及的第二部件。
上述第七方面至第十八方面的有益效果,请参见上述第一方面至第六方面的有益效果的描述,这里不再重复赘述。
附图说明
图1为本申请实施例适用的一种可能的系统架构示意图;
图2为本申请实施例提供的一种密钥工具生成的流程示意图;
图3为本申请实施例提供的一种密钥传输方法的流程示意图;
图4为本申请实施例提供密钥工具200向密钥管理系统请求初始密钥的流程示意图;
图5为本申请实施例提供一种初始密钥的密文传输的流程示意图;
图6为本申请实施例提供的另一种密钥传输方法的流程示意图;
图7为本申请实施例提供的另一种密钥传输方法的流程示意图;
图8为本申请实施例提供的一种密钥检测方法的流程示意图;
图9为本申请实施例提供的一种控制装置的结构示意图;
图10为本申请实施例提供的另一种控制装置的结构示意图;
图11为本申请实施例提供的一种密钥传输装置的结构示意图;
图12为本申请实施例提供的另一种密钥传输装置的结构示意图;
图13为本申请实施例提供的一种密钥检测的装置的结构示意图;
图14为本申请实施例提供的另一种密钥检测的装置的结构示意图;
图15为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。需要说明的是,本申请中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地” 或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
本申请中实施例提到的“至少一项(个)”是指一项(个)或者多项(个),“多项(个)”是指两项(个)或两项(个)以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b、或c中的至少一项(个),可以表示:a、b、c、(a和b)、(a和c)、(b和c)、或(a和b和c),其中a、b、c可以是单个,也可以是多个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A、同时存在A和B、单独存在B这三种情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
以及,除非有相反的说明,本申请实施例使用“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一信息和第二信息,只是为了区分不同的信息,而并不是表示这两种信息的内容、优先级、发送顺序或者重要程度等的不同。
下面先对本申请实施例中涉及的技术术语进行描述。
一、部件。
部件是车辆中具有密钥传输功能的电子设备或者电子设备中的器件(例如芯片、或集成电路等),上述电子设备可以包括终端设备。例如,部件可以为汽车座舱(cockpit domain)设备,或者汽车座舱设备中的一个模块(例如,座舱域控制器(cockpit domain controller,CDC))。又例如,部件可以为电子控制单元(electronic control unit,ECU)。再例如,部件可以为传感器。在本申请实施例中,密钥传输功能包括接收和/或发送与密钥相关联的数据,与密钥相关联的数据包括但不限于:密钥、基于密钥生成的密文、用于密钥刷写的信息、用于校验密钥完整性的信息、用于检测密钥是否存在异常的信息、用于反馈密钥状态的信息。
在某些技术场景中,车辆中具备相类似密钥传输功能的设备的名称也可能不称为部件,但是为了方便描述,本申请实施例中将车辆中具有密钥传输功能的电子设备统称为部件。
二、密钥工具。
密钥工具是具备密钥传输功能和/或密钥检测功能的软件系统或电子设备,电子设备可以是一个终端设备,例如各种类型的用户设备(user equipment,UE)。在一种可选的设计中,密钥工具可以为OEM诊断工具,或者OEM诊断仪,或者经销商诊断仪,或者经销商诊断工具(tester tool),或者为车载诊断(on board diagnostics,OBD)系统。在一些实施例中,密钥工具可以用于实现如下功能中的一项或多项:为车辆中的部件灌装初始密钥,为车辆中的部件灌装共享密钥,检测车辆部件的共享密钥、初始密钥是否存在异常。其中,密钥工具可以是一个或多个密钥工具,本申请实施例不作具体的限制。
三、资质管理机构。
资质管理机构,可以用于实现如下功能中的一项或多项:分配密钥工具,对车辆的部件供应商和/或OEM的软件安全机制进行评估,对车辆的部件供应商和/或OEM的硬件安全机制进行评估,对车辆的部件供应商和/或OEM的生产环境进行评估,检测或监控车辆运行期间的密钥使用情况。在一些可能的实施例中,所述资质管理机构为具备测绘资质和/或依法从事测绘活动的机构。
四、密钥管理系统。
密钥管理系统,可以用于实现如下功能中的一项或多项:管理车辆的初始密钥生成,管理初始密钥的分发,管理初始密钥的存储。在一些可能的实施例中,该密钥管理系统可以部署在资质管理机构中,也可以部署在OEM的管理系统中。
五、共享密钥。
共享密钥,在本申请实施例中,可以用于对车辆中的不同部件之间的通信信息进行加密,例如对不同部件之间传输的地理位置信息进行加密。在本申请实施例中,共享密钥,可以是一个车辆中的所有部件共享的密钥,也可以是车辆中的一个功能域(例如智能驾驶域)关联的部件共享的密钥,还可以是车辆的一个业务关联的部件共享的密钥,本申请的实施例不作具体的限制。
六、初始密钥(seed)。
在一些实施例中,初始密钥可以作为密钥材料,用于生成共享密钥。在另一些实施例中,初始密钥可以用于对共享密钥加密,实现共享密钥的加密传输。
在一些实施例中,车辆的初始密钥是由与车辆相关联的OEM统一分配给车辆中的各个部件的部件供应商,再由部件供应商通过离线方式(如加密邮件、加密口令的文件)传递给部件供应商的员工,最后由部件供应商的员工将该初始密钥导入到部件产线系统并灌装到相应的部件中。因此,初始密钥的灌装过程,可能存在人员泄露初始密钥的情况。而享密钥是根据车辆的初始密钥生成的,一旦初始密钥被其他设备获取,会使得共享密钥的安全性得不到保证。在一些情况中,OEM针对同一车型的所有车辆分配相同的初始密钥,一旦初始密钥被其他设备获取,会导致同一车型的所有车辆的共享密钥的安全性都受到威胁,进而破坏车辆的不同部件之间通信的安全性。因此,如何安全传输初始密钥,以提升不同部件之间通信的安全性,是亟需解决的技术问题。
有鉴于此,本申请实施例提供一种密钥传输方法,该方法可以由车辆中的第一部件和第一密钥工具执行。在该方法中:第一部件可以接收来自第一密钥工具的第一指令,该第一指令包括与初始密钥相关联的第一信息;进而第一部件可以根据第一指令,获取初始密钥;其中,该初始密钥至少可以用于生成共享密钥,共享密钥至少可以用于加密包含地理位置信息的数据。如此,可以有效提升密钥传输的安全性,从而使得根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆的部件之间通信的安全性能,实现对部件关联的地理位置信息的保护。
下面对本申请实施例的系统架构和业务场景进行描述。需要说明的是,本申请描述的系统架构及业务场景是为了更加清楚的说明本申请的技术方案,并不构成对于本申请提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请提供的技术方案对于类似的技术问题,同样适用。
请参见图1,图1是本申请实施例提供的一种可能的系统的架构示意图,该系统包括密钥工具200和车辆100。其中,车辆100包括第一部件101,例如可以是车辆100中的ECU或域控制器或传感器。其中,密钥工具200具备如下一项或多项功能:功能1、功能2、功能3、功能4。
功能1,灌装初始密钥的功能。
在一种可能的实施方式中,密钥工具200可以用于确定车辆100的初始密钥,向第一部件101发送第一指令,该第一指令包括与初始密钥相关联的第一信息,进而第一部件101接收到第一指令,可以根据第一信息,获取初始密钥。其中,初始密钥可以用于生成共享 密钥,且该初始密钥对与该车辆100相关联的OEM不可见,该共享密钥可以用于加密车辆100的通信信息(例如,地理位置信息)。如此,车辆100有效提升初始密钥传输的安全性,从而使得初始密钥以及根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆100的部件之间通信的安全性。
功能2,灌装共享密钥的功能。
在一种可能的实施方式中,密钥工具200可以在第一部件101成功灌装初始密钥时,向第一部件101发送第二指令,第二指令包括与共享密钥相关联的第二信息,进而第一部件101接收到第二指令,可以根据第二信息和初始密钥,获取共享密钥。如此,有效提升第一部件101获取共享密钥的效率。
在一种可选的实施方式中,上述车辆100还可以包括第二部件102,第一部件101和第二部件102之间可以通信交互,第二部件102和密钥工具200之间可以通信交互。在一种可能的实施方式中,密钥工具200还可以向第二部件102发送第二指令,为第二部件102灌装共享密钥;该第二部件102可以对第二指令进行转换处理,得到第三指令,并将第三指令发送至第一部件101,通过第三指令为第一部件101灌装共享密钥;在又一种可能的实施方式中,密钥工具200向第二部件102发送第二指令之后,该第二部件102可以将该第二指令转发给第一部件101,通过第二指令为第一部件101灌装共享密钥。如此,密钥工具200无需和第一部件101通信交互,也可以为第一部件101灌装共享密钥,有效提升车辆100中多个部件灌装共享密钥的效率。
需要说明的是,第二部件102是集成在整车内的某一个部件,例如可以是智能驾驶域控制器、中央网关等,第一部件101可以是部件产线上的单个部件,可以是任意车载部件。当共享密钥是整车共享密钥时,第一部件101和第二部件102只需同属于车辆100即可;当共享密钥是特定业务的功能密钥时,第一部件101和第二部件102可以关联同一业务。
功能3,通过随机数检测密钥的功能。
在一种可能的实施方式中,密钥工具200可以向第一部件101发送第四指令,该第四指令包括第三随机数;进而第一部件101接收到第四指令,可以根据车辆100的共享密钥和第三随机数生成第一校验值,并返回包含第一校验值的第四响应信息给密钥工具200;密钥工具200根据第一校验值,确定车辆100使用的共享密钥与密钥工具200确定的对应于车辆100的本地共享密钥是否一致;若车辆100使用的共享密钥与密钥工具200保存的本地共享密钥不一致,上报异常信息。如此,密钥工具200通过和第一部件101进行交互,实现对车辆100的共享密钥的检测。
在另一种可能的实施方式中,密钥工具200还可以用于检测车辆的初始密钥,检测过程可以是:密钥工具200可以向第一部件101发送第五指令,该第五指令包括第五随机数;进而第一部件101接收到第五指令,可以根据第五随机数和车辆100的初始密钥生成第三校验值,并返回包含第三校验值的第五响应信息给密钥工具200;密钥工具200根据第三校验值,确定车辆100使用的初始密钥与密钥工具200确定的对应于车辆100的本地初始密钥是否一致;若车辆100使用的初始密钥与密钥工具200保存的本地初始密钥不一致,上报异常信息。如此,密钥工具200通过和第一部件101进行交互,实现对车辆100的初始密钥的检测。
功能4,通过通信信息密文检测密钥的功能。
在一种可能的实施方式中,密钥工具200可以获取车辆100的第一部件101的通信信 息密文,该通信信息密文包括通过所述车辆100的共享密钥加密第一信息得到的信息,该第一信息包括地理位置信息;确定车辆100的共享密钥与对应于密钥工具200确定的车辆100的本地共享密钥是否一致;若该车辆100的共享密钥与其本地共享密钥不一致,上报异常信息。如此,密钥工具200只需获取车辆100中的第一部件101的通信信息密文,就可以实现对车辆100的共享密钥的检测,有效提升检测的效率。另一方面,由于通信信息密文的随机性和/或实时性,基于通信信息密文实现的密钥检测,能够进一步提升密钥检测的鲁棒性,可以防止共享密钥被伪造。
需要说明的是,密钥工具200可以是第一密钥工具、第二密钥工具和密钥检测工具中的任一工具。其中,第一密钥工具可以具备上述功能1,或者,第一密钥工具除了可以具备上述功能1之外,还可以具备如下功能中的一项或多项:功能2,功能3,功能4。第二密钥工具可以具备功能2。密钥检测工具可以具备功能3和/或功能4,其中,密钥检测具体可以包括初始密钥和/或共享密钥的检测。
因此,当密钥工具200具备功能1时,或者,当密钥工具200除了具备功能1之外,还具备功能2、功能3和功能4中的一项或多项时,密钥工具200可以是第一密钥检测工具;当密钥工具200仅具备共享密钥灌装功能时,密钥工具200可以是第二密钥检测工具;当密钥工具200仅具备密钥检测功能时,密钥工具200可以是密钥检测工具。此外,密钥工具200还可以对应其他密钥工具,其他密钥工具可以具备功能2和功能3,或者具备功能2和功能4,或者具备功能2、功能3和功能4。
在一种可能的实施方式中,第一密钥工具和第二密钥工具可以对应于不同的密钥灌装环境。例如,第一密钥工具对应于部件供应商/部件生产线,即在部件供应商和/或部件生成线,可以通过第一密钥工具实现对第一部件的初始密钥,或实现对第一部件的初始密钥和共享密钥灌装;第二密钥工具对应于OEM产线,即在OEM产线,可以通过第二密钥工具实现对第一部件的共享密钥灌装。在该实施方式中,不同的密钥灌装环境,使用不同的密钥工具来实现对第一部件的初始密钥和共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以实施方式适配于不同密钥灌装环境的密钥工具,进一步保证不同密钥灌装环境下密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
在另一种可能的实施方式中,第一密钥工具和第二密钥工具还可以对应车内不同的部件。例如,第一密钥工具对应于车内的任一部件或者参与地理信息交互的车内部件,则第一密钥工具可以用于为车内的任一部件或者参与地理信息交互的车内部件实现初始密钥的灌装,或实现初始密钥和共享密钥灌装;而第二密钥工具仅对应于车内主控部件(例如,用于支撑智能驾驶的软硬件一体化平台即车载计算平台(vehicle computing platform)、网关等)或者特定功能域(例如,智能驾驶域、HMI等)关联的部件,则第二密钥工具可以用于为车内的主控部件或者特定功能域关联的部件实现共享密钥的灌装。在该实施方式中,针对不同的车内部件,使用不同的密钥工具来实现初始密钥和/或共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以实施方式适配于不同车内部件的密钥工具,进一步保证不同车内部件密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
在另一种可能的实施方式中,第一密钥工具和第二密钥工具还可以对应不同的部件供应商。例如,第一密钥工具对应于部件供应商1,则第一密钥工具可以用于为部件供应商1关联任一车内部件实现初始密钥的灌装,或实现初始密钥和共享密钥的灌装;例如,第二密钥工具对应于部件供应商2,则第二密钥工具可以用于为部件供应商2关联任一车内 部件实现共享密钥的灌装。在该实施方式中,针对不同的同部件供应商,使用不同的密钥工具来实现对第一部件的初始密钥和/或共享密钥的灌装,不仅可以实现密钥灌装的灵活性,而且还可以实施方式适配于不同部件供应商的密钥工具,进一步保证不同部件供应商密钥灌装的安全性,从而提升车内不同部件之间通信的安全性能。
需要说明的是,上述密钥工具200可以是资质管理机构为OEM分配的。示例性的,请参见图2,图2示出了资质管理机构为OEM分配密钥工具的过程,该过程包括以下步骤:
S201、资质管理机构确定OEM资质和OEM生产线的环境信息满足安全要求,生成初始密钥。
其中,安全要求包括以下一项或多项:对部件和整车数据保护机制的安全性要求、对生产线网络环境的安全性要求、对人员管理制度的规范性要求。
S202、资质管理机构为OEM分配密钥工具,并将该初始密钥存储于该密钥工具。
其中,该密钥工具具备灌装初始密钥的功能。在一种可选的设计中,该密钥工具还具备生成密钥材料的功能和/或灌装密钥材料的功能。
可选的,上述过程还可以包括步骤S200,步骤S200具体如下:
S200、OEM向资质管理机构发送密钥工具请求信息。相应的,资质管理机构接收密钥工具请求信息。其中,密钥工具请求信息包括OEM的资质信息和OEM生产线的环境信息、车辆的类型信息。也就是说,资质管理机构可以在收到OEM的密钥工具请求信息时,对OEM的相关信息进行验证,并在验证成功时为OEM分配密钥工具。如此,有效提升密钥工具使用的安全性,进而提升密钥的安全性。
应理解,基于图2实现的密钥工具分配过程也可以用于资质管理机构为车辆的部件供应商或其他机构分配密钥工具,本申请实施例不做具体的限定。
需要说明的是,密钥工具200具备不同的功能时,其对应密钥传输方法也不同。下面结合具体实施例对本申请实施例提供的密钥传输方法进行介绍。
请参见图3,图3是本申请实施例提供的一种密钥传输方法所对应的流程示意图。该方法的执行主体以图1所示的密钥工具200和第一部件101为例,在图3中,密钥工具200具备上述功能1(即灌装初始密钥的功能),应理解,在这种方式下,密钥工具200可以为第一密钥工具。该方法可以包括:
S301、密钥工具200确定车辆100的初始密钥。
其中,初始密钥可以用于生成共享密钥,该共享密钥可以用于加密包含地理位置信息的数据。
其中,地理位置信息的数据可以是包括与如下一项或多项相关的数据:经纬度、高程、地理轨迹,例如地理位置信息的数据可以是包括经纬度数据范围和/或高程数据范围在预设阈值范围内的数据;或者,地理位置信息的数据可以是与地理位置相关的数据,本申请实施例不作具体的限制。其中,高程是指某一点相对于基准面的高度,例如,车辆的顶部相对于地面的高度;相应地,高程数据包括反映某一点相对于基准面的高度的数据,例如,反映车辆的顶部相对于地面的高度的数据。
其中,密钥工具200确定车辆100的初始密钥有多种实施方式,包括但不限于以下方式:
方式1,密钥工具200预先存储车辆100的初始密钥,密钥工具200可以根据车辆100的类型信息,可以在本地查询并确定车辆100的初始密钥。
示例性的,请继续参见图2,资质管理机构在为车辆100关联的OEM分配密钥工具200时,就可以将对应于车辆100的初始密钥存储在密钥工具200的内部存储空间中,进而密钥工具200可以根据车辆100的类型信息,在本地查询车辆100的初始密钥。在本申请实施例中,与车辆相关联的OEM可以实现如下一项或多项功能:开发车辆,集成车辆,生成车辆,或者,与车辆相关联的OEM也可以实现与车辆相关的其他功能,本申请实施例不做具体的限定。
在方式1中,密钥工具200可以快速确定车辆100的初始密钥,有助于提升初始密钥的灌装效率。
方式2,密钥工具200可以向密钥管理系统请求初始密钥。
在方式2的一种可选的设计中,密钥工具200可以是资质管理机构为OEM分配的,但资质管理机构未将该初始密钥预存储于密钥工具200中。
示例1,请参见图4,图4示出了方式2中密钥工具200向密钥管理系统获取初始密钥的流程示意图,该过程包括以下步骤:
S3011、密钥工具200生成第二公钥和第二私钥。
在一种可能的实施方式中,密钥工具200可以基于非对称密钥算法,生成第二公钥和第二私钥。其中,非对称加密算法可以是SM2算法、RSA算法等,本申请实施例不作具体的限定。通过这种方式,不需要密钥工具200与密钥管理系统预先共享相同的密钥信息,简化了初始密钥的灌装过程。
S3012、密钥工具200向密钥管理系统发送请求信息。相应的,密钥管理系统接收该请求信息。
其中,该请求信息可以用于请求初始密钥,并且该请求信息包括第二公钥,进而密钥管理系统可以响应于该请求信息,执行S3013。
S3013、密钥管理系统根据第二公钥,生成第二密文。
在一种可能的实施方式中,密钥管理系统可以利用第二公钥对车辆100的初始密钥进行加密,得到第二密文。
S3014、密钥管理系统发送第二密文。相应的,密钥工具200接收第二密文。
S3015、密钥工具200根据第二密文和第二私钥,确定初始密钥。
其中,第二密文包括通过第二公钥对初始密钥加密得到的信息,进而密钥工具200可以利用第二私钥对第二密文进行解密,得到初始密钥。
示例2,密钥工具200向密钥管理系统发送请求信息,该请求信息可以用于请求初始密钥,并且该请求信息包括预配置的密钥;进而密钥管理系统接收该请求信息,并响应于该请求信息,根据预配置的密钥信息,对车辆100的初始密钥进行加密,得到第二密文;密钥管理系统将第二密文发送至密钥工具200,密钥工具200根据第二密文和预配置的密钥,确定初始密钥。如此,密钥工具200无需生成临时密钥,降低了密钥工具200实现的复杂度。
在方式2中,密钥工具200可以向密钥管理系统实时请求初始密钥,并且密钥管理系统可以将初始密钥加密传输给密钥工具200,有效提升初始密钥的实时性和安全性。
应理解,上述密钥管理系统可以部署在资质管理机构中,也可以部署在OEM的管理系统中,本申请实施例不作具体限制。
方式3,密钥工具200生成车辆100的初始密钥。
示例性的,密钥工具200可以根据车辆100的信息,生成车辆100的初始密钥。其中,密钥工具200可以随机或者按照一定规则生成车辆100的初始密钥,本申请实施例不作具体的限定。
在方式3中,密钥工具200可以实时生成车辆100的初始密钥,可以有效保证初始密钥的实时性。
S302、密钥工具200向车辆100的第一部件101发送第一指令。相应的,第一部件101接收第一指令。
其中,第一指令可以包括与初始密钥相关联的第一信息,进而第一指令可以用于为第一部件101灌装初始密钥。
在一种可选的设计中,在S302之前,密钥工具200向第一部件101发送密钥灌装指令,该密钥灌装指令可以用于触发初始密钥的灌装。
S303、第一部件101根据第一指令,获取初始密钥。
应理解,第一部件101根据第一指令获取初始密钥的过程即第一部件101根据第一信息获取初始密钥的过程。其中,第一部件101根据第一信息确定初始密钥的过程,可以作为初始密钥灌装过程的一部分或全部。在一种可选的实施方式中,第一部件101第一部件101根据第一信息,获取初始密钥,就已经完成初始密钥的灌装。在另一种可选的实施方式中,第一部件101获取初始密钥之后,还需要调用硬件安全模块(hardware security module,HSM)将该初始密钥保存在本地,才完成初始密钥的灌装。
其中,上述第一信息有多种实现方式,进而第一部件101根据第一信息获取初始密钥有多种实现方式,包括但不限于以下方式:
方式1,第一信息包括第一密文。其中,第一密文包括通过第一公钥对初始密钥加密得到的信息,第一部件101可以根据第一密文,获取初始密钥。也就是说,密钥工具200可以将初始密钥的密文(即第一密文)传输给第一部件101。其中,密钥工具200可以向密钥管理系统请求初始密钥(具体的过程描述请参见图2)。
示例性的,请参见图5,图5示出了方式1中,初始密钥加密传输的流程示意图,该过程包括以下步骤:
S3021、第一部件101生成第一公钥和第一私钥。
在一种可能的实施方式中,第一部件101可以调用HSM,生成第一公钥和第一私钥。其中,用于生成第一公钥和第一私钥的算法,在本申请实施例中不做具体的限定,例如可以是非对称加密算法(比如SM2算法、RSA算法)或者其他算法。
S3022、第一部件101向密钥工具200发送第一公钥。相应的,密钥工具200接收该第一公钥。
可替换地,第一部件101还可以向密钥工具200发送通过预配置密钥加密的第一公钥,该预配置密钥例如可以是认证密钥或者第一部件与密钥工具200之间共享的其他密钥。如此,有效提升第一公钥传输的安全性,进而有效提升后续通过第一公钥得到的第一密文传输的安全性。
S3023、密钥工具200根据第一公钥和初始密钥,得到第一密文。
在一种可能的实施方式,密钥工具200可以根据第一公钥对初始密钥进行加密,生成第一密文。
S3024、密钥工具200发送第一密文。相应的,第一部件101接收第一密文。
S3025、第一部件101根据第一密文和第一私钥,获取初始密钥。
在一种可能的实施方式,第一部件101可以利用第一私钥对第一密文进行解密,得到初始密钥。
进一步的,第一部件101得到初始密钥之后,还可以调用HSM,以使HSM根据第一部件101本地的认证密钥将初始密钥加密并存储在第一部件101的内部存储空间中,或者,直接将初始密钥保存在第一部件101的内部存储空间中,实现对初始密钥的灌装。
应理解,在本申请实施例中,认证密钥由OEM负责管理和维护,可以用于OEM或部件供应商所开发的功能密钥的认证。认证密钥可以对应一款车型包括的所有整车,或者也可以对应一台整车,或者也可以对应整车内的一个功能部件,或者对应整车内的一个ECU。
认证密钥例如可以为ECU主密钥(master ECU key,MEK)、预备ECU主密钥(pre-master ECU key,PMEK)(也可以称为ECU初始硬件权限密钥)、根密钥等,本申请实施例不作具体的限定。其中,根密钥是指OEM传给部件供应商的预置密钥,由部件供应商将这些预置密钥灌装到车内部件中,整车产线可以依赖这些预置密钥的认证和授权将功能密钥灌装到车内部件。
其中,功能密钥也称作业务密钥,可用于加密整车中各类功能的ECU密钥。功能密钥例如可以包括但不限于:预共享密钥(pre-shared key,PSK),用于业务应用的主密钥(master key,MK),会话密钥(session key,SK)。其中,PSK可以包含用于保护车载网络通信安全的板端加密通讯(security onboard communication,SecOC)的密钥(SecOC key)和用于设备认证的设备密钥(device key)。
在方式1,密钥工具200将初始密钥的密文传输给第一部件101,可以保证初始密钥传输的安全性。
可选的,第一部件101还可以直接将第一密文存储在第一部件101的内部存储空间中,在需要使用初始密钥时,再对第一密文进行解密,得到初始密钥。
方式2,第一信息包括初始密钥。也就是说,密钥工具200可以将初始密钥传输给第一部件101。
相应的,密钥工具200向车辆100的第一部件101发送第一指令的过程可以是:密钥工具200通过有线连接的方式,向第一部件101发送初始密钥。其中,密钥工具200和第一部件101可以通过网线、或数据线等实现有线连接,本申请实施例不作具体的限定。
在方式2,密钥工具200可以直接将初始密钥传输给车辆100中的第一部件101,使得第一部件101可以快速获取初始密钥。并且,通过有线连接的方式,第一部件101可以直接接收初始密钥,无需第一部件101进行加解密操作,因此对于不具备加解密能力的第一部件101,也可以获取初始密钥,进而保证不同部件之间通信的安全性。此外,通过这种方式获取初始密钥,可以简化第一部件101的操作,降低第一部件101实现复杂度和部件成本。
在图3所示的实施例中,初始密钥与车辆100相关联的OEM无关,或者与车辆100相关联的部件供应商和OEM都无关,或者与不具备导航电子地图制作资质的OEM无关(这里的OEM可以关联于车辆100),即初始密钥的整个传输过程无需与车辆100相关联的OEM或无需不具备导航电子地图制作资质的OEM参与,使得该初始密钥对OEM或者对不具备导航电子地图制作资质的OEM不可见,可以有效提升密钥传输的安全性,从而使得根据初始密钥生成的共享密钥无法被其他设备获取,进而有效提升车辆100的部件之间 通信的安全性能,实现对部件关联数据的保护。
可选的,请继续参见图3,本申请实施例提供的密钥传输方法还可以包括步骤S304,步骤S304具体如下:
S304、第一部件101发送第一响应信息。相应的,密钥工具200接收该第一响应信息。
应理解,第一响应信息即为第一部件101响应于从密钥工具200接收的第一指令,发出的响应信息。其中,第一响应信息可以包括初始密钥的灌装结果,初始密钥的灌装结果可以用于指示初始密钥灌装成功或初始密钥灌装失败。
作为一种可能的实现方式,第一指令中可以包含第一随机数,进而第一部件101收到第一指令之后,可以根据初始密钥和第一随机数,得到第三密文,例如,可以通过初始密钥或初始密钥的派生密钥对第一随机数进行加密,得到第三密文。
相应的,例如,初始密钥的灌装结果可以包括第一标识,第一标识可以用于指示初始密钥灌装成功;和/或,第三密文。可以理解的是,初始密钥的灌装结果包含的信息不同,密钥工具200确定初始密钥灌装成功的场景也不同。
场景1:
密钥工具200接收到的初始密钥灌装结果中包括第一标识,则密钥工具200认为初始密钥灌装成功。
场景2:
密钥工具200接收到的初始密钥灌装结果中包括第三密文,则密钥工具200可以根据第三密文确定初始密钥是否灌装成功。
其中,密钥工具200根据第三密文确定初始密钥是否灌装成功,有多种实现方式,包括但不限于以下方式:
方式1,密钥工具200接收到第三密文之后,可以根据初始密钥和第三密文,得到第二随机数,例如可以利用初始密钥对第三密文进行解密,得到第二随机数,将第二随机数和第一指令中包含的第一随机数进行比对,若第一随机数和第二随机数的取值一样,则确定初始密钥灌装成功;若第一随机数和第二随机数的取值不一样,则确定初始密钥失败。
方式2,密钥工具200可以根据本地的初始密钥和第一随机数,得到本地验证信息,例如可以利用本地的初始密钥对第一指令中包含的第一随机数进行加密,得到密文1(即本地验证信息),将第三密文和密文1进行比对,若第三密文和密文1的取值一样,则确定初始密钥灌装成功;若第三密文和密文1的取值不一样,则确定初始密钥未灌装成功。可选的,密钥工具200接收到第三密文之后,可以根据本地的初始密钥和第一随机数,确定本地验证信息。
场景3:
密钥工具200接收到的初始密钥灌装结果中包括第一标识和第三密文,则密钥工具200需要根据第三密文再次确定初始密钥是否灌装成功。
应理解,在一些实施例中,第一部件101接收第一指令之后,根据第一指令中的第一信息,获取并保存的初始密钥Seed2,存在保存不够完整的情况,进而导致第一部件101保存的初始密钥Seed2与密钥工具200所要灌装的Seed1不同。因此,即使密钥工具200接收到的初始密钥灌装结果中包括第一标识,密钥工具200仍需要根据第三密文再次确定初始密钥是否灌装成功。
其中,密钥工具200根据第三密文再次确定初始密钥是否灌装成功的具体实现方式与 场景2中根据第三密文确定初始密钥是否灌装成功的具体实现方式类似,请参见前文,这里不再赘述。
又如,上述初始密钥的灌装结果可以包括第二标识,第二标识可以用于指示初始密钥灌装失败。可选的,第二标识还可以用于指示初始密钥灌装失败的原因,例如第一部件101中的HSM对第一密文解密失败、第一部件101的存储空间不足等。
可选的,初始密钥的灌装结果还可以包括车辆100的标识和/或第一部件101的标识。相应的,密钥工具200可以根据车辆100的标识和/或第一部件101的标识,统计并保存初始密钥的灌装情况。
为了使得初始密钥能够灌装成功,若上述初始密钥的灌装结果指示初始密钥灌装失败,则密钥工具200可以重新向第一部件101发送上述第一指令。可选的,若第一指令的次数超出预设阈值时,密钥工具200停止向第一部件101发送第一指令。通过这种实施方式,可以保证初始密钥灌装的有效性。
在一种可能的实施方式中,若上述初始密钥的灌装结果指示初始密钥灌装成功,密钥工具200可以向第一部件101发送第二指令。其中,第二指令用于为第一部件101灌装共享密钥。
下面结合具体的示例介绍密钥工具200为第一部件101灌装共享密钥的过程。
示例性的,请参见图6,在图6中密钥工具200具有上述功能2,即密钥工具200具备上述功能2(即灌装共享密钥的功能),应理解,在这种方式下,密钥工具200可以为第一密钥工具或第二密钥工具。
其中,密钥工具200为第一部件101灌装共享密钥的过程包括以下步骤:
S601、密钥工具200发送第二指令。相应的,第一部件101接收第二指令。
其中,第二指令包括与共享密钥相关联的第二信息。
S602、第一部件101根据第二信息和初始密钥,确定共享密钥。
应理解,第一部件101根据第二信息和初始密钥,确定共享密钥的过程,可以为共享密钥灌装过程的一部分或全部。在一种可选的实施方式中,第一部件101第一部件101根据第二信息和初始密钥,确定共享密钥,完成共享密钥的灌装。在一种可选的实施方式中,第一部件101确定共享密钥之后,调用HSM将该共享密钥保存在本地,完成共享密钥的灌装。
其中,第二信息有多种实现方式,相应的,第一部件101根据第二信息和初始密钥,确定共享密钥的实施方式也有多种,包括但不限于以下方式:
方式1,第二信息为密钥材料(例如salt),进而第一部件101接收该第二指令之后,可以根据第二信息和初始密钥,生成共享密钥。
在一种可能的实施方式中,第一部件101根据初始密钥和第二信息,得到共享密钥的过程可以是:基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第二信息,得到共享密钥。
示例性的,第一部件101可以根据如下公式得到共享密钥:
KEK=ENC(salt,seed);
其中,KEK为共享密钥,salt为密钥材料的一个示例,seed为初始密钥,ENC为任意对称加密算法或基于对称加密算法的消息认证码或密钥派生函数。其中,在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,对称加密 算法可以包括但不限于:DES算法、3DES算法、SM1算法、SM4算法。消息认证码(message authentication code,MAC)是一种确认完整性并进行认证的技术。密钥派生函数是用于从一个共享的秘密比特串中派生出密钥数据的函数,密钥派生函数包括但不限于:基于密码的密钥派生函数(password-based key derivation function,PBKDF)、斯克里普特(scrypt)算法。在本申请实施例中,对对称加密算法和密钥派生函数不做具体限定。
在方式1中,第一部件101可以自己生成共享密钥,有效提升共享密钥灌装的安全性。
方式2,第二信息是共享密钥的密文。
在一种可能的实施方式中,共享密钥由密钥工具200生成,并且密钥工具200可以根据初始密钥和共享密钥,得到第二信息。例如,密钥工具200可以利用初始密钥对共享密钥进行加密,得到第二信息。相应的,第一部件101接收到第二指令之后,可以根据初始密钥和第二信息,共享密钥。例如,第一部件101可以利用初始密钥对第二信息解密,得到共享密钥。
其中,密钥工具200根据初始密钥对共享密钥进行加密的过程所采用的算法可以是对称加密算法或密钥派生函数,本申请实施例不作具体的限制。其中,对称加密算法和密钥派生函数可以参考前文对对称加密算法和密钥派生函数的描述,这里不再赘述。
在方式2中,第二信息包括共享密钥的密文,该密文即为通过初始密钥对共享密钥加密得到的信息,第一部件101利用初始密钥对该密文进行解密,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式2对第一部件101的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
S603、第一部件101发送第二响应信息。相应的,密钥工具200接收该第二响应信息。
应理解,第二响应信息即为第一部件101响应于从密钥工具200接收的第二指令,发出的响应信息。其中,第二响应信息包括共享密钥的灌装结果,共享密钥的灌装结果可以用于指示初始密钥灌装成功或初始密钥灌装失败。
作为一种可能的实现方式,第二指令中可以包含第三随机数,进而第一部件101收到第二指令之后,可以通过共享密钥或共享密钥的派生密钥和第三随机数,得到第四密文。例如,通过共享密钥或共享密钥的派生密钥对第三随机数进行加密,得到第四密文。
相应的,在一种可能的实施方式,共享密钥的灌装结果可以包括:第三标识,第三标识用于指示共享密钥灌装成功;和/或,第四密文。可以理解的是,共享密钥的灌装结果包含的信息不同,密钥检测工具200确定共享密钥灌装成功的场景也不同。
场景1:
密钥工具200接收到的共享密钥灌装结果中包括第三标识,则密钥工具200认为共享密钥灌装成功。
场景2:
密钥工具200接收到的共享密钥灌装结果中包括第四密文,则密钥工具200可以根据第四密文确定共享密钥是否灌装成功。
其中,密钥工具200根据第四密文确定共享密钥是否灌装成功,有多种实现方式,包括但不限于以下方式:
方式1,密钥工具200接收到第四密文之后,可以根据共享密钥和第四密文,得到第 四随机数。例如,利用共享密钥对第四密文进行解密,得到第四随机数。密钥工具200将第四随机数和第二指令中包含的第三随机数进行比对,若第三随机数和第四随机数的取值一样,则确定共享密钥灌装成功;若第三随机数和第四随机数的取值不一样,则确定共享密钥失败。
方式2,密钥工具200接收到第四密文之后,可以根据本地的共享密钥和第三随机数,得到本地验证消息。例如,利用本地的共享密钥对第三随机数进行加密,得到密文2(即本地验证信息),将第四密文和密文2进行比对,若第四密文和密文2的取值一样,则确定共享密钥灌装成功;若第四密文和密文2的取值不一样,则确定共享密钥灌装失败。
场景3:
密钥工具200接收到的共享密钥灌装结果中包括第三标识和第四密文,则密钥工具200需要根据第四密文再次确定共享密钥是否灌装成功。应理解,在一些实施例中,第一部件101接收第二指令之后,根据第二指令中的第一信息,获取并保存的共享密钥KEY2,存在保存不够完整的情况,进而导致第一部件101保存的共享密钥KEY2与密钥工具200所要灌装的KEY1不同。因此,即使密钥工具200接收到共享密钥灌装结果中包括第一标识,密钥工具200仍需要根据第四密文再次确定初始密钥是否灌装成功。
其中,密钥工具200根据第四密文再次确定共享密钥是否灌装成功的具体实现方式与场景2中根据第四密文确定共享密钥是否灌装成功的具体实现方式类似,请参见前文,这里不再赘述。
在另一种可能的实施方式中,共享密钥的灌装结果可以包括第四标识,第四标识可以用于指示共享密钥灌装失败。可选的,第二标识还可以用于指示共享密钥灌装失败的原因,例如第一部件101中的HSM解密失败、第一部件101的存储空间不足等。
可选的,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件101的标识。相应的,密钥工具200可以根据车辆100的标识和/或第一部件101的标识,统计并保存共享密钥的灌装情况。
在一种可能的实施方式中,若共享密钥的灌装结果指示共享密钥灌装失败,则密钥工具200可以重新发送上述第二指令。可选的,密钥工具200发送第二指令的次数超出预设阈值时,停止向第一部件101发送第二指令。通过这种实施方式,可以保证共享密钥灌装的有效性。
在图6所示的实施例中,密钥工具200可以为第一部件101灌装共享密钥,有效提升第一部件101的共享密钥的安全性。
需要说明的是,在一些实施例中,车辆100中的第二部件102也可以为第一部件101灌装共享密钥。
示例性的,请参见图7,图7示出了第二部件102为第一部件101灌装共享密钥的流出示意图,该过程包括以下步骤:
S701、第二部件102获取共享密钥灌装指令。该获取可以理解为接收或者生成。
其中,共享密钥灌装指令包括与共享密钥关联的信息,进而该共享密钥灌装指令可以用于为第一部件101灌装共享密钥,该共享密钥至少用于加密包含地理位置信息的数据。其中,共享密钥和地理位置信息的数据的具体描述,可以参见前文的相关描述。
S702、第二部件102发送共享密钥灌装指令。相应的,第一部件101接收共享密钥灌装指令。
其中,上述共享密钥灌装指令有多种实现方式,包括但不限于以下实施方式:
实施方式一,共享密钥灌装指令可以包括第二指令,例如共享密钥灌装指令为第二指令,又如共享密钥灌装指令除了包括第二指令还包括其他信息。该第二指令包括与该共享密钥相关联的第二信息。
示例性的,第二部件102确定共享密钥灌装指令可以是:第二部件102接收来自密钥工具200的第二指令;将第二指令作为该共享密钥灌装指令。相应的,第二部件102可以直接将来自密钥工具200的第一指令转发至第一部件101。
在实施方式一中,第二部件102可以直接将来自密钥工具200的第二指令转发至第一部件,实现对第一部件101的共享密钥灌装。如此,可以简化第二部件102的操作流程,实现简单,且第一部件101不需要从密钥工具200获取共享密钥灌装指令,进而有效提升共享密钥的灌装效率。
其中,上述第二信息有多种实现方式。例如,密钥工具200生成为密钥材料(比如密钥材料是随机生成的或者按照一定规则生成的),并将密钥材料作为第二指令中的第二信息。又例如,密钥工具200可以生成共享密钥(比如共享密钥是随机生成的或者按照一定规则生成的),根据初始密钥和共享密钥,得到共享密钥的密文,将该密文作为第二信息;再例如,密钥工具200可以利用初始密钥对共享密钥进行加密,得到共享密钥的密文,将该密文作为第二信息。
实施方式二,共享密钥灌装指令可以包括第三指令,例如共享密钥灌装指令为第三指令,又如共享密钥灌装指令除了包括第三指令还包括其他信息。该第三指令包括与该共享密钥相关联的第三信息。
其中,该第三指令有多种实现方式,包括但不限于以下实施方式:
方式1:第二部件102接收来自密钥工具200的第二指令,对该第二指令进行处理,得到第三指令。
示例性的,第二部件102可以对第二指令的通信协议格式进行转换,得到第三指令;或者,第二部件102可以对第二指令包括的第二信息的通信协议格式进行转换,得到第三指令包括的第三信息。
相应的,第二部件102可以接收来自密钥工具200发送的第二指令,再通过处理第二指令,得到第三指令。其中第二指令包括与共享密钥相关联的第二信息,该第二信息有多种实现方式,具体可以参见前述实施方式一中第二信息的实现方式,这里不再赘述。
在方式1中,第三指令或第三指令包括的第三信息可以更好地适配于第一部件和第二部件102之间的通信协议,使得第一部件101可以根据该指令(即第三指令)实现共享密钥的灌装,第一部件不需要从密钥工具200获取共享密钥灌装指令,进而有效提升共享密钥的灌装效率。
方式2:第二部件102生成第三指令。
示例性地,第二部件102可以是在满足预设条件或接收到特定指令时,生成上述第三指令,将该第三指令作为共享密钥灌装指令。
其中,“特定指令”可以是任意指令,第二部件可以将该指令作为触发信号。比如专门用于生成共享密钥灌装指令的诊断命令,也可以是其他功能的诊断命令,比如部件刷写、部件复位等指令。在一种可选的设计中,特定指令可以来自诊断仪、整车电检测试设备、云端、车内其他部件(如TBOX、GW)。
其中,该预设条件包括但不限于第二部件关联的设备启动、到达特定时间。
可以理解的是,“第二部件关联的设备启动”可以是第二部件启动或者第二部件所在的设备启动。例如,第二部件是A,则A启动或A所在的设备启动时,A可以生成上述第三指令。又例如,第二部件是B,则B启动或B所在的设备启动时,B可以生成上述第三指令。
可以理解的是,“到达特定时间”可以是到达设定的密钥灌装时间(例如,每月1号0点),或者,到达距离密钥过期的预设时间(例如密钥过期前一天)。
相应的,在方式2中,第三信息有多种实现方式。例如,第二部件102可以生成密钥材料(比如密钥材料是随机生成的或者按照一定规则生成的),并将密钥材料作为第三指令中的第三信息;又例如,第二部件102可以生成共享密钥(比如共享密钥是随机生成的或者按照一定规则生成的),根据初始密钥和共享密钥,得到共享密钥的密文,将该密文作为第三信息。
在方式2中,第二部件102可以生成共享密钥灌装指令,为车辆内的其他部件(即第一部件)实现共享密钥的灌装,使得共享密钥的灌装不再依赖第一密钥工具或者第二密钥工具,简化了共享密钥灌装的流程。
S703、第一部件101根据共享密钥灌装指令和初始密钥,确定共享密钥。
在一种可能的实施方式中,共享密钥灌装指令可以为上述第二指令,第二指令包括与该共享密钥相关联的第二信息,进而第一部件101可以根据第二信息和初始密钥,确定共享密钥。其中,第一部件101根据第二信息和初始密钥,确定共享密钥的实施方式,请参见前文相关的描述,这里不再赘述。
在另一种可能的实施方式中,共享密钥灌装指令可以为上述第三指令,第三指令包括与该共享密钥相关联的第三信息,进而第一部件101可以根据第三信息和初始密钥,确定共享密钥。其中,第一部件101根据第三信息和初始密钥,确定共享密钥有多种实施方式,包括但不限于以下方式:
方式1,第三信息为密钥材料(例如salt),进而第一部件101接收该第三指令之后,可以根据第三信息和初始密钥,生成共享密钥。
在一种可能的实施方式中,第一部件101根据初始密钥和第三信息,得到共享密钥的过程可以是:基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第三信息,得到共享密钥。
示例性的,第一部件101可以根据如下公式得到共享密钥:
KEK=ENC(salt,seed);
其中,KEK为共享密钥,salt为密钥材料的一个示例,seed为初始密钥,ENC为任意对称加密算法或基于对称加密算法的消息认证码或密钥派生函数。其中,对称加密算法、基于对称加密算法的消息认证码和密钥派生函数可以参考前文对对称加密算法和密钥派生函数的描述,这里不再赘述。
在方式1中,第一部件101可以自己生成共享密钥,有效提升共享密钥灌装的安全性。
方式2,第三信息是共享密钥的密文。
在一种可能的实施方式中,共享密钥由密钥工具200生成,并且密钥工具200可以根据初始密钥和共享密钥,得到第三信息。例如,密钥工具200可以利用初始密钥对共享密钥进行加密,得到第三信息。相应的,第一部件101接收到第三指令之后,可以根据初始 密钥和第三信息,共享密钥。例如,密钥工具200可以利用初始密钥对第三信息解密,得到共享密钥。其中,密钥工具200根据初始密钥对共享密钥进行加密的过程所采用的算法可以是对称加密算法或密钥派生函数,本申请实施例不作具体的限制。其中,对称加密算法和密钥派生函数可以参考前文对对称加密算法和密钥派生函数的描述,这里不再赘述。
在方式2中,第三信息包括共享密钥的密文,该密文即为通过初始密钥对共享密钥加密得到的信息,第一部件101利用初始密钥对该密文进行解密,就可获得共享密钥,而对于不具备初始密钥的其他设备而言,即使接收到该密文,也无法恢复出共享密钥,进而有效提升第一部件的共享密钥的安全性。此外,方式2对第一部件101的算法要求低,例如只需要第一部件支持任意解密算法,就可以得到共享密钥,降低第一部件实现复杂度和成本。
S704、第一部件101发送响应于共享密钥灌装指令的响应信息。
在一种可能的实施方式中,共享密钥灌装指令为上述第二指令,响应于共享密钥灌装指令对应的响应信息包括响应于第二指令的第二响应信息。第二响应信息的描述,请参见前文相关的描述,这里不再赘述。
在另一种可能的实施方式中,共享密钥灌装指令可以为上述第三指令,响应于共享密钥灌装指令的响应信息包括响应于第三指令的第三响应信息。其中,第三响应信息的具体实现方式与上述第二响应信息类似。请参见前文对第二响应信息的描述,只需将第二响应信息替换为第三响应信息即可,这里不再赘述。
其中,第一部件101发送第三响应信息有多种实现方式,包括但不限于以下实施方式:
实施方式1,第一部件101可以向第二部件102发送第三响应信息,第二部件102接收第三响应信息,并转发至密钥工具200。在该实施方式中,第一部件101不需要和密钥工具交互,可以通过第二部件102向密钥工具200反馈共享密钥的灌装结果。
实施方式2,第一部件101可以向第二部件102发送第三响应信息,第二部件102接收第三响应信息,可以对第三响应信息进行相应的处理。
情况1,第二部件102对第三响应信息进行处理的过程可以是:对第三响应信息的协议格式进行转化,以使处理后的第三响应信息的协议格式适配于第二部件102和密钥工具200之间的通信协议。
情况2,第二部件102对第三响应信息进行处理的过程可以是:根据第三响应信息,确定第一部件101的密钥灌装情况。例如,根据第三响应信息包含的标识信息验证第一部件101的共享密钥是否灌装成功。进而,第二部件102可以将车辆100中所有部件的共享密钥的灌装结果,发送至密钥工具200。如此,可以减少密钥工具200的计算量,使得密钥工具200可以快速了解共享密钥的灌装情况。
实施方式3,第一部件101可以直接向密钥工具200发送第三响应信息。在该实施方式中,第一部件101和密钥工具200交互,密钥工具200可以快速了解第一部件101的共享密钥的灌装情况。
在图7所示的实施例中,通过第二部件102为第一部件101灌装共享密钥,使得第一部件101不需要从密钥工具200处获取共享密钥灌装指令,可以有效提升车内部件的共享密钥的灌装效率。
可以理解的是,在一种可能的实施例中,第二部件102可以接收来自密钥工具200的第二指令之后,也可以根据初始密钥和第二信息,得到共享密钥,实现第二部件102的共 享密钥灌装。其中,“第二部件102根据初始密钥和第二信息,得到共享密钥”的实施方式与“第一部件101根据初始密钥和第二信息,得到共享密钥”的实施方式类似,请参见前文相关“第一部件101根据初始密钥和第二信息,得到共享密钥”的实施方式的描述。
可以理解的是,在一种可能的实施例中,第二部件102可以接收来自密钥工具200的第一指令,第一指令包括与初始密钥相关联的第一信息;第二部件可以根据第一指令,获取初始密钥。其中,“第二部件102根据第一指令,得到初始密钥”的实施方式与“第一部件101第二部件102根据第一指令,得到初始密钥”的实施方式类似,请参见前文相关的描述,只需将“第一部件101”替换为“第二部件102”即可。
在一种可选的设计中,密钥工具200在向第二部件102发送第一指令之前,还可以向第二部件102发送密钥灌装指令,该密钥灌装指令可以用于触发初始密钥的灌装。
为了保证车内部件的共享密钥或初始密钥的正常使用,本申请实施例中还提供了一种密钥检测方法,下面结合具体的示例对本申请实施例提供的密钥检测方法进行详细说明。
实施例1。
请参见图8,图8是本申请实施例提供的一种密钥检测方法所对应的流程示意图。该方法的执行主体以图1所示的密钥工具200和第一部件101为例。在图8中密钥工具200具备上述功能3(即通过随机数检测密钥的功能),应理解,在这种方式下,密钥工具200可以为密钥检测工具。该密钥检测方法包括:
S801、密钥工具200发送第四指令。相应的,第一部件101接收第四指令。
其中,第四指令用于检测车辆100的共享密钥是否存在异常。共享密钥至少用于加密包含地理位置信息的数据。其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
在一种可能的实施方式中,第四指令包括第三随机数。
可选的,密钥工具200在发送第四指令之前,还可以执行S800,根据第一部件101的标识或者第一部件101关联的车辆的标识,对第一部件101的身份进行验证。
示例性的,密钥工具200可以通过传输层安全(transport layer security,TLS)协议等具有身份认证能力的安全协议对第一部件101的身份进行验证。
S802、第一部件101根据第三随机数和共享密钥,确定第一校验值。
示例性的,第一部件101可以根据如下公式确定第一校验值C:
C=ENC(Rand3,KEK);
其中,ENC为任意对称加密算法(例如SM4)或基于对称加密算法的消息认证码(例如基于密码的消息认证码(cipher-based message authentication code,CMAC)),Rand3为第三随机数,KEK为车辆的共享密钥。其中,对称加密算法、基于对称加密算法的消息认证码和密钥派生函数,可以参见前文对对称加密算法、基于对称加密算法的消息认证码和密钥派生函数的描述,此处不再赘述。
S803、第一部件101发送第四响应信息。相应的,密钥工具200接收第四响应信息。
其中,第四响应信息包括第一校验值,第一校验值可以用于确定共享密钥与密钥工具200的本地共享密钥是否一致。
S804、密钥工具200根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致。
在一种可能的实施方式中,密钥工具200根据第一校验值,确定车辆的共享密钥与对 应于车辆的本地共享密钥是否一致的过程可以是:密钥工具200根据本地共享密钥和第三随机数,计算第二校验值,将第一校验值和第二校验值相比较,若第一校验值和第二校验值一致,则密钥工具200的存储的该车辆的本地共享密钥与车辆当前的共享密钥一致;若第一校验值和第二校验值不一致,则密钥工具200的存储的该车辆的本地共享密钥与车辆当前的共享密钥不一致。在该实施方式1中,密钥工具200通过比较其确定的第二校验值和第一部件确定的第一校验值的一致性来进行共享密钥的异常检测,可以提升密钥异常检测的准确性。
示例性的,密钥工具200可以通过如下公式得到第二校验值:
C’=ENC(Rand3,KEK1);
其中,C’为第二校验值,ENC为任意对称加密算法(如SM4)或基于对称加密算法的消息认证码(如CMAC),Rand3为第三随机数,KEK1为本地共享密钥。其中,对称加密算法、基于对称加密算法的消息认证码和密钥派生函数,可以参见前文对对称加密算法、基于对称加密算法的消息认证码和密钥派生函数的描述,此处不再赘述。
在另一种可能的实施方式中,密钥工具200根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致的过程可以是:密钥工具200可以根据接收到的第一校验值与本地共享密钥,确定第四随机数,然后比较该第四随机数与第三随机数是否一致,若第三随机数和第四随机数一致,则密钥工具200的存储的该车辆的本地共享密钥与车辆当前的共享密钥一致;若第三随机数和第四随机数不一致,则密钥工具200的存储的该车辆的本地共享密钥与车辆当前的共享密钥不一致。在实施方式2中,密钥工具200通过比较其根据第一校验值确定的第四随机数与第三随机数的一致性来进行共享密钥的异常检测,可以提升密钥异常检测的准确性。
其中,密钥工具200获取本地共享密钥有多种实现方式,包括但不限于以下方式:
方式1,获取车辆标识或第一部件101的标识;根据车辆标识或第一部件101的标识,查询对应于车辆的初始密钥和用于生成本地共享密钥的密钥材料;根据初始密钥和密钥材料生成本地共享密钥。如此,使得密钥检测工具的本地共享密钥具备较高的实时性。
方式2,获取车辆标识或第一部件101的标识;根据车辆标识或第一部件101的标识,查询本地共享密钥。如此,使得密钥检测工具可以快速获取本地共享密钥,进而提升密钥检测的效率。
S805、若车辆的共享密钥与本地共享密钥不一致,密钥工具200上报异常信息。
在一种可能的实施方式中,密钥工具200可以向资质管理机构上报异常信息,或者向密钥管理系统上报异常信息。其中,资质管理机构为具备测绘资质和/或依法从事测绘活动的机构。
在图8所示的实施例中,密钥工具200通过和车辆中的第一部件101通信交互,实现对车辆的共享密钥的异常检测,使得对车辆的共享密钥的异常检测更准确。
在一种可能的实施例中,当共享密钥是通过第二部件102为第一部件101灌装时,密钥工具200对车辆的密钥进行检测时,可以是对第一部件101的初始密钥进行检测,或者可以是对第二部件102的初始密钥进行检测。
实施例2。
密钥工具200具备上述功能4(即通过通信信息密文检测密钥的功能),应理解,在这种方式下,密钥工具200可以为密钥检测工具。在这种方式下,本申请实施例提供了另一 种密钥检测方法,该方法包括以下步骤:
A、密钥工具200通过获取车辆的第一部件101的通信信息密文。
其中,该通信信息密文包括通过车辆100的共享密钥加密第一信息得到的信息,第一信息包括地理位置信息。其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
B、密钥工具200根据其所存储的车辆100的本地共享密钥和通信信息密文,确定车辆100当前使用的共享密钥与该本地共享密钥是否一致。
其中,车辆100的共享密钥可以是车辆100中所有部件的共享密钥,也可以是车辆100中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
在一种可能的实施方式中,密钥工具200可以获取该车辆的本地共享密钥,利用该车辆的本地共享密钥对该通信信息密文进行解密,得到解密后的通信信息,并判断该通信信息是否异常,若该通信信息异常,则确定车辆的共享密钥与车辆的本地共享密钥不一致;若该通信信息无异常,则确定车辆的共享密钥与车辆的本地共享密钥一致。
示例性的,通信信息以地理位置信息为例,若当前待检测车辆的所处位置为地理位置1,而密钥工具200对获取到的通信信息密文解密得到的地理位置信息为地理位置2,并且地理位置1与地理位置2不匹配,则确定待检测车辆的共享密钥与密钥工具200的本地共享密钥不一致,上报异常信息。其中,地理位置1和地理位置2不匹配有多种情况,可以是地理位置1和地理位置2的经纬度数据不匹配,或者可以是地理位置1和地理位置2的高程数据不匹配。
又示例性的,通信信息以地理位置信息为例,密钥工具200对获取到的通信信息密文解密得到的地理位置信息为地理位置2,地理位置2的经纬度数据范围超出了预设阈值范围,则确定待检测车辆的共享密钥与密钥工具200的本地共享密钥不一致,上报异常信息。
又示例性的,通信信息以地理位置信息为例,密钥工具200对获取到的通信信息密文解密得到的地理位置信息为地理位置2,地理位置2的高程数据范围超出了预设阈值范围,则确定待检测车辆的共享密钥与密钥工具200的本地共享密钥不一致,上报异常信息。若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
其中,密钥工具200可以向资质管理机构上报异常信息,或者向密钥管理系统上报异常信息,本申请实施例不作具体限制。
在该实施例中,密钥检测工具可以自动获取第一部件101的通信信息密文,并根据该通信信息密文,实现对车辆的共享密钥的异常检测,有助于及时发现车辆的密钥异常。
在一种可能的实施例中,当共享密钥是通过第二部件102为第一部件101灌装时,密钥工具200对车辆的密钥进行检测时,可以是对第一部件101的初始密钥进行检测,或者可以是对第二部件102的初始密钥进行检测。
需要说明的是,上述实施例中的初始密钥不同于认证密钥,认证密钥来自与车辆相关联的OEM。在一些可能的实施例中,第一部件101还可以根据认证密钥,确定至少一个功能密钥,其中,至少一个功能密钥对应的至少一个业务功能。
如此,第一部件还可以根据来自OEM的认证密钥,确定用于实现第一部件的业务功能的功能密钥,使得第一部件的业务功能可以安全进行,从而有效提升车辆的数据安全性。此外,通过该设计,与地理位置信息相关的业务可以基于来自第一密钥工具的初始密钥以及由该初始密钥生成的共享密钥实现,而与地理位置信息无关的业务可以基于来自OEM 的认证密钥以及由该认证密钥生成的功能密钥实现,从而可以实现与地理位置信息相关的业务和与地理位置信息无关的业务使用不同的密钥,进一步保证了与地理位置信息相关的数据传输的安全性。
以上介绍了本申请实施例提供的密钥传输方法和密钥检测方法,下面介绍本申请实施例涉及的装置。
图9示出了本申请实施例提供的一种控制装置的一种可能的结构示意图,该装置900可以用于执行上述第一部件91的功能。
示例性的,该装置900包括:
收发模块901,用于接收来自第一密钥工具的第一指令,第一指令包括与初始密钥相关联的第一信息;
处理模块902,用于根据第一指令,获取初始密钥;其中,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
应理解,初始密钥与车辆相关联的原始设备制造商OEM无关,或者与车辆100相关联的部件供应商和OEM都无关,或者与无导航电子地图制作资质的OEM无关(这里的OEM可以关联于车辆100),即初始密钥的整个传输过程无需与车辆相关联的OEM或无需无导航电子地图制作资质的OEM参与,使得该初始密钥对OEM或者对无导航电子地图制作资质的OEM不可见,可以进一步提升密钥传输的安全性。如此,与地理位置信息相关的业务可以基于来自第一密钥工具的初始密钥以及由该初始密钥生成的共享密钥实现,而与地理位置信息无关的业务可以基于来自OEM的认证密钥以及由该认证密钥生成的功能密钥实现,从而可以实现与地理位置信息相关的业务和与地理位置信息无关的业务使用不同的密钥,进一步保证了与地理位置信息相关的数据传输的安全性。
在一种可能的实施方式中,初始密钥不同于认证密钥,认证密钥来自与车辆相关联的OEM,处理模块902还可以用于:根据认证密钥,确定至少一个功能密钥,其中,至少一个功能密钥对应第一部件的至少一个业务功能。
上述第一信息有多种实现方式,包括但不限于以下方式:
方式1,第一信息包括第一密文,第一密文包括通过第一部件的第一公钥对初始密钥加密得到的信息。相应的,处理模块902还用于:根据第一部件的第一私钥对第一密文进行解密,获取初始密钥;其中,第一私钥对应于第一公钥。
方式2,第一信息包括初始密钥。相应的,处理模块902还用于:通过有线连接的方式,根据第一指令,获取初始密钥。
在一种可能的实施方式中,收发模块901还用于:向第一密钥工具发送第一响应信息,第一响应信息包括初始密钥的灌装结果。其中,初始密钥的灌装结果可以用于指示初始密钥灌装成功或初始密钥灌装失败。
在一种可能的实施方式中,初始密钥的灌装结果可以包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。在该实施方式中,初始密钥的灌装结 果包括第一标识和/或第三密文,使得第一密钥工具可以根据第一标识和/或第三密文,确定初始密钥是否灌装成功。
在一种可能的实施方式中,初始密钥的灌装结果可以包括第二标识,第二标识可以用于指示初始密钥灌装失败。
在一种可能的实施方式中,初始密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
在一种可能的实施方式中,收发模块901还用于:接收来自第一密钥工具或者来自第二密钥工具的第二指令,第二指令包括与共享密钥相关联的第二信息;处理模块902还用于:根据初始密钥和第二信息,得到共享密钥。其中,第二指令可以用于为第一部件灌装共享密钥。
在一种可能的实施方式中,第一密钥工具和第二密钥工具可以对应于不同的密钥灌装环境。具体的示例和有益效果请参见前文对第一密钥工具和第二密钥工具的介绍。
在另一种可能的实施方式中,第一密钥工具和第二密钥工具还可以对应车内不同的部件。具体的示例和有益效果请参见前文对第一密钥工具和第二密钥工具的介绍。
在另一种可能的实施方式中,第一密钥工具和第二密钥工具还可以对应不同的部件供应商。具体的示例和有益效果请参见前文对第一密钥工具和第二密钥工具的介绍。
需要说明的是,处理模块902根据初始密钥和第二信息,得到共享密钥的实施方式有多种,包括但不限于以下方式:
方式1,处理模块902基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第二信息,得到共享密钥。
其中,对对称加密算法、基于对称加密算法的消息认证码和密钥派生函数的具体描述可以参见前文对对称加密算法、基于对称加密算法的消息认证码和密钥派生函数的描述,此处不再赘述。
方式2,第二信息包括通过初始密钥对共享密钥加密得到的信息,进而第一部件可以根据初始密钥和第二信息,得到共享密钥。例如,通过初始密钥对第二信息解密,得到共享密钥。
在一种可能的实施方式中,上述第二部件至少用于分发来自第一密钥工具的密钥信息。如此,第一密钥工具只需要和第二部件通信,无需和车辆中的其他部件通信交互,有效提升车辆中所有部件的共享密钥的灌装效率。
相应的,在一种可能的实施方式中,处理模块902还用于基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第三信息,得到共享密钥。在该实施方式中,第一部件的共享密钥不会被其他设备轻易获取,使得共享密钥的安全性较高。
在另一种可能的实施方式中,第三信息包括通过初始密钥对共享密钥加密得到的信息,处理模块902还用于通过初始密钥对第三信息解密,得到共享密钥。在该实施方式中,第一部件获取共享密钥的效率较高。
在一种可能的实施方式中,收发模块901还可以响应于第二指令,发送第二响应信息,第二响应信息包括共享密钥的灌装结果。其中,第一部件可以将第二响应信息发送至第一密钥工具或者第二密钥工具,本申请实施例不作具体的限制。
在一种可能的实施方式中,收发模块901还可以响应于第三指令,发送第三响应信息, 第三响应信息包括共享密钥的灌装结果。其中,第一部件可以将第三响应信息发送至第一密钥工具或者第二部件,本申请实施例不作具体的限制。
在一种可能的实施方式中,共享密钥的灌装结果可以包括第三标识,第三标识用于指示共享密钥的灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数或第三指令包括的第二随机数加密得到的信息。
在一种可能的实施方式中,共享密钥的灌装结果包括第四标识,第四标识可以用于指示共享密钥灌装失败。在该实施方式中,共享密钥的灌装结果包括第二标识,使得第一密钥工具可以根据第二标识,确定共享密钥灌装失败。
在一种可能的实施方式中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。如此,使得第一密钥工具或第二密钥工具可以监测车辆和/或第一部件的共享密钥的灌装情况。
在一种可能的实施方式中,收发模块901还用于接收来自第一密钥工具或来自密钥检测工具的第四指令,第四指令包括第三随机数,第四指令用于确定上述共享密钥与第一密钥工具或密钥检测工具的本地共享密钥是否一致;处理模块902还用于根据第三随机数和共享密钥,确定第一校验值;收发模块901还用于发送第四响应信息,第四响应信息包括第一校验值。
在一种可能的实施方式中,收发模块901还用于接收第一密钥工具或来自密钥检测工具的第五指令,第五指令包括第五随机数,第五指令可以用于检测第一部件的初始密钥是否存在异常;处理模块902还用于根据第五随机数和初始密钥,确定第三校验值;收发模块901还用于发送第五响应信息,第五响应信息包括第三校验值。
应理解,图9所示的控制装置900可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
图10示出了本申请实施例提供的另一种控制装置可能的结构示意图,该装置1000可以用于执行上述第二部件102的功能。
处理模块1001,用于获取共享密钥灌装指令,共享密钥灌装指令包括与共享密钥相关联的信息;所述共享密钥至少用于加密包含地理位置信息的数据;
收发模块1002,用于发送共享密钥灌装指令。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
其中,上述获取共享密钥灌装指令有多种实现方式,包括但不限于以下实施方式:
实施方式一,共享密钥灌装指令可以包括第二指令,例如共享密钥灌装指令为第二指令,又如共享密钥灌装指令除了包括第二指令还包括其他信息,其中第二指令包括与该共享密钥相关联的第二信息。上述第二信息的相关描述请参见前文,这里不再赘述。
示例性的,处理模块1001获取共享密钥灌装指令可以是:收发模块1002可以接收来自密钥工具200的第二指令,将第二指令作为该共享密钥灌装指令。
实施方式二,共享密钥灌装指令包括第三指令,例如共享密钥灌装指令为第三指令,又如共享密钥灌装指令除了包括第三指令还包括其他信息。其中,该第三指令包括与该共享密钥相关联的第三信息。其中,该第三指令有多种实现方式,包括但不限于以下实施方 式:
方式1:收发模块1002可以接收来自密钥工具200的第二指令,处理模块1001通过对该第二指令进行处理后得到第三指令。
示例性的,处理模块1001可以对第二指令的通信协议格式进行转换,得到第三指令;或者,处理模块1001可以对第二指令包括的第二信息的通信协议格式进行转换,得到第三指令包括的第三信息。
相应的,第二部件可以接收来自第一密钥工具或第二密钥工具发送的第二指令,再通过处理第二指令,得到第三指令。其中第二指令包括与共享密钥相关联的第二信息,该第二信息有多种实现方式,具体可以参见前述实施方式一中第二信息的实现方式,这里不再赘述。
方式2:处理模块1001生成第三指令。
示例性地,处理模块1001可以是在满足预设条件或接收到特定指令时,生成上述第三指令。
其中,“特定指令”可以是任意指令,第二部件可以将该指令作为触发信号。比如专门用于生成共享密钥灌装指令的诊断命令,也可以是其他功能的诊断命令,比如部件刷写、部件复位等指令。在一种可选的设计中,特定指令可以来自诊断仪、整车电检测试设备、云端、车内其他部件(如TBOX、网关GW)。
其中,该预设条件包括但不限于第二部件关联的设备启动、到达特定时间。
可以理解的是,“第二部件关联的设备启动”可以是第二部件启动或者第二部件所在的设备启动。例如,第二部件是A,则A启动或A所在的设备启动时,A可以生成上述第三指令。又例如,第二部件是B,则B启动或B所在的设备启动时,B可以生成上述第三指令。
可以理解的是,“到达特定时间”可以是到达设定的密钥灌装时间(例如,每月1号0点),或者,到达距离密钥过期的预设时间(例如密钥过期前一天)。
相应的,在方式2中,第三信息有多种实现方式。例如,处理模块1001可以生成密钥材料(比如密钥材料是随机生成的或者按照一定规则生成的),并将密钥材料作为第三指令中的第三信息;又例如,处理模块1001可以生成共享密钥(比如共享密钥是随机生成的或者按照一定规则生成的),根据初始密钥和共享密钥,得到共享密钥的密文,将该密文作为第三信息。
在一种可能的设计中,收发模块1002可以接收来自第一密钥工具或第二密钥工具的第二指令,该第二指令包括与共享密钥相关联的第二信息;处理模块1001根据初始密钥和第二信息,得到共享密钥。其中,第二指令可以用于为第二部件灌装共享密钥。
需要说明的是,处理模块1001根据初始密钥和第二信息,得到共享密钥的实施方式有多种,包括但不限于以下方式:
方式1,处理模块1001基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据初始密钥和第二信息,得到共享密钥。
方式2,第二信息包括通过初始密钥对共享密钥加密得到的信息,进而处理模块1001可以根据初始密钥和第二信息,得到共享密钥。例如,通过初始密钥对第二信息解密,得到共享密钥。
在又一种可能的设计中,处理模块1001可以直接生成共享密钥。
在一种可能的设计中,处理模块1001还可以响应于第二指令,发送第二响应信息,第二响应信息包括共享密钥的灌装结果。其中,该共享密钥的灌装结果可以用于指示共享密钥灌装成功或共享密钥灌装失败。
情况1,共享密钥的灌装结果可以包括第三标识,第三标识用于指示共享密钥的灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数或第三指令包括的第二随机数加密得到的信息。
情况2,共享密钥的灌装结果包括第四标识,第四标识可以用于指示共享密钥灌装失败。在该设计中,共享密钥的灌装结果包括第四标识,使得第一密钥工具可以根据第四标识,确定共享密钥灌装失败。
可选的,共享密钥的灌装结果还可以包括车辆的标识和/或第二部件102的标识。
在一种可能的设计中,处理模块1001可以接收来自第一密钥工具的第一指令,第一指令包括与初始密钥相关联的第一信息;处理模块1001可以根据第一指令,获取初始密钥;其中,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据。其中,第一信息的实现方式,请参见前文相关的描述。
在一种可能的设计中,处理模块1001还可以向第一密钥工具发送第一响应信息,第一响应信息包括初始密钥的灌装结果。其中,初始密钥的灌装结果可以用于指示第二部件的初始密钥灌装成功或初始密钥灌装失败。
情况1,初始密钥的灌装结果包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。
情况2,初始密钥的灌装结果可以包括第二标识,第二标识可以用于指示初始密钥灌装失败。
可选的,初始密钥的灌装结果还可以包括车辆的标识和/或第二部件的标识。
在一种可能的设计中,收发模块1002还可以接收来自第一密钥工具或来自密钥检测工具的第四指令,第四指令包括第三随机数;处理模块1001根据第三随机数和共享密钥,确定第一校验值,第一校验值用于确定共享密钥与第一密钥工具或密钥检测工具的本地共享密钥是否一致;收发模块1002发送第四响应信息,第四响应信息包括第一校验值。其中,第四指令可以用于检测第二部件的共享密钥是否存在异常。
在一种可能的设计中,收发模块1002还用于接收来自第一密钥工具或密钥检测工具的第五指令,第五指令包括第五随机数,其中,第五指令可以用于检测第二部件的初始密钥是否存在异常;处理模块1001还用于根据第五随机数和初始密钥,确定第三校验值;收发模块1002还用于发送第五响应信息,第五响应信息包括第三校验值。
应理解,图10所示的控制装置1000可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
图11示出了本申请上述实施例提供的一种密钥传输装置的可能的结构示意图,该密钥传输装置1100可以为第一密钥工具。
示例性的,该装置1100包括:
处理模块1101,用于确定车辆的初始密钥,初始密钥至少用于生成共享密钥,共享密钥至少用于加密包含地理位置信息的数据;
收发模块1102,用于向车辆的第一部件发送第一指令,第一指令包括与初始密钥相关 联的第一信息。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
在一种可能的实施方式中,初始密钥与原始设备制造商OEM无关,或者与不具备无导航电子地图制作资质的OEM无关,这里的OEM是与车辆相关联的OEM。
在一种可能的设计中,初始密钥与具有导航电子地图制作资质的机构有关,这样可以保证初始密钥的安全性,进而保证地理位置信息传输的安全性。
在一种可能的实施方式中,初始密钥不同于认证密钥,认证密钥来自与车辆相关联的原始设备制造商OEM。其中,认证密钥至少用于认证车辆的功能密钥。认证密钥例如可以为MEK、PMEK、根密钥等,本申请实施例不作具体的限定。
在一种可能的实施方式中,第一信息包括第一密文,第一密文包括通过第一公钥对初始密钥加密得到的信息,第一公钥来自第一部件。
在一种可能的实施方式中,第一信息包括初始密钥,收发模块1102还用于通过有线连接的方式,向第一部件发送初始密钥。
在一种可能的实施方式中,收发模块1102还用于生成第二公钥和第二私钥;向密钥管理系统发送请求信息,请求信息用于请求初始密钥,请求信息包括第二公钥;接收来自密钥管理系统的第二密文;处理模块1101还用于根据第二密文和第二私钥,确定初始密钥。
在另一种可能的实施方式中,收发模块1102还用于:向密钥管理系统发送请求信息,该请求信息可以用于请求初始密钥,该请求信息包括预配置的密钥;接收第二密文,第二密文包含经由预配置的密钥对初始密钥进行加密的信息;根据第二密文和预配置的密钥,确定初始密钥。
在一种可能的实施方式中,收发模块1102还用于接收来自第一部件的第一响应信息,第一响应信息包括初始密钥的灌装结果。
其中,若初始密钥的灌装结果指示初始密钥灌装失败,收发模块1102还用于重新发送第一指令。在该实施方式中,可以有效提升初始密钥灌装成功的可能性。
在一种可能的实施方式中,初始密钥的灌装结果包括第二标识,第二标识用于指示初始密钥灌装失败。
在一种可能的实施方式中,初始密钥的灌装结果可以包括:第一标识,第一标识用于指示初始密钥灌装成功;和/或,第三密文,第三密文包括通过初始密钥或初始密钥的派生密钥对第一指令包括的第一随机数加密得到的信息。
相应的,当初始密钥的灌装结果包括第三密文时,处理模块1101还用于根据第三密文,确定初始密钥是否灌装成功。在该实施方式中,通过第三密文验证初始密钥是否灌装成功,有助于第一密钥工具准确监测初始密钥的灌装情况。
在一种可能的实施方式中,初始密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
在一种可能的实施方式中,若初始密钥的灌装结果指示初始密钥灌装成功,收发模块1102还用于向第一部件发送第二指令,第二指令包括与共享密钥相关联的第二信息。
在一种可能的实施方式中,处理模块1101还用于生成共享密钥,并根据初始密钥对共 享密钥进行加密,得到第二信息。
在一种可能的实施方式中,收发模块1102还用于接收来自第一部件的第二响应信息,第二响应信息包括共享密钥的灌装结果。
在一种可能的实施方式中,上述共享密钥的灌装结果可以包括:第三标识,第三标识用于指示共享密钥灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数加密得到的信息。
相应的,当共享密钥的灌装结果包括第四密文时,处理模块1101还用于根据第二信息和第四密文,确定共享密钥是否灌装成功。
在一种可能的实施方式中,共享密钥的灌装结果还可以包括第四标识,第四标识用于指示共享密钥灌装失败。
在一种可能的实施方式中,若共享密钥的灌装结果指示共享密钥灌装失败,收发模块1102还用于重新发送第二指令。
在一种可能的实施方式中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
在一种可能的设计中,收发模块1102还用于向车辆的第一部件发送第四指令,第四指令包括第三随机数;接收来自第一部件的第四响应信息;第四响应信息中包括第一校验值,第一校验值与第三随机数和车辆的共享密钥相关联,共享密钥至少用于加密包含地理位置信息的数据;根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致;若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
在一种可能的设计中,收发模块1102还用于向车辆的第一部件发送第五指令,第四指令包括第五随机数;接收来自第一部件的第五响应信息;第五响应信息中包括第三校验值,第三校验值与第五随机数和车辆的初始密钥相关联,初始密钥至少用于生成共享密钥;根据第三校验值,确定车辆的初始密钥与对应于车辆的本地初始密钥是否一致;若车辆的初始密钥与本地共享密钥不一致,上报异常信息。
应理解,图11所示的密钥传输装置1100可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
图12示出了本申请上述实施例提供的另一种密钥传输装置的可能的结构示意图,该密钥传输装置1200可以为第二密钥工具。
示例性的,该装置1200包括:
处理模块1201,用于确定第二指令;
收发模块1202,用于向车辆中的第一部件发送第二指令,第二指令包括与共享密钥相关联的第二信息,共享密钥至少用于加密包含地理位置信息的数据;其中,第二指令用于为第一部件灌装共享密钥。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
需要说明的是,上述第二信息有多种实施方式,包括但不限于以下实施方式:
方式1,处理模块1201机生成共享密钥,并根据初始密钥和共享密钥,得到第二信息。例如,第二密钥工具可以根据初始密钥对共享密钥进行加密,得到第二信息。
方式2,处理模块1201可以生成密钥材料,并将密钥材料作为第二信息。
示例性的,处理模块1201可以随机生成密钥材料或者按照一定规则生成密钥材料。
方式3,收发模块1202可以向第一密钥工具请求共享密钥,处理模块1201根据初始密钥和共享密钥,得到第二信息。例如,处理模块1201根据初始密钥对共享密钥进行加密,得到第二信息。
在一种可能的实施方式中,收发模块1202还可以接收来自第一部件的第二响应信息,第二响应信息包括共享密钥的灌装结果。
在一种可能的实施方式中,共享密钥的灌装结果包括:第三标识,第三标识用于指示共享密钥灌装成功;和/或,第四密文,第四密文包括通过共享密钥或共享密钥的派生密钥对第二指令包括的第二随机数加密得到的信息。
在一种可能的实施方式中,当共享密钥的灌装结果包括第四密文时,处理模块1201还可以根据第二信息和第四密文,确定共享密钥是否灌装成功。
在一种可能的实施方式中,若共享密钥的灌装结果指示共享密钥灌装失败,收发模块1202还可以:重新发送第二指令。
在一种可能的实施方式中,共享密钥的灌装结果包括第四标识,第四标识用于指示共享密钥灌装失败。
在一种可能的实施方式中,共享密钥的灌装结果还可以包括车辆的标识和/或第一部件的标识。
应理解,图12所示的密钥传输装置1200可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
图13示出了本申请上述实施例提供的一种密钥检测装置的可能的结构示意图。
示例性的,该装置1300包括:
收发模块1301,用于向车辆的第一部件发送第四指令,第四指令包括第三随机数;
收发模块1301,还用于接收来自第一部件的第四响应信息;第四响应信息中包括第一校验值,第一校验值与第三随机数和车辆的共享密钥相关联,共享密钥至少用于加密包含地理位置信息的数据;
处理模块1302,用于根据第一校验值,确定车辆的共享密钥与对应于车辆的本地共享密钥是否一致;
收发模块1301,还用于在车辆的共享密钥与本地共享密钥不一致时,上报异常信息。
其中,车辆的共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
在一种可能的设计中,处理模块1302可以用于:根据本地共享密钥和第三随机数,计算第二校验值,将第一校验值和第二校验值相比较,若第一校验值和第二校验值一致,则该车辆的本地共享密钥与车辆当前的共享密钥一致;若第一校验值和第二校验值不一致,则该车辆的本地共享密钥与车辆当前的共享密钥不一致。
其中,处理模块1302获取本地共享密钥有多种实现方式,包括但不限于以下方式:
方式1,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询对应于车辆的初始密钥和用于生成本地共享密钥的密钥材料;根据初始密钥和密钥材料生成 本地共享密钥。如此,使得密钥检测工具的本地共享密钥具备较高的实时性。
方式2,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询本地共享密钥。如此,使得密钥检测工具可以快速获取本地共享密钥,进而提升密钥检测的效率。
在一种可能的设计中,收发模块1301可以是向资质管理机构上报异常信息,或者向密钥管理系统上报异常信息。
在一种可能的实施方式中,密钥检测装置1300为密钥检测工具。
应理解,图13所示的密钥检测装置1300可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
图14示出了本申请上述实施例提供的另一种密钥检测装置的可能的结构示意图。
示例性的,该装置1400包括:
处理模块1401,用于获取车辆的第一部件的通信信息密文,通信信息密文包括通过车辆的共享密钥加密第一信息得到的信息,第一信息包括地理位置信息;
处理模块1401,还用于根据对应于车辆的本地共享密钥和通信信息密文,确定车辆的共享密钥与本地共享密钥是否一致;
收发模块1402,用于若车辆的共享密钥与本地共享密钥不一致,上报异常信息。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
在一种可能的设计中,处理模块1401可以利用本地共享密钥对通信信息密文进行解密,得到通信信息,判断该通信信息是否存在异常,若该通信信息存在异常,则确定该车辆使用的共享密钥与本地共享密钥不一致;若该通信信息不存在异常,则确定该车辆使用的共享密钥与本地共享密钥一致。
在一种可能的设计中,处理模块1401获取本地共享密钥有多种实现方式,包括但不限于以下方式:
方式1,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询对应于车辆的初始密钥和用于生成本地共享密钥的密钥材料;根据初始密钥和密钥材料生成本地共享密钥。如此,使得密钥检测工具的本地共享密钥具备较高的实时性。
方式2,获取车辆标识或第一部件的标识;根据车辆标识或第一部件的标识,查询本地共享密钥。如此,使得密钥检测工具可以快速获取本地共享密钥,进而提升密钥检测的效率。
在一种可能的设计中,收发模块1402还可以向资质管理机构上报异常信息,或者向密钥管理系统上报异常信息。
其中,共享密钥可以是车辆中所有部件的共享密钥,也可以是车辆中某个功能域关联的部件的共享密钥,本申请实施例不作限定。
其中,地理位置信息的数据可以参见前文对地理位置信息的数据的描述,此处不再赘述。
在一种可能的实施方式中,密钥检测装置1400为密钥检测工具。
应理解,图14所示的密钥检测装置1400可能的实施方式对应的有益效果,请参见前文的描述。这里不再赘述。
本申请实施例还提供了一种芯片系统,请参见图15,该芯片系统1500包括至少一个 处理器,当程序指令在至少一个处理器1501中执行时,使得上述图2-图8所示的方法实施例得以实现。
此外,该芯片系统还可以包括通信接口1503,通信接口用于输入或输出信息。进一步地,该芯片系统还可以包括存储器1502,该存储器1502通过通信接口1503耦合处理器,用于存储上述指令,以便处理器通过通信接口1503读取存储器中存储的指令。
应理解,本申请实施例中不限定上述处理器1501、存储器1502以及通信接口1503之间的连接介质。本申请实施例在图15中以存储器1502、处理器1501以及通信接口1503之间通过通信总线1504连接,总线在图15中以粗线表示,其它部件之间的连接方式,仅是示意性说明,并不作为限定。所述总线可以包括地址总线、数据总线、控制总线等。为了便于表示,图15中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线等。
本申请实施例还提供了一种车辆,该车辆包括上述第一方面或第一方面的任意可能的设计中涉及的第一部件,和/或,上述第二方面或第二方面的任意可能的设计中涉及的第二部件。
本申请实施例还提供了一种包括指令的计算机程序产品,当计算机程序产品在上述装置上运行时,可以执行如上述实施例中的密钥传输方法,或者,执行如上述实施例中的密钥检测的方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当计算机程序被运行时,可以实现如上述实施例中的密钥传输方法,或者,实现如上述实施例中的密钥检测方法。上述各实施例可以相互结合以实现不同的技术效果。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他 可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的保护范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (56)

  1. 一种密钥传输方法,其特征在于,应用于车辆中的第一部件,所述方法包括:
    接收来自第一密钥工具的第一指令,所述第一指令包括与初始密钥相关联的第一信息;
    根据所述第一指令,获取所述初始密钥;
    其中,所述初始密钥至少用于生成共享密钥,所述共享密钥至少用于加密包含地理位置信息的数据。
  2. 根据权利要求1所述的方法,其特征在于,所述初始密钥与原始设备制造商OEM无关,或与不具备导航电子地图制作资质的原始设备制造商OEM无关,其中,所述OEM关联于所述车辆。
  3. 根据权利要求1或2所述的方法,其特征在于,所述初始密钥不同于认证密钥,所述认证密钥来自与所述车辆相关联的原始设备制造商OEM,
    所述方法还包括:
    根据所述认证密钥,确定至少一个功能密钥,其中,所述至少一个功能密钥对应所述第一部件的至少一个业务功能。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述第一信息包括第一密文,所述第一密文包括通过所述第一部件的第一公钥对所述初始密钥加密得到的信息;所述根据所述第一指令,获取所述初始密钥,包括:
    根据所述第一部件的第一私钥对所述第一密文进行解密,获取所述初始密钥;
    其中,所述第一私钥对应于所述第一公钥。
  5. 根据权利要求1-3任一项所述的方法,其特征在于,所述第一信息包括所述初始密钥,所述根据所述第一指令,获取所述初始密钥,包括:
    通过有线连接的方式,根据所述第一指令,获取所述初始密钥。
  6. 根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
    向所述第一密钥工具发送第一响应信息,所述第一响应信息包括所述初始密钥的灌装结果。
  7. 根据权利要求6所述的方法,其特征在于,所述初始密钥的灌装结果包括:
    第一标识,所述第一标识用于指示所述初始密钥灌装成功;
    和/或,第三密文,所述第三密文包括通过所述初始密钥或所述初始密钥的派生密钥对所述第一指令包括的第一随机数加密得到的信息。
  8. 根据权利要求6所述的方法,其特征在于,所述灌装结果包括第二标识,所述第二标识用于指示所述初始密钥灌装失败。
  9. 根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
    接收来自所述第一密钥工具或者来自第二密钥工具的第二指令,所述第二指令包括与所述共享密钥相关联的第二信息;
    根据所述初始密钥和所述第二信息,得到所述共享密钥;
    其中,所述第一密钥工具和第二密钥工具对应于不同的密钥灌装环境。
  10. 根据权利要求9所述的方法,其特征在于,所述根据所述初始密钥和所述第二信息,得到所述共享密钥,包括:
    基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据所述 初始密钥和所述第二信息,得到所述共享密钥。
  11. 根据权利要求9所述的方法,其特征在于,所述第二信息包括通过所述初始密钥对所述共享密钥加密得到的信息,所述根据所述初始密钥和所述第二信息,得到所述共享密钥,包括:
    通过所述初始密钥对所述第二信息解密,得到所述共享密钥。
  12. 根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
    接收来自第二部件的第三指令,所述第三指令包括与所述共享密钥相关联的第三信息;
    根据所述初始密钥和所述第三信息,得到所述共享密钥;
    其中,所述第二部件至少用于分发来自密钥工具的密钥信息。
  13. 根据权利要求12所述的方法,其特征在于,所述根据所述初始密钥和所述第三信息,得到所述共享密钥,包括:
    基于对称加密算法或基于对称加密算法的消息认证码或基于密钥派生函数,根据所述初始密钥和所述第三信息,得到所述共享密钥。
  14. 根据权利要求12所述的方法,其特征在于,所述第三信息包括通过所述初始密钥对所述共享密钥加密得到的信息,所述根据所述初始密钥和所述第三信息,得到所述共享密钥,包括:
    通过所述初始密钥对所述第三信息解密,得到所述共享密钥。
  15. 根据权利要求9-11任一项所述的方法,其特征在于,所述方法还包括:
    响应于所述第二指令,发送第二响应信息,所述第二响应信息包括所述共享密钥的灌装结果。
  16. 根据权利要求12-14任一项所述的方法,其特征在于,所述方法还包括:
    响应于所述第三指令,发送第三响应信息,所述第三响应信息包括所述共享密钥的灌装结果。
  17. 根据权利要求15或16所述的方法,其特征在于,所述共享密钥的灌装结果包括:
    第三标识,所述第三标识用于指示所述共享密钥的灌装成功;
    和/或,第四密文,所述第四密文包括通过所述共享密钥或所述共享密钥的派生密钥对所述第二指令包括的第二随机数或所述第三指令包括的第二随机数加密得到的信息。
  18. 根据权利要求15或16所述的方法,其特征在于,所述共享密钥的灌装结果包括第四标识,所述第四标识用于指示所述共享密钥灌装失败。
  19. 根据权利要求1-18任一项所述的方法,其特征在于,所述方法还包括:
    接收来自所述第一密钥工具或来自密钥检测工具的第四指令,所述第四指令包括第三随机数,所述第四指令可以用于检测所述共享密钥是否存在异常;
    根据所述第三随机数和所述共享密钥,确定第一校验值;
    发送第四响应信息,所述第四响应信息包括所述第一校验值。
  20. 一种密钥传输方法,其特征在于,应用于车辆中的第二部件,所述方法包括:
    获取共享密钥灌装指令,所述共享密钥灌装指令用于为所述车辆中的第一部件灌装共享密钥;其中,所述共享密钥至少用于加密包含地理位置信息的数据;
    向所述第一部件发送所述共享密钥灌装指令。
  21. 根据权利要求20所述的方法,其特征在于,所述获取共享密钥灌装指令包括:
    接收来自第一密钥工具或第二密钥工具的第二指令,所述第二指令包括与所述共享密 钥相关联的第二信息;
    所述共享密钥灌装指令包含所述第二指令。
  22. 根据权利要求20所述的方法,其特征在于,所述获取共享密钥灌装指令包括:
    接收来自第一密钥工具或第二密钥工具的第二指令,所述第二指令包括与所述共享密钥相关联的第二信息;
    对第二指令进行处理,获取第三指令,所述第三指令包括与所述共享密钥相关联的第三信息;
    所述共享密钥灌装指令包含所述第三指令。
  23. 根据权利要求20所述的方法,其特征在于,所述获取共享密钥灌装指令包括:
    生成第三指令;所述第三指令包括与所述共享密钥相关联的第三信息;
    所述共享密钥灌装指令包含所述第三指令。
  24. 根据权利要求23所述的方法,其特征在于,所述生成第三指令,包括:
    生成密钥材料,其中,所述密钥材料用于生成所述共享密钥且包含于所述第三信息中;或者,
    生成所述共享密钥,根据初始密钥和所述共享密钥,得到所述共享密钥的密文,其中,所述密文包含于所述第三信息中。
  25. 一种密钥传输方法,其特征在于,应用于第一密钥工具,所述方法包括:
    确定车辆的初始密钥,所述初始密钥至少用于生成共享密钥,所述共享密钥至少用于加密包含地理位置信息的数据;
    向所述车辆的第一部件发送第一指令,所述第一指令包括与所述初始密钥相关联的第一信息。
  26. 根据权利要求25所述的方法,其特征在于,所述初始密钥与原始设备制造商OEM无关,或与不具备导航电子地图制作资质的原始设备制造商OEM无关,其中,所述OEM关联于所述车辆。
  27. 根据权利要求25或26所述的方法,其特征在于,所述初始密钥不同于认证密钥,所述认证密钥来自与所述车辆相关联的原始设备制造商OEM。
  28. 根据权利要求25-27任一项所述的方法,其特征在于,所述第一信息包括第一密文,所述第一密文包括通过第一公钥对所述初始密钥加密得到的信息,所述第一公钥来自所述第一部件。
  29. 根据权利要求25-27任一项所述的方法,其特征在于,所述第一信息包括所述初始密钥,所述向所述车辆的第一部件发送第一指令,包括:
    通过有线连接的方式,向所述第一部件发送所述初始密钥。
  30. 根据权利要求25-29任一项所述的方法,其特征在于,所述确定车辆的初始密钥,包括:
    生成第二公钥和第二私钥;
    向密钥管理系统发送请求信息,所述请求信息用于请求所述初始密钥,所述请求信息包括所述第二公钥;
    接收来自所述密钥管理系统的第二密文;
    根据所述第二密文和所述第二私钥,确定所述初始密钥。
  31. 根据权利要求25-30任一项所述的方法,其特征在于,所述方法还包括:
    接收来自所述第一部件的第一响应信息,所述第一响应信息包括所述初始密钥的灌装结果。
  32. 根据权利要求31所述的方法,其特征在于,若所述初始密钥的灌装结果指示所述初始密钥灌装失败,所述方法还包括:
    重新发送所述第一指令。
  33. 根据权利要求31或32所述的方法,其特征在于,所述初始密钥的灌装结果包括第二标识,所述第二标识用于指示所述初始密钥灌装失败。
  34. 根据权利要求31所述的方法,其特征在于,若所述初始密钥的灌装结果指示所述初始密钥灌装成功,所述方法还包括:
    向所述第一部件发送第二指令,所述第二指令包括与所述共享密钥相关联的第二信息。
  35. 根据权利要求31或34所述的方法,其特征在于,所述初始密钥的灌装结果包括:
    第一标识,所述第一标识用于指示所述初始密钥灌装成功;
    和/或,第三密文,所述第三密文包括通过所述初始密钥或所述初始密钥的派生密钥对所述第一指令包括的第一随机数加密得到的信息。
  36. 根据权利要求35所述的方法,其特征在于,当所述初始密钥的灌装结果包括所述第三密文时,所述方法还包括:
    根据所述第三密文,确定所述初始密钥是否灌装成功。
  37. 根据权利要求34所述的方法,其特征在于,所述方法还包括:
    生成所述共享密钥;
    根据所述初始密钥对所述共享密钥进行加密,得到所述第二信息。
  38. 根据权利要求34-37任一项所述的方法,其特征在于,所述方法还包括:
    接收来自所述第一部件的第二响应信息,所述第二响应信息包括所述共享密钥的灌装结果。
  39. 根据权利要求38所述的方法,其特征在于,所述共享密钥的灌装结果包括:
    第三标识,所述第三标识用于指示所述共享密钥灌装成功;
    和/或,第四密文,所述第四密文包括通过所述共享密钥或所述共享密钥的派生密钥对所述第二指令包括的第二随机数加密得到的信息。
  40. 根据权利要求39所述的方法,其特征在于,当所述共享密钥的灌装结果包括所述第四密文时,所述方法还包括:
    根据所述第二信息和所述第四密文,确定所述共享密钥是否灌装成功。
  41. 根据权利要求40所述的方法,其特征在于,若所述共享密钥的灌装结果指示所述共享密钥灌装失败,所述方法还包括:
    重新发送所述第二指令。
  42. 根据权利要求41所述的方法,其特征在于,所述共享密钥的灌装结果包括第四标识,所述第四标识用于指示所述共享密钥灌装失败。
  43. 一种密钥检测方法,其特征在于,所述方法包括:
    向车辆的第一部件发送第四指令,所述第四指令包括第三随机数;
    接收来自所述第一部件的第四响应信息;所述第四响应信息中包括第一校验值,所述第一校验值与所述第三随机数和所述车辆的共享密钥相关联,所述共享密钥至少用于加密包含地理位置信息的数据;
    根据所述第一校验值,确定所述车辆的共享密钥与对应于所述车辆的本地共享密钥是否一致;
    若所述车辆的共享密钥与所述本地共享密钥不一致,上报异常信息。
  44. 一种密钥检测方法,其特征在于,所述方法包括:
    获取车辆的第一部件的通信信息密文,所述通信信息密文包括通过所述车辆的共享密钥加密第一信息得到的信息,所述第一信息包括地理位置信息;
    根据所述通信信息密文,确定所述车辆的共享密钥与所述车辆的本地共享密钥是否一致;
    若所述车辆的共享密钥与所述本地共享密钥不一致,上报异常信息。
  45. 根据权利要求43或44所述的方法,其特征在于,所述方法还包括:
    获取所述车辆标识或所述第一部件的标识;根据所述车辆标识或所述第一部件的标识,查询对应于所述车辆的初始密钥和用于生成所述本地共享密钥的密钥材料;根据所述初始密钥和所述密钥材料生成所述本地共享密钥;或者,根据所述车辆标识或所述第一部件的标识,查询所述本地共享密钥。
  46. 一种控制装置,其特征在于,包括:
    收发模块,用于接收来自第一密钥工具的第一指令,所述第一指令包括与初始密钥相关联的第一信息;
    处理模块,用于根据所述第一指令,获取所述初始密钥;
    其中,所述初始密钥至少用于生成共享密钥,所述共享密钥至少用于加密包含地理位置信息的数据。
  47. 一种控制装置,其特征在于,包括:
    处理模块,获取共享密钥灌装指令,所述共享密钥灌装指令用于为第一部件灌装共享密钥;其中,所述共享密钥至少用于加密包含地理位置信息的数据;
    收发模块,用于向第一部件发送所述共享密钥灌装指令。
  48. 一种密钥传输装置,其特征在于,包括:
    处理模块,用于确定车辆的初始密钥,所述初始密钥至少用于生成共享密钥,所述共享密钥至少用于加密包含地理位置信息的数据;
    收发模块,用于向所述车辆的第一部件发送第一指令,所述第一指令包括与所述初始密钥相关联的第一信息。
  49. 一种密钥检测装置,其特征在于,包括:
    收发模块,用于向车辆的第一部件发送第四指令,所述第四指令包括第三随机数;
    所述收发模块,还用于接收来自所述第一部件的第四响应信息;所述第四响应信息中包括第一校验值,所述第一校验值与所述第三随机数和所述车辆的共享密钥相关联,所述共享密钥至少用于加密包含地理位置信息的数据;
    处理模块,用于根据所述第一校验值,确定所述车辆的共享密钥与对应于所述车辆的本地共享密钥是否一致;
    若所述车辆的共享密钥与所述本地共享密钥不一致,上报异常信息。
  50. 一种密钥检测装置,其特征在于,包括:
    处理模块,用于获取车辆的第一部件的通信信息密文,所述通信信息密文包括通过所述车辆的共享密钥加密第一信息得到的信息,所述第一信息包括地理位置信息;
    所述处理模块,还用于根据对应于所述车辆的本地共享密钥和所述通信信息密文,确定所述车辆的共享密钥与所述本地共享密钥是否一致;
    收发模块,用于若所述车辆的共享密钥与所述本地共享密钥不一致,上报异常信息。
  51. 一种车载部件,其特征在于,所述车载部件包括处理器和存储介质,所述存储介质存储有指令,所述指令被所述处理器运行时,使得所述车载部件执行如权利要求1至19中任一项所述的方法或,如权利要求20至24中任一项所述的方法。
  52. 一种电子设备,其特征在于,所述电子设备包括处理器和存储介质,所述存储介质存储有指令,所述指令被所述处理器运行时,使得所述电子设备执行如权利要求25至42中任一项、或权利要求43、或权利要求44、或权利要求45所述的方法。
  53. 一种车辆,其特征在于,包括用于执行如权利要求1至19任一项所述方法的第一部件,和,用于执行如权利要求20至24任一项所述方法的第二部件。
  54. 一种芯片,其特征在于,包括一个或多个处理器和接口电路,所述接口电路用于为所述一个或多个处理器提供信息输入和/或输出,所述芯片用于执行如权利要求1至19中任一项,或权利要求20至24中任一项,权利要求25至42中任一项、或权利要求43、或权利要求44、或权利要求45所述的方法。
  55. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,所述指令被运行时,使得如权利要求1至19中任一项、或权利要求20至24中任一项,权利要求25至42中任一项、或权利要求43、或权利要求44、或权利要求45所述的方法被执行。
  56. 一种计算机程序产品,其特征在于,所述计算机程序产品在一个或多个处理器上运行时,使得如权利要求1至19中任一项,或权利要求20至24中任一项,权利要求25至42中任一项、或权利要求43、或权利要求44、或权利要求45所述的方法被执行。
CN202180102455.2A 2021-09-18 2021-09-18 一种密钥传输方法及装置 Pending CN117957861A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/119432 WO2023039900A1 (zh) 2021-09-18 2021-09-18 一种密钥传输方法及装置

Publications (1)

Publication Number Publication Date
CN117957861A true CN117957861A (zh) 2024-04-30

Family

ID=85602346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180102455.2A Pending CN117957861A (zh) 2021-09-18 2021-09-18 一种密钥传输方法及装置

Country Status (4)

Country Link
EP (1) EP4391607A4 (zh)
JP (1) JP2024533559A (zh)
CN (1) CN117957861A (zh)
WO (1) WO2023039900A1 (zh)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8472627B2 (en) * 2000-10-30 2013-06-25 Geocodex Llc System and method for delivering encrypted information in a communication network using location indentity and key tables
CN101873588B (zh) * 2010-05-27 2013-11-20 大唐微电子技术有限公司 一种业务应用安全实现方法及系统
CN104268458B (zh) * 2014-09-23 2018-01-26 潍柴动力股份有限公司 一种车辆程序加密验证方法及加密、验证装置
DE102015220224A1 (de) * 2015-10-16 2017-04-20 Volkswagen Aktiengesellschaft Verfahren zur geschützten Kommunikation eines Fahrzeugs
CN106209910A (zh) * 2016-08-29 2016-12-07 上海航盛实业有限公司 一种车载信息系统的安全保护方法
CN106899404B (zh) * 2017-02-15 2020-06-02 同济大学 基于预共享密钥的车载can fd总线通信系统及方法
US10819689B2 (en) * 2018-05-03 2020-10-27 Honeywell International Inc. Systems and methods for encrypted vehicle data service exchanges
CN109788002A (zh) * 2019-03-12 2019-05-21 北京首汽智行科技有限公司 一种Http请求加密、解密方法及系统
CN110266474A (zh) * 2019-05-15 2019-09-20 亚信科技(成都)有限公司 密钥发送方法、装置及系统
KR20210042470A (ko) * 2019-10-10 2021-04-20 현대자동차주식회사 차량, 그와 통신하는 단말기 및 그 제어 방법
CN112640502B (zh) * 2020-03-13 2022-03-29 华为技术有限公司 一种通信方法、装置以及系统
CN113016201B (zh) * 2020-12-31 2022-05-24 华为技术有限公司 密钥供应方法以及相关产品
WO2022178871A1 (zh) * 2021-02-26 2022-09-01 华为技术有限公司 获取密钥的方法、装置及密钥管理系统

Also Published As

Publication number Publication date
EP4391607A4 (en) 2024-09-04
EP4391607A1 (en) 2024-06-26
JP2024533559A (ja) 2024-09-12
WO2023039900A1 (zh) 2023-03-23

Similar Documents

Publication Publication Date Title
US11265170B2 (en) Vehicle information collection system, vehicle-mounted computer, vehicle information collection device, vehicle information collection method, and computer program
EP3541006B1 (en) Reuse system, key creating device, data security device, on-vehicle computer, reuse method, and computer program
US11436873B2 (en) Encrypted communication system and method for controlling encrypted communication system
US20150180840A1 (en) Firmware upgrade method and system thereof
CN110109443B (zh) 车辆诊断的安全通信方法、装置、存储介质及设备
US9998476B2 (en) Data distribution apparatus, communication system, moving object, and data distribution method
CN111279310A (zh) 一种车载设备升级方法及相关设备
US20180254903A1 (en) End-to-end vehicle secure ecu unlock in a semi-offline environment
CN112913189B (zh) 一种ota升级方法及装置
US10326743B2 (en) Secured data transmission using identity-based cryptography
CN109359472B (zh) 一种数据加解密处理方法、装置以及相关设备
CN111565182B (zh) 一种车辆诊断方法、装置及存储介质
EP3851983A1 (en) Authorization method, auxiliary authorization component, management server and computer readable medium
KR20220081376A (ko) 분산 v2x 네트워크에서 오프라인 pki 인증서 발행
CN114946155A (zh) 一种车辆诊断系统、方法及装置
CN105471657B (zh) 一种虚拟机域间通信日志管理方法、装置及系统
JP7187547B2 (ja) Ibcを使用した車外通信の保護
CN110830243B (zh) 对称密钥分发方法、装置、车辆及存储介质
CN117957861A (zh) 一种密钥传输方法及装置
US20150058626A1 (en) Programming Method, Battery with an Arrangement for Carrying out the Programming Method and a Motor Vehicle Comprising said Type of Battery
US20170311158A1 (en) Technique for connecting a mobile device to a vehicle-based system
KR101780280B1 (ko) 비밀키 교체 방식을 적용한 주행기록 보안 기법 및 및 그 장치
CN114915942A (zh) 通信密钥配置方法及装置
CN114258013A (zh) 数据加密方法、设备和存储介质
CN114647836A (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