一种车辆ECU安全刷写的方法及装置与流程
未命名
08-15
阅读:233
评论:0
一种车辆ecu安全刷写的方法及装置
技术领域
1.本技术涉及智能汽车技术领域,尤其涉及一种车辆ecu安全刷写的方法及装置。
背景技术:
2.随着智能化和信息化的发展,现如今电子控制器单元(electronic controluni,ecu)已经成为汽车上最为常见的部件之一,ecu又称为汽车的“行车电脑”,现在汽车普遍拥有数十个ecu,ecu的增多代表着功能的复杂度和稳定性难度,每个ecu节点都是由硬件+软件组成的,软件在生命周期内将会涉及到多次的远程升级迭代更新,从而满足用户提出的越来越苛刻的使用需求。
3.其中,为实现软件的远程升级迭代更新所采用的远程升级技术(over-the-air,ota)是指,通过移动通信网络或无线网络对汽车的零部件终端上固件、数据及应用进行远程管理的技术。简单来说,ota技术实现分三步:首先将软件升级包上传到ota平台,然后ota平台无线传输软件升级包到车辆终端,最后车辆终端基于软件升级包自动更新相应软件。
4.现在,在远程升级迭代更新的过程中,信息安全问题越来越被关注,尤其是,近些年报出的一些用户信息泄漏事件更让整车制造商(original equipmentmanufacturer,oem)越来越关注如何对车辆ecu实现安全更新,从而亟待需求更新合法性的有效实施方案。
技术实现要素:
5.有鉴于此,本技术提供了一种车辆ecu安全刷写的方法及装置,在基于ota技术向ecu传输软件升级包的前提下,基于数字签名和非对称密钥对软件升级包进行加密处理,以在远程传输过程中确保软件升级包的完整合法性,从而确保ecu升级包安装的安全性和合法性。
6.本技术主要提供如下技术方案:
7.本技术第一方面提供了一种车辆ecu安全刷写的方法,应用于车辆侧的目标ecu,该方法包括:
8.确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;
9.利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;
10.若解签验证通过,则得到所述升级包对应的明文信息;
11.将所述升级包对应的明文信息刷写入目标ecu,并重新启动所述目标ecu以使得升级之后的所述目标软件生效。
12.在本技术第一方面的一些变更实施方式中,在所述确定目标软件的升级包对应的签名文件之前,若所述签名文件对应下载至车辆终端的预置刷写工具中,其中在所述预置刷写工具中会生成所述签名文件对应的第一数字指纹,则所述方法还包括:
13.基于uds协议向所述预置刷写工具中获取所述签名文件和所述第一数字指纹,作
为待验证数据信息;
14.基于所述待验证数据信息中的所述签名文件,生成对应的第二数字指纹;
15.判断所述第二数字指纹和所述第一数字指纹是否一致;
16.若是,则验证所述待验证信息中的所述签名文件是有效且完整的。
17.在本技术第一方面的一些变更实施方式中,若所述签名文件中所述升级包对应的数据信息为基于对称密钥得到的加密信息,其中,所述对称密钥为ota平台上分配的密钥,则在所述解签验证通过之后,所述方法还包括:
18.利用所在车辆终端向所述ota平台上验证身份,以获取所述对称密钥;
19.利用所述对称密钥对所述升级包对应的数据信息进行解密,以得到所述升级包对应的明文信息。
20.在本技术第一方面的一些变更实施方式中,
21.若多个ecu接在域控制器下面,则将所述多个ecu各自对应的签名文件下载至所述域控制器,以利用所述域控制器对所述签名文件进行pki安全校验。
22.在本技术第一方面的一些变更实施方式中,在确定目标软件的升级包对应的签名文件之前,所述方法还包括:
23.从所述域控制器中确定所述目标ecu对应的签名文件;
24.若经所述域控制器验证所述签名文件为合法,则获取所述签名文件,用于执行对目标ecu的升级操作;
25.若经所述域控制器验证所述签名文件为非法,则终止获取所述签名文件操作。
26.本技术第二方面提供了一种车辆ecu安全刷写的装置,该装置包括:
27.第一确定单元,用于确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;
28.第一验证单元,用于利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;
29.第一获取单元,用于若解签验证通过,则得到所述升级包对应的明文信息;
30.第一执行单元,用于将所述升级包对应的明文信息刷写入目标ecu,并重新启动所述目标ecu以使得升级之后的所述目标软件生效。
31.在本技术第二方面的一些变更实施方式中,在所述确定目标软件的升级包对应的签名文件之前,若所述签名文件对应下载至车辆终端的预置刷写工具中,其中在所述预置刷写工具中会生成所述签名文件对应的第一数字指纹,则所述装置还包括:
32.第二获取单元,用于基于uds协议向所述预置刷写工具中获取所述签名文件和所述第一数字指纹,作为待验证数据信息;
33.生成单元,用于基于所述待验证数据信息中的所述签名文件,生成对应的第二数字指纹;
34.判断单元,用于判断所述第二数字指纹和所述第一数字指纹是否一致;
35.第二验证单元,若确定所述第二数字指纹和所述第一数字指纹是一致的,则验证所述待验证信息中的所述签名文件是有效且完整的。
36.在本技术第二方面的一些变更实施方式中,若所述签名文件中所述升级包对应的
数据信息为基于对称密钥得到的加密信息,其中,所述对称密钥为ota平台上分配的密钥,则在所述解签验证通过之后,所述装置还包括:
37.第三验证单元,用于利用所在车辆终端向所述ota平台上验证身份,以获取所述对称密钥;
38.解密单元,用于利用所述对称密钥对所述升级包对应的数据信息进行解密,以得到所述升级包对应的明文信息。
39.在本技术第二方面的一些变更实施方式中,
40.若多个ecu接在域控制器下面,则将所述多个ecu各自对应的签名文件下载至所述域控制器,以利用所述域控制器对所述签名文件进行pki安全校验。
41.在本技术第二方面的一些变更实施方式中,在确定目标软件的升级包对应的签名文件之前,所述装置还包括:
42.第二确定单元,用于从所述域控制器中确定所述目标ecu对应的签名文件;
43.第二执行单元,用于若经所述域控制器验证所述签名文件为合法,则获取所述签名文件,用于执行对目标ecu的升级操作。
44.所述第二执行单元,还用于若经所述域控制器验证所述签名文件为非法,则终止获取所述签名文件操作。
45.本技术第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的车辆ecu安全刷写的方法。
46.本技术第四方面提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如上所述的车辆ecu安全刷写的方法。
47.借由上述技术方案,本技术提供的技术方案至少具有下列优点:
48.本技术提供了一种车辆ecu安全刷写的方法及装置,本技术中目标ecu在确定目标软件的升级包对应的签名文件之后,由于改签名文件中至少包括:基于预置私钥对升级包进行签名而得到的特征字符串信息和升级包的数据信息,由此目标ecu首先是利用与预置私钥成对的预置公钥对签名文件进行解签验证,待验证通过之后得到升级包对应的明文信息,然后再将该明文信息刷写入目标ecu中,并重新启动目标ecu以使得升级之后的目标软件生效。相较于现有技术,本技术在基于ota技术向ecu传输软件升级包的前提下,基于数字签名和非对称密钥对软件升级包进行加密处理,以在远程传输过程中确保软件升级包的完整合法性,从而确保ecu升级包安装的安全性和合法性,从而本技术提供行之有效的车辆ecu安全刷写方案。
49.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其他目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
50.图1为本技术实施例提供的一种车辆ecu安全刷写的方法流程图;
51.图2为本技术实施例提供的另一种车辆ecu安全刷写的方法流程图;
52.图3为本技术实施例提供的预置刷写工具向目标ecu传输数据的示意图;
53.图4为本技术实施例提供的一种车辆ecu安全刷写的装置的组成框图;
54.图5为本技术实施例提供的另一种车辆ecu安全刷写的装置的组成框图。
具体实施方式
55.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
56.本技术实施例提供了一种车辆ecu安全刷写的方法,如图1所示,为方便解释说明本技术实施例所提供的方案,本技术实施例以执行主体为车辆侧的目标ecu进行详细解释说明,对此本技术实施例提供以下具体步骤:
57.101、确定目标软件的升级包对应的签名文件。
58.其中,签名文件中至少包括:基于预置私钥对升级包进行签名而得到的特征字符串信息、升级包对应的数据信息。
59.在本技术实施例中是由整车制造商(originalequipmentmanufacturer,oem)提供目标软件的升级包,并且在oem向车辆侧ecu传输升级包之前,会向预置加密系统申请预置密钥对(如公钥和私钥),从而基于预置私钥对待传输的升级包执行数字签名,以便车辆侧ecu在接收到下发的签名文件时进行验签,以验证传输签名文件的完整性和发送方身份。
60.具体,数字签名操作可以为,利用哈希算法对升级包生成对应的摘要值,即升级包唯一对应的特征字符串信息,从而使得签名文件至少包括:该特征字符串信息和升级包对应的数据信息。
61.另外,需要说明的是,升级包对应的数据信息除了包括升级包的明文信息以外,还可以至少包括升级包对应指向的内存路径信息。ecu虽然支持一个软件的功能应用,但是具体的,在ecu侧数据的存储结构为包括存储为多个文件,每个文件对应多个部分(segment),以及每个部分对应不同的存储路径(即内存起始地址和占用内存大小)。从而基于签名文件中包括的升级包对应内存路径信息,在向ecu内刷写入升级包时,就可以根据ecu内当前版本软件的存储路径信息和升级包所需的内存路径信息进行比对,以确定是否为ecu所需的升级包,从而进一步防止ecu在刷写时更新了一个未授权的升级包。
62.102、利用预置公钥对签名文件进行解签验证。
63.其中,预置公钥和预置私钥为基于预置加密系统生成的一对密钥。
64.并且,本技术实施例在向预置加密系统申请预置密钥对之后,预置公钥会释放给供应商嵌套在ecu的bootloader中,从而在ecu侧需要执行验签操作时,就可以从bootloader中获取相应的预置公钥了。
65.103、若解签验证通过,则得到升级包对应的明文信息。
66.104、将升级包对应的明文信息刷写入目标ecu,并重新启动目标ecu以使得升级之后的目标软件生效。
67.在本技术实施例中在ecu侧基于预置公钥对签名文件进行验签,以得到升级包对应的明文信息,在将该明文信息刷写入ecu时之后,需要重新启动ecu。在此优优选实施方式
为,ecu的引导加载程序会重新计算升级程序的摘要值,将该摘要值与之前验签得到的明文信息的摘要值进行比对,若一致,则表明ecu重启后未发生安装升级包的异常,表明安装程序是有效的,从而ecu进入正常的安全启动流程,但若校验不一致,则说明安装的程序无效,升级失败。
68.以上,本技术实施例提供了一种车辆ecu安全刷写的方法,本技术实施例中目标ecu在确定目标软件的升级包对应的签名文件之后,由于改签名文件中至少包括:基于预置私钥对升级包进行签名而得到的特征字符串信息和升级包的数据信息,由此目标ecu首先是利用与预置私钥成对的预置公钥对签名文件进行解签验证,待验证通过之后得到升级包对应的明文信息,然后再将该明文信息刷写入目标ecu中,并重新启动目标ecu以使得升级之后的目标软件生效。相较于现有技术,本技术实施例在基于ota技术向ecu传输软件升级包的前提下,基于数字签名和非对称密钥对软件升级包进行加密处理,以在远程传输过程中确保软件升级包的完整合法性,从而确保ecu升级包安装的安全性和合法性,从而本技术实施例提供行之有效的车辆ecu安全刷写方案。
69.进一步的,为了更加详细地解释说明,本技术实施例还提供另一种车辆ecu安全刷写的方法,如图2所示,该方法的执行主体为车辆ecu侧,对此本技术实施例提供以下具体步骤:
70.201、若签名文件对应下载至车辆终端的预置刷写工具中且签名文件携带对应的第一数字指纹,则基于uds协议向预置刷写工具中获取签名文件和第一数字指纹,作为待验证数据信息。
71.在本技术实施例中是由整车制造商(originalequipmentmanufacturer,oem)提供目标软件的升级包,并且经数据传输到车辆ecu侧进行刷写操作。但是在数据传输到车辆ecu侧之前,本技术实施例提供优选实施方式为,先将升级包下载到车辆终端的预置刷写工具内,以借助这样的预置刷写工具计算生成签名文件对应的第一数字指纹,例如采用消息摘要算法(messagedigestalgorithmmd5)计算签名文件对应的摘要值(即也就相当于是签名文件对应的唯一数字指纹),将签名文件和其对应的第一数字指纹组成待验证数据信息。
72.需要说明的是,汽车普遍拥有数十个ecu,从而对于车辆终端而言,根据实际业务需求可以同时下载多个签名文件到预置刷写工具内,但需要标注不同签名文件和所需传输到达的ecu之间的映射关系,以避免发生数据传输错乱。
73.本技术实施例是利用车辆终端内一个有限专用数据存储区域(如预置刷写工具)预先下载这些签名文件并生成相应的第一数字指纹,以便在向ecu传输签名文件的实施阶段中增加对签名文件的完整性校验步骤。具体如下步骤202-204。并且在车辆终端内本技术实施例是采用汽车uds诊断协议(unifieddiagnosticservices,uds)实现预置刷写工具和ecu之间的数据传输的。
74.此外,本技术实施例使用词语“第一”和“第二”标识数字指纹,以方便于区分不同执行主体在不同时机所生成的数字指纹,在此不存在词语排序含义。
75.202、基于待验证数据信息中的签名文件,生成对应的第二数字指纹。
76.203、判断第二数字指纹和第一数字指纹是否一致。
77.204、若确定第二数字指纹和第一数字指纹是否一致,则验证待验证信息中的签名文件是有效且完整的。
78.以上基于步骤201-204实现对每个ecu接收到的签名文件进行完整性校验,示例性的,如图3所示。作为步骤201-204的并列技术方案,如果多个ecu接在域控制器下面,本技术实施例可以采用域控制器具有的合法性校验的功能,以替代预置刷写工具而不必逐个在ecu侧接收到签名文件时进行完整性校验操作。具体解释说明如下:
79.首先,基于http协议将多个ecu各自对应的签名文件下载至域控制器,以利用域控制器对签名文件进行pki安全校验。对于任意一个目标ecu,需要从域控制器中确定它所对应的签名文件。
80.其次,若经域控制器验证签名文件为合法,则目标ecu获取签名文件,用于执行升级操作。但是,若经域控制器验证签名文件为非法(即不完整),则终止获取签名文件操作。
81.205、确定目标软件的升级包对应的签名文件,签名文件中至少包括:基于预置私钥对升级包进行签名而得到的特征字符串信息、升级包对应的数据信息。
82.206、利用预置公钥对签名文件进行解签验证,预置公钥和预置私钥为基于预置加密系统生成的一对密钥。
83.207、若解签验证通过,则得到升级包对应的明文信息。
84.如步骤205-207,在本技术实施例中在目标ecu收到的签名文件经过完整性校验之后,目标ecu则继续执行验签操作以及获取升级包对应的明文信息。
85.进一步的,在一些变更实施例中,如果签名文件中升级包对应的数据信息为基于对称密钥加密得到的加密信息,也就是,对于向车辆ecu传输的升级包不仅经过预置私钥的数字签名且还经过对称密钥的加密操作,从而得到双重性加密。
86.例如,对称密钥为ota平台上分配的密钥,ota平台为归属于oem,并且ota技术实现分三步:首先将软件升级包上传到ota平台,然后ota中心无线传输软件升级包到车辆终端,最后车辆终端基于软件升级包自动更新相应软件。据此,本技术实施例可以设计基于软件升级包上传到ota中心的时间而动态生成对称密钥,从而对于不同软件的升级包、甚至同一软件的不同版本的升级包都可以动态生成唯一对应的密钥,应用于对称加密操作。
87.从而在本技术实施例步骤207中增加一步细节,在解签验证通过之后,
88.利用所在车辆终端向ota平台上验证身份,以获取对称密钥,利用对称密钥对升级包对应的数据信息进行解密,以得到升级包对应的明文信息。
89.208、将升级包对应的明文信息刷写入目标ecu,并重新启动目标ecu以使得升级之后的目标软件生效。
90.在本技术实施例中基于私钥签名、完整性验证和对称密钥加密,从而使得目标ecu得到更加安全可靠的升级包的明文信息,从而确保ecu升级包安装的安全性和合法性。
91.进一步的,作为对上述图1和图2所示方法的实现,本技术实施例提供了一种车辆ecu安全刷写的装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于确保ecu升级包安装的安全性和合法性,具体如图4所示,该装置包括:
92.第一确定单元301,用于确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;
93.第一验证单元302,用于利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;
94.第一获取单元303,用于若解签验证通过,则得到所述升级包对应的明文信息;
95.第一执行单元304,用于将所述升级包对应的明文信息刷写入目标ecu,并重新启动所述目标ecu以使得升级之后的所述目标软件生效。
96.进一步的,如图5所示,在所述确定目标软件的升级包对应的签名文件之前,若所述签名文件对应下载至车辆终端的预置刷写工具中,其中在所述预置刷写工具中会生成所述签名文件对应的第一数字指纹,则所述装置还包括:
97.第二获取单元305,用于基于uds协议向所述预置刷写工具中获取所述签名文件和所述第一数字指纹,作为待验证数据信息;
98.生成单元306,用于基于所述待验证数据信息中的所述签名文件,生成对应的第二数字指纹;
99.判断单元307,用于判断所述第二数字指纹和所述第一数字指纹是否一致;
100.第二验证单元308,若确定所述第二数字指纹和所述第一数字指纹是一致的,则验证所述待验证信息中的所述签名文件是有效且完整的。
101.进一步的,如图5所示,若所述签名文件中所述升级包对应的数据信息为基于对称密钥得到的加密信息,其中,所述对称密钥为ota平台上分配的密钥,则在所述解签验证通过之后,所述装置还包括:
102.第三验证单元309,用于利用所在车辆终端向所述ota平台上验证身份,以获取所述对称密钥;
103.解密单元310,用于利用所述对称密钥对所述升级包对应的数据信息进行解密,以得到所述升级包对应的明文信息。
104.进一步的,在一些变更实施例中,若多个ecu接在域控制器下面,则将所述多个ecu各自对应的签名文件下载至所述域控制器,以利用所述域控制器对所述签名文件进行pki安全校验。
105.据此,如图5所示,在确定目标软件的升级包对应的签名文件之前,所述装置还包括:
106.第二确定单元311,用于从所述域控制器中确定所述目标ecu对应的签名文件;
107.第二执行单元312,用于若经所述域控制器验证所述签名文件为合法,则获取所述签名文件,用于执行对目标ecu的升级操作;
108.所述第二执行单元312,还用于若经所述域控制器验证所述签名文件为非法,则终止获取所述签名文件操作。
109.综上所述,本技术实施例提供的车辆ecu安全刷写的方法及装置,本技术实施例在基于ota技术向ecu传输软件升级包的前提下,基于数字签名和非对称密钥对软件升级包进行加密处理,以及还可增加对称加密步骤以增强数据传输的安全性,以在远程传输过程中确保软件升级包的完整合法性,从而确保ecu升级包安装的安全性和合法性,从而本技术提供行之有效的车辆ecu安全刷写方案。
110.本技术实施例提供的车辆ecu安全刷写的装置包括处理器和存储器,上述第一确定单元、第一验证单元
、
第一获取单元和第一执行单元等均作为程序单元存储在存储器中,
由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
111.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来在基于ota技术向ecu传输软件升级包的前提下,基于数字签名和非对称密钥对软件升级包进行加密处理,以在远程传输过程中确保软件升级包的完整合法性,从而确保ecu升级包安装的安全性和合法性。
112.本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的车辆ecu安全刷写的方法。
113.本技术实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的车辆ecu安全刷写的方法。
114.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
115.在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
116.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
117.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
118.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
119.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
120.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
技术特征:
1.一种车辆ecu安全刷写的方法,其特征在于,应用于车辆侧的目标ecu,所述方法包括:确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;若解签验证通过,则得到所述升级包对应的明文信息;将所述升级包对应的明文信息刷写入目标ecu,并重新启动所述目标ecu以使得升级之后的所述目标软件生效。2.根据权利要求1所述的方法,其特征在于,在所述确定目标软件的升级包对应的签名文件之前,若所述签名文件对应下载至车辆终端的预置刷写工具中,其中在所述预置刷写工具中会生成所述签名文件对应的第一数字指纹,则所述方法还包括:基于uds协议向所述预置刷写工具中获取所述签名文件和所述第一数字指纹,作为待验证数据信息;基于所述待验证数据信息中的所述签名文件,生成对应的第二数字指纹;判断所述第二数字指纹和所述第一数字指纹是否一致;若是,则验证所述待验证信息中的所述签名文件是有效且完整的。3.根据权利要求1所述的方法,其特征在于,若所述签名文件中所述升级包对应的数据信息为基于对称密钥得到的加密信息,其中,所述对称密钥为ota平台上分配的密钥,则在所述解签验证通过之后,所述方法还包括:利用所在车辆终端向所述ota平台上验证身份,以获取所述对称密钥;利用所述对称密钥对所述升级包对应的数据信息进行解密,以得到所述升级包对应的明文信息。4.根据权利要求1所述的方法,其特征在于,若多个ecu接在域控制器下面,则将所述多个ecu各自对应的签名文件下载至所述域控制器,以利用所述域控制器对所述签名文件进行pki安全校验。5.根据权利要求4所述的方法,其特征在于,在确定目标软件的升级包对应的签名文件之前,所述方法还包括:从所述域控制器中确定所述目标ecu对应的签名文件;若经所述域控制器验证所述签名文件为合法,则获取所述签名文件,用于执行对目标ecu的升级操作;若经所述域控制器验证所述签名文件为非法,则终止获取所述签名文件操作。6.一种车辆ecu安全刷写的装置,其特征在于,应用于车辆侧的目标ecu,所述装置包括:第一确定单元,用于确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;第一验证单元,用于利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;
第一获取单元,用于若解签验证通过,则得到所述升级包对应的明文信息;第一执行单元,用于将所述升级包对应的明文信息刷写入目标ecu,并重新启动所述目标ecu以使得升级之后的所述目标软件生效。7.根据权利要求6所述的装置,其特征在于,在所述确定目标软件的升级包对应的签名文件之前,若所述签名文件对应下载至车辆终端的预置刷写工具中,其中在所述预置刷写工具中会生成所述签名文件对应的第一数字指纹,则所述装置还包括:第二获取单元,用于基于uds协议向所述预置刷写工具中获取所述签名文件和所述第一数字指纹,作为待验证数据信息;生成单元,用于基于所述待验证数据信息中的所述签名文件,生成对应的第二数字指纹;判断单元,用于判断所述第二数字指纹和所述第一数字指纹是否一致;第二验证单元,若确定所述第二数字指纹和所述第一数字指纹是一致的,则验证所述待验证信息中的所述签名文件是有效且完整的。8.根据权利要求6所述的装置,其特征在于,若所述签名文件中所述升级包对应的数据信息为基于对称密钥得到的加密信息,其中,所述对称密钥为ota平台上分配的密钥,则在所述解签验证通过之后,所述装置还包括:第三验证单元,用于利用所在车辆终端向所述ota平台上验证身份,以获取所述对称密钥;解密单元,用于利用所述对称密钥对所述升级包对应的数据信息进行解密,以得到所述升级包对应的明文信息。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的车辆ecu安全刷写的方法。10.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的车辆ecu安全刷写的方法。
技术总结
本申请公开了一种车辆ECU安全刷写的方法及装置,涉及智能汽车技术领域,确保ECU升级包安装的安全性和合法性。本申请的主要技术方案为:方法应用于车辆侧的目标ECU,确定目标软件的升级包对应的签名文件,所述签名文件中至少包括:基于预置私钥对所述升级包进行签名而得到的特征字符串信息、所述升级包对应的数据信息;利用预置公钥对所述签名文件进行解签验证,所述预置公钥和所述预置私钥为基于预置加密系统生成的一对密钥;若解签验证通过,则得到所述升级包对应的明文信息;将所述升级包对应的明文信息刷写入目标ECU,并重新启动所述目标ECU以使得升级之后的所述目标软件生效。本申请应用于向车辆ECU安全刷写软件升级包。本申请应用于向车辆ECU安全刷写软件升级包。本申请应用于向车辆ECU安全刷写软件升级包。
技术研发人员:许学敏 刘鑫 于宏波
受保护的技术使用者:合众新能源汽车股份有限公司
技术研发日:2023.04.04
技术公布日:2023/8/14
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
