一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

汽车安全等级解锁方法、待刷写ECU单元及系统与流程

2023-01-14 18:30:07 来源:中国专利 TAG:

汽车安全等级解锁方法、待刷写ecu单元及系统
技术领域
1.本发明涉及汽车解锁领域,特别涉及一种汽车安全等级解锁方法、待刷写ecu单元及系统。


背景技术:

2.ecu(electronic control unit)指电子控制单元,又称"行车电脑"、"车载电脑"等,在开发阶段由于不同车型和运行模式的不同需求、ecu标定等原因经常需要对ecu程序进行修改,这种修改的结果是生成多个不同的程序版本,这些不同的程序版本将被重新刷写到ecu中去,以验证实际效果。在重新刷写之前,需要对汽车安全进行等级解锁,解锁成功后,才可以进行刷写操作。
3.车辆的ecu有很多种类,每个ecu的汽车安全等级解密算法可能都会不一样,在相关技术中,每个ecu都会生成一个对应的dll文件,每刷写一个ecu,就需要加载对应ecu的dll文件,这样的刷写解密方式效率较低,刷写解密进程较慢,前期加载dll文件会浪费大量的时间。


技术实现要素:

4.本发明的提供一种汽车安全等级解锁方法、待刷写ecu单元及系统,解决了每次刷写一个新的ecu都要加载对应dll文件的问题,即可以做到一个预设dall文件库兼容所有种类ecu的解密,极大提高了刷写解密效率。
5.第一方面,提供一种汽车安全等级解锁方法,应用于待刷写ecu单元,包括以下步骤:
6.控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
7.控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到外部解锁值;
8.获取待刷写ecu单元的内部解锁值;
9.获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;
10.根据所述解锁比对结果,发送汽车解锁指令。
11.根据第一方面,在第一方面的第一种可能的实现方式中,所述“控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到获取外部解锁值”步骤,具体包括以下步骤:
12.控制测试器调用预设dall文件库,所述预设dall文件库包括:每种ecu单元的预设种子密钥,及与所述每种ecu单元的预设种子密钥对应的预设诊断id;
13.根据所述待刷写种子密钥及所述待刷写诊断id,在预设dall文件库查找到与所述待刷写种子密钥及所述待刷写诊断id分别一一对应的预设种子及预设诊断id,获取待刷写ecu单元对应的预设种子及预设诊断id;
14.根据所述待刷写ecu单元对应的预设种子及预设诊断id,调用预设dall文件库中对应的解密函数,获取外部解锁值。
15.根据第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述“比对所述外部解锁值及所述内部解锁值,获取解锁比对结果”步骤,具体包括以下步骤:
16.当所述外部解锁值与所述内部解锁值的比对一致,则获取解锁比对结果为汽车解锁成功;
17.当所述外部解锁值与所述内部解锁值的比对不一致,则获取解锁比对结果为汽车解锁失败。
18.根据第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述“控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id”步骤之前,具体包括以下步骤:
19.进入编程会话模式。
20.第二方面,提供一种待刷写ecu单元,其特征在于,包括:
21.待刷写信息获取模块,用于控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
22.外部解锁值模块,与所述待刷写信息获取模块通信连接,用于控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到获取外部解锁值;
23.内部解锁值模块,用于获取待刷写ecu单元的内部解锁值;
24.比对模块,与所述外部解锁值模块及所述内部解锁值模块通信连接,用于获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;以及,
25.指令发送模块,与所述比对模块通信连接,用于根据所述解锁比对结果,发送汽车解锁指令。
26.根据第二方面,在第二方面的第一种可能的实现方式中,所述外部解锁值模块包括:
27.预设dall文件库模块,用于控制测试器调用预设dall文件库,所述预设dall文件库包括:每种ecu单元的预设种子密钥,及与所述每种ecu单元的预设种子密钥对应的预设诊断id;
28.预设种子及预设诊断id模块,与所述预设dall文件库模块通信连接,用于根据所述待刷写种子密钥及所述待刷写诊断id,在预设dall文件库查找到与所述待刷写种子密钥及所述待刷写诊断id分别一一对应的预设种子及预设诊断id,获取待刷写ecu单元对应的预设种子及预设诊断id;
29.解密函数模块,与所述预设种子及预设诊断id模块通信连接,用于根据所述待刷写ecu单元对应的预设种子及预设诊断id,调用预设dall文件库中对应的解密函数,获取外部解锁值。
30.根据第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,还包括编程会话模块,与所述待刷写信息获取模块通信连接,用于进入编程会话模式。
31.第三方面,提供一种汽车安全等级解锁系统,包括待刷写ecu单元和测试器,待刷写ecu单元和测试器通讯连接;
32.所述待刷写ecu单元,进入编程会话模式;
33.所述测试器,获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
34.所述测试器,控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到获取外部解锁值;
35.所述待刷写ecu单元,获取待刷写ecu单元的内部解锁值;
36.所述待刷写ecu单元,获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;
37.所述待刷写ecu单元,根据所述解锁比对结果,发送汽车解锁指令。
38.与现有技术相比,本发明的优点如下:首先控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;再控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到外部解锁值;获取待刷写ecu单元的内部解锁值;获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;最后根据所述解锁比对结果,发送汽车解锁指令。本发明通过调用预设dall文件库(capl动态链接库),预设dall文件库中封装了所有种类ecu的解密函数,因此解决了每次刷写一个新的ecu都要加载对应dll文件的问题,即可以做到一个预设dall文件库兼容所有种类ecu的解密,极大提高了刷写解密效率。当最后得出解锁比对结果后,可对汽车安全进行等级解锁,当解锁成功后,才对待刷写ecu单元进行重新刷写操作。
附图说明
39.图1是本发明一实施例一种汽车安全等级解锁方法的流程示意图;
40.图2是本发明一实施例一种待刷写ecu单元的的结构示意图;
41.图3是本发明一实施例一种汽车安全等级解锁系统的结构示意图。
42.附图说明:
43.100、汽车安全等级解锁系统;110、待刷写ecu单元;111、编程会话模块;112、待刷写信息获取模块;113、外部解锁值模块;114、内部解锁值模块;115、比对模块;116、指令发送模块;120、测试器。
具体实施方式
44.现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于所述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
45.为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。
46.注意:接下来要介绍的示例仅是一个具体的例子,而不作为限制本发明的实施例必须为如下具体的步骤、数值、条件、数据、顺序等等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。
47.参见图1所示,本发明实施例提供一种汽车安全等级解锁方法,应用于待刷写ecu
单元,包括以下步骤:
48.s100,控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
49.s200,控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到外部解锁值;
50.s300,获取待刷写ecu单元的内部解锁值;
51.s400,获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;
52.s500,根据所述解锁比对结果,发送汽车解锁指令。
53.具体地,本实施例中,由于车辆的ecu有很多种类,每个ecu的汽车安全等级解密算法可能都会不一样,在相关技术中,每个ecu都会生成一个对应的dll文件,每刷写一个ecu,就需要加载对应ecu的dll文件,这样的刷写解密方式效率较低,刷写解密进程较慢,前期加载dll文件会浪费大量的时间;
54.因此为了解决上述问题,本发明首先控制测试器通过uds(unified diagnostic services)诊断服务获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;再控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到外部解锁值;获取待刷写ecu单元的内部解锁值;获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;最后根据所述解锁比对结果,发送汽车解锁指令。本发明通过调用预设dall文件库(capl动态链接库),预设dall文件库中封装了所有种类ecu的解密函数,因此解决了每次刷写一个新的ecu都要加载对应dll文件的问题,即可以做到一个预设dall文件库兼容所有种类ecu的解密,极大提高了刷写解密效率。
55.当最后得出解锁比对结果后,可对汽车安全进行等级解锁,当解锁成功后,才对待刷写ecu单元进行重新刷写操作。
56.需要说明的是,诊断id-identity document,即为身份标识;
57.同时,外部解锁值是测试器根据待刷写种子密钥及待刷写诊断id获得的,而内部解锁值是待刷写ecu单元根据预设自身安全等级解密函数算法自动获得的。
58.优选地,在本技术另外的实施例中,所述“s200,控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id,获取外部解锁值”步骤,具体包括以下步骤:
59.s210,控制测试器调用预设dall文件库,所述预设dall文件库包括:每种ecu单元的预设种子密钥,及与所述每种ecu单元的预设种子密钥对应的预设诊断id;
60.s220根据所述待刷写种子密钥及所述待刷写诊断id,在预设dall文件库查找到与所述待刷写种子密钥及所述待刷写诊断id分别一一对应的预设种子及预设诊断id,获取待刷写ecu单元对应的预设种子及预设诊断id;
61.s200根据所述待刷写ecu单元对应的预设种子及预设诊断id,调用预设dall文件库中对应的解密函数,获取外部解锁值。
62.具体地,本实施例中,预设dall文件库中封装了所有种类ecu的解密函数,只要获取到待刷写ecu单元的待刷写种子密钥及待刷写诊断id,就能在预设dall文件库查找到与所述待刷写种子密钥及所述待刷写诊断id分别一一对应的预设种子及预设诊断id,最后再调用与预设种子及预设诊断id对应的解密函数而得到外部解锁值。因此解决了每次刷写一
个新的ecu都要加载对应dll文件的问题,可以做到一个预设dll文件库兼容所有ecu的解密,极大的提高了刷写解密效率。
63.优选地,在本技术另外的实施例中,所述“s400,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果”步骤,具体包括以下步骤:
64.s410,当所述外部解锁值与所述内部解锁值的比对一致,则获取解锁比对结果为汽车解锁成功;
65.s420,当所述外部解锁值与所述内部解锁值的比对不一致,则获取解锁比对结果为汽车解锁失败。
66.具体地,本实施例中,当所述外部解锁值与所述内部解锁值的比对一致,则获取解锁比对结果为汽车解锁成功,则意味着可对汽车安全进行等级解锁,能对待刷写ecu单元进行重新刷写操作;当所述外部解锁值与所述内部解锁值的比对不一致,则获取解锁比对结果为汽车解锁失败,则意味着汽车安全等级解锁失败,暂不能对待刷写ecu单元进行重新刷写操作。
67.优选地,在本技术另外的实施例中,所述“s100,控制测试器获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id”步骤之前,具体包括以下步骤:
68.s010,进入编程会话模式。
69.具体地,本实施例中,待刷写ecu单元进入编程会话模式,作用为,检查编程条件并分配编程所需资源,读取软件版本号并与待刷版本号进行比对;因此是做好解锁刷写的前期准备工作。
70.参见图2所示,本发明实施例提供了一种待刷写ecu单元110,包括:编程会话模块111、待刷写信息获取模块112、外部解锁值模块113、内部解锁值模块114、比对模块115及指令发送模块116;
71.编程会话模块111,与所述待刷写信息获取模块112通信连接,用于进入编程会话模式;
72.待刷写信息获取模块112,用于控制测试器120获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
73.外部解锁值模块113,与所述待刷写信息获取模块112通信连接,用于控制测试器120调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到获取外部解锁值;
74.内部解锁值模块114,用于获取待刷写ecu单元的内部解锁值;
75.比对模块115,与所述外部解锁值模块113及所述内部解锁值模块114通信连接,用于获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;
76.指令发送模块116,与所述比对模块115通信连接,用于根据所述解锁比对结果,发送汽车解锁指令。
77.所述外部解锁值模块113包括:预设dall文件库模块、预设种子及预设诊断id模块及解密函数模块。
78.预设dall文件库模块,用于控制测试器调用预设dall文件库,所述预设dall文件库包括:每种ecu单元的预设种子密钥,及与所述每种ecu单元的预设种子密钥对应的预设诊断id;
79.预设种子及预设诊断id模块,与所述预设dall文件库模块通信连接,用于根据所述待刷写种子密钥及所述待刷写诊断id,在预设dall文件库查找到与所述待刷写种子密钥及所述待刷写诊断id分别一一对应的预设种子及预设诊断id,获取待刷写ecu单元对应的预设种子及预设诊断id;
80.解密函数模块,与所述预设种子及预设诊断id模块通信连接,用于根据所述待刷写ecu单元对应的预设种子及预设诊断id,调用预设dall文件库中对应的解密函数,获取外部解锁值。
81.所述比对模块115用于当所述外部解锁值与所述内部解锁值的比对一致,则获取解锁比对结果为汽车解锁成功;当所述外部解锁值与所述内部解锁值的比对不一致,则获取解锁比对结果为汽车解锁失败。
82.本发明首先控制测试器通过uds诊断服务获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;再控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到外部解锁值;获取待刷写ecu单元的内部解锁值;获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;最后根据所述解锁比对结果,发送汽车解锁指令。本发明通过调用预设dall文件库(capl动态链接库),预设dall文件库中封装了所有种类ecu的解密函数,因此解决了每次刷写一个新的ecu都要加载对应dll文件的问题,即可以做到一个预设dall文件库兼容所有种类ecu的解密,极大提高了刷写解密效率。当最后得出解锁比对结果后,可对汽车安全进行等级解锁,当解锁成功后,才对待刷写ecu单元进行重新刷写操作。
83.参见图3所示,本发明实施例还提供了一种汽车安全等级解锁系统100,包括待刷写ecu单元110和测试器120,待刷写ecu单元110和测试器120通讯连接;
84.所述待刷写ecu单元110,进入编程会话模式;
85.所述测试器120,获取待刷写ecu单元的待刷写种子密钥及待刷写诊断id;
86.所述测试器120,控制测试器调用预设dall文件库,根据所述待刷写种子密钥及所述待刷写诊断id得到获取外部解锁值;
87.所述待刷写ecu单元110,获取待刷写ecu单元的内部解锁值;
88.所述待刷写ecu单元110,获取所述外部解锁值,比对所述外部解锁值及所述内部解锁值,获取解锁比对结果;
89.所述待刷写ecu单元110,根据所述解锁比对结果,发送汽车解锁指令。
90.具体的,本实施例与上述方法实施例一一对应,各个模块的功能在相应的方法实施例中已经进行详细说明,因此不再一一赘述。
91.基于同一发明构思,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的所有方法步骤或部分方法步骤。
92.本发明实现上述方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、
光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
93.基于同一发明构思,本技术实施例还提供一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法中的所有方法步骤或部分方法步骤。
94.所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
95.存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现计算机装置的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(例如声音播放功能、图像播放功能等);存储数据区可存储根据手机的使用所创建的数据(例如音频数据、视频数据等)。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
96.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、服务器或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
97.本发明是参照根据本发明实施例的方法、设备(系统)、服务器和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
98.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
99.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
100.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献