防盗钥匙匹配方法、装置和计算机设备转让专利

申请号 : CN202111528863.2

文献号 : CN114162080B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谭斌谢嘉丰

申请人 : 深圳市星卡科技股份有限公司

摘要 :

本申请涉及汽车技术领域,公开了一种防盗钥匙匹配方法、装置和计算机设备,通过获取ECU系统的第一种子值,并根据第一种子值计算第一密钥值,ECU系统将自身的第二密钥值与诊断设备发送到的第一密钥值进行比较,若比较成功,诊断设备可检测ECU系统的学习状态,若ECU系统的学习状态为未学习,则获取车辆的VIN码,则根据VIN码计算PIN码与SK码,再将PIN码与SK码写入ECU系统,写入完成后ECU系统向防盗钥匙发送匹配指令,以完成防盗钥匙的配匹配,操作简单,耗时较短,提高了防盗钥匙匹配的效率。

权利要求 :

1.一种防盗钥匙匹配方法,应用于诊断设备,所述诊断设备一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,其特征在于,包括:向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式;

获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;

根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;

接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;

若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;

根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;

接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配;

根据所述第一种子值计算第一密钥值的步骤,包括:获取第一种子值的长度;

计算第一种子值的长度与32的商,得到第一商值Na;

判断第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;

若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);

i1=i1+1;

其中,W2[i1]为第二密钥值,i1为第一i值;

返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;

若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;

判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;

若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:i2=i2+1,其中,i2为第二i值,

X=W2[i2‑1],其中,X为W2[i2‑1]的变量;

若X的值不等于0,则

W3[i2]=W2[i2‑Na]^X;

其中,W3[i2]为第一密钥值,符号“^”表示差分运算;

返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;

根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:W1[i]={W2[i1],W3[i2]};

其中,所述W1[i]表示第一密钥值。

2.根据权利要求1所述的防盗钥匙匹配方法,其特征在于,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤之后,还包括:统计所述ECU系统完成匹配的防盗钥匙的数量;

判断所述防盗钥匙的数量是否大于第一预设值;

若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答,其中,所述消极应答用于终止所述防盗钥匙的匹配;

若所述防盗钥匙的数量不大于第一预设值,则返回到所述将所述PIN码与所述SK码写入所述ECU系统的步骤,以继续匹配防盗钥匙。

3.根据权利要求1所述的防盗钥匙匹配方法,其特征在于,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤之后,还包括:判断所述车辆的点火开关是否打开;

若所述车辆的点火开关打开,判断所述车辆的启动按钮功能是否关闭;

若所述车辆的启动按钮功能关闭,则向所述ECU系统发送执行指令,其中,所述执行指令用于同步匹配所述ECU系统中的ID认证盒与方向盘转向锁,以使所述防盗钥匙与ID认证盒、方向盘转向锁关联。

4.根据权利要求1所述的防盗钥匙匹配方法,其特征在于,所述将所述PIN码与所述SK码写入所述ECU系统的步骤,包括:根据所述PIN码与所述SK码构建第一认证字符串;

将所述第一认证字符串发送至所述ECU系统,其中,所述ECU系统将自带的第二认证字符串与第一认证字符串进行比对,若比对成功,向所述诊断设备发送认证成功信号;

接收所述认证成功信号,并将所述PIN码与所述SK码写入所述ECU系统。

5.根据权利要求2所述的防盗钥匙匹配方法,其特征在于,所述若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答的步骤之后,还包括:将与所述ECU系统完成匹配的所述防盗钥匙标识为有效钥匙;

获取与所述ECU系统完成匹配的历史防盗钥匙;

将所述历史防盗钥匙设定为失效钥匙。

6.一种防盗钥匙匹配装置,所述防盗钥匙匹配装置一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,其特征在于,包括:第一发送模块,用于向所述ECU系统发送第一控制信号,以使诊断设备进入诊断模式;

第一获取模块,用于获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;

第一计算模块,用于根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;

第一接收模块,用于接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;

第二获取模块,用于若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;

写入模块,用于根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;

第二接收模块,用于接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配;

第一获取单元,用于获取第一种子值的长度;

第一计算模块,用于计算第一种子值的长度与32的商,得到第一商值Na;

第一判断单元,用于判断第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;

第二计算单元,用于若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);

i1=i1+1;

其中,W2[i1]为第二密钥值,i1为第一i值;

第一返回单元,用于返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;

第三计算模块,用于若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;

第二判断单元,用于判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;

第四计算模块,用于若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:i2=i2+1,其中,i2为第二i值,

X=W2[i2‑1],其中,X为W2[i2‑1]的变量;

若X的值不等于0,则

W3[i2]=W2[i2‑Na]^X;

其中,W3[i2]为第一密钥值,符号“^”表示差分运算;

第二返回单元,用于返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;

第五计算模块,用于根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:W1[i]={W2[i1],W3[i2]};

其中,所述W1[i]表示第一密钥值。

7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述防盗钥匙匹配方法的步骤。

8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述防盗钥匙匹配方法的步骤。

说明书 :

防盗钥匙匹配方法、装置和计算机设备

技术领域

[0001] 本申请涉及汽车技术领域,特别涉及一种防盗钥匙匹配方法、装置和计算机设备。

背景技术

[0002] 随着人们生活水平的不断提高,汽车越来越成为人们生活中不可缺少的一部分,而偷车已成为现今城市里最常见的犯罪行为之一。汽车数量增多,车辆被盗的数量也逐年上升,这给社会带来极大的不安定因素,担心车辆被盗,成为困扰每一位汽车用户的难题。
[0003] 伴随着现代汽车技术的不断发展以及电子技术的快速进步,许多汽车上都已经安装了原厂的汽车防盗器,而有些车辆的钥匙上通过增加防盗芯片,随机变开锁密码,从而达到汽车防盗的目的。目前的汽车防盗电子钥匙系统都有一个带ID密码的点火钥匙,ID密码由原厂指定且不能更改,发动机起动时要对ID密码进行识别,确认正确后才能正常起动,否则发动机即使被起动,3秒之后也会自动熄火。这种系统采用内置无线发射芯片的点火钥匙,当位于点火开关周围的发射钥匙线圈接受从点火钥匙发射芯片发出的ID密码信号时,防盗电脑判断其ID密码是否与存储的密码相匹配,如果匹配,发动机才能起动。这种防盗电子钥匙系统防盗效果较好,但是其钥匙中的ID密码匹配相对比较复杂,钥匙丢失或损坏后,重新匹配新的钥匙存在操作复杂、耗时较长而且成本较高的问题。

发明内容

[0004] 本申请的主要目的为提供一种防盗钥匙匹配方法,旨在解决现有技术中钥匙丢失或损坏后,重新匹配新的钥匙存在操作复杂、耗时较长而且成本较高的技术问题。
[0005] 本申请提出一种防盗钥匙匹配方法,应用于诊断设备,所述诊断设备一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,包括:
[0006] 向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式;
[0007] 获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;
[0008] 根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;
[0009] 接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;
[0010] 若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;
[0011] 根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;
[0012] 接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配。
[0013] 作为优选,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤之后,还包括:
[0014] 统计所述ECU系统完成匹配的防盗钥匙的数量;
[0015] 判断所述防盗钥匙的数量是否大于第一预设值;
[0016] 若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答,其中,所述消极应答用于终止所述防盗钥匙的匹配;
[0017] 若所述防盗钥匙的数量不大于第一预设值,则返回到所述将所述PIN码与所述SK码写入所述ECU系统的步骤,以继续匹配防盗钥匙。
[0018] 作为优选,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤之后,还包括:
[0019] 判断所述车辆的点火开关是否打开;
[0020] 若所述车辆的点火开关打开,判断所述车辆的启动按钮功能是否关闭;
[0021] 若所述车辆的启动按钮功能关闭,则向所述ECU系统发送执行指令,其中,所述执行指令用于同步匹配所述ECU系统中的ID认证盒与方向盘转向锁,以使所述防盗钥匙与ID认证盒、方向盘转向锁关联。
[0022] 作为优选,根据所述第一种子值计算第一密钥值的步骤,包括:
[0023] 获取第一种子值的长度;
[0024] 计算第一种子值的长度与32的商,得到第一商值Na;
[0025] 判断所述第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;
[0026] 若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:
[0027] W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);
[0028] i1=i1+1;
[0029] 其中,W2[i1]为第二密钥值,i1为第一i值;
[0030] 返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;
[0031] 若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;
[0032] 判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;
[0033] 若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:
[0034] i2=i2+1,其中,i2为第二i值,
[0035] X=W2[i2‑1],其中,X为W2[i2‑1]的变量;
[0036] 若X的值不等于0,则
[0037] W3[i2]=W2[i2‑Na]^X;
[0038] 其中,W3[i2]为第一密钥值,符号“^”表示差分运算;
[0039] 返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;
[0040] 根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:
[0041] W1[i]={W2[i1],W3[i2]};
[0042] 其中,所述W1[i]表示第一密钥值。
[0043] 作为优选,所述将所述PIN码与所述SK码写入所述ECU系统的步骤,包括:
[0044] 根据所述PIN码与所述SK码构建第一认证字符串;
[0045] 将所述第一认证字符串发送至所述ECU系统,其中,所述ECU系统将自带的第二认证字符串与第一认证字符串进行比对,若比对成功,向所述诊断设备发送认证成功信号;
[0046] 接收所述认证成功信号,并将所述PIN码与所述SK码写入所述ECU系统。
[0047] 作为优选,所述若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答的步骤之后,还包括:
[0048] 将与所述ECU系统完成匹配的所述防盗钥匙标识为有效钥匙;
[0049] 获取与所述ECU系统完成匹配的历史防盗钥匙;
[0050] 将所述历史防盗钥匙设定为失效钥匙。
[0051] 本申请还提供一种防盗钥匙匹配装置,所述防盗钥匙匹配装置一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,包括:
[0052] 第一发送模块,用于向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式;
[0053] 第一获取模块,用于获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;
[0054] 第一计算模块,用于根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;
[0055] 第一接收模块,用于接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;
[0056] 第二获取模块,用于若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;
[0057] 写入模块,用于根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;
[0058] 第二接收模块,用于接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配。
[0059] 作为优选,第一计算模块包括:
[0060] 第一获取单元,用于获取第一种子值的长度;
[0061] 第一计算模块,用于计算第一种子值的长度与32的商,得到第一商值Na;
[0062] 第一判断单元,用于判断所述第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;
[0063] 第二计算单元,用于若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:
[0064] W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);
[0065] i1=i1+1;
[0066] 其中,W2[i1]为第二密钥值,i1为第一i值;
[0067] 第一返回单元,用于返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;
[0068] 第三计算模块,用于若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;
[0069] 第二判断单元,用于判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;
[0070] 第四计算模块,用于若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:
[0071] i2=i2+1,其中,i2为第二i值,
[0072] X=W2[i2‑1],其中,X为W2[i2‑1]的变量;
[0073] 若X的值不等于0,则
[0074] W3[i2]=W2[i2‑Na]^X;
[0075] 其中,W3[i2]为第一密钥值,符号“^”表示差分运算;
[0076] 第二返回单元,用于返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;
[0077] 第五计算模块,用于根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:
[0078] W1[i]={W2[i1],W3[i2]};
[0079] 其中,所述W1[i]表示第一密钥值。
[0080] 本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述防盗钥匙匹配方法的步骤。
[0081] 本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述防盗钥匙匹配方法的步骤。
[0082] 本申请的有益效果为:通过向ECU系统发送第一控制信号,可以使得诊断设备进入诊断模式,通过获取ECU系统的第一种子值,并根据第一种子值计算第一密钥值,ECU系统将自身的第二密钥值与诊断设备发送到的第一密钥值进行比较,若比较成功,则表示第一密钥值得到ECU系统的认可,代表其允许进行防盗钥匙的匹配,这样诊断设备可检测ECU系统的学习状态,若ECU系统的学习状态为未学习状态,则获取车辆的VIN码,并在预设时间内根据VIN码计算PIN码与SK码,再将PIN码与SK码写入ECU系统,写入完成后ECU系统向防盗钥匙发送匹配指令,以完成防盗钥匙的配匹配。用户可将待匹配钥匙贴近启动按钮(背部天线区域贴近),若ECU系统写入成功,会控制SSB绿色只是灯点亮2S,若写入失败,会控制SSB红色指示灯亮2S。这样,可以便于用户及时了解到当前的防盗钥匙是否与ECU系统匹配成功,不需要用户对防盗钥匙做额外的操作,只需贴近启动按钮即可,操作简单,耗时较短,提高了防盗钥匙匹配的效率。

附图说明

[0083] 图1为本申请一实施例的防盗钥匙匹配方法流程示意图。
[0084] 图2为本申请一实施例的防盗钥匙匹配装置结构示意图。
[0085] 图3为本申请一实施例的计算机设备内部结构示意图。
[0086] 本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0087] 应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0088] 如图1‑图3所示,本申请提出一种防盗钥匙匹配方法,应用于诊断设备,所述诊断设备一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,包括:
[0089] S1、向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式;
[0090] S2、获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;
[0091] S3、根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;
[0092] S4、接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;
[0093] S5、若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;
[0094] S6、根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;
[0095] S7、接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配。
[0096] 如上述步骤S1‑S7所述,通过向ECU系统发送第一控制信号,可以使得诊断设备进入诊断模式,第一控制信号可采用UDS(UnifiedDiagnosticServices,统一的诊断服务)指令,由于ECU系统的控制单元均启用了UDS服务,因此,可向ECU系统发送基于UDS的第一控制信号,从而使得诊断设备能够控制ECU系统,通过获取ECU系统的第一种子值,并根据第一种子值计算第一密钥值,ECU系统将自身的第二密钥值与诊断设备发送到的第一密钥值进行比较,若比较成功,则表示第一密钥值得到ECU系统的认可,代表其允许进行防盗钥匙的匹配,这样诊断设备可检测ECU系统的学习状态,如果检测结果是已学习状态,则代表ECU系统已经与某些防盗钥匙进行匹配了,若ECU系统的学习状态为未学习状态,则表示ECU系统为新装的或处于原装状态,此状态下ECU系统未与任何防盗钥匙进行匹配,为了确保当前匹配的防盗钥匙具有唯一性,本实施例选择在ECU系统的学习状态为未学习状态下进行匹配,通过获取车辆的VIN码,并在预设时间内根据VIN码计算PIN码与SK码,再将PIN码与SK码写入ECU系统,写入完成后ECU系统向防盗钥匙发送匹配指令,以完成一把防盗钥匙的配匹配。具体的,在写入PIN码与SK码时,用户可将待匹配钥匙贴近启动按钮(背部天线区域贴近),若ECU系统写入成功,会控制SSB绿色只是灯点亮2S,若写入失败,会控制SSB红色指示灯亮2S。这样,可以便于用户及时了解到当前的防盗钥匙是否与ECU系统匹配成功,不需要用户对防盗钥匙做额外的操作,只需贴近启动按钮即可,操作简单,耗时较短,提高了防盗钥匙匹配的效率。更优的,若ECU系统为已学习状态,可以通过复位功能,将其恢复到未学习状态。
[0097] 在一个实施例中,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤S7之后,还包括:
[0098] S701、统计所述ECU系统完成匹配的防盗钥匙的数量;
[0099] S702、判断所述防盗钥匙的数量是否大于第一预设值;
[0100] S703、若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答,其中,所述消极应答用于终止所述防盗钥匙的匹配;
[0101] S704、若所述防盗钥匙的数量不大于第一预设值,则返回到所述将所述PIN码与所述SK码写入所述ECU系统的步骤,以继续匹配防盗钥匙。
[0102] 如上述步骤S701‑S704所述,在完成了一把防盗钥匙的匹配之后,可统计当前的防盗钥匙的数量,由于一辆汽车可能存在多个用户,因此会对多把钥匙进行匹配,但是ECU系统会自带最大允许匹配数,因此可先获取ECU系统的最大允许匹配数,即第一预设值,再判断当前的防盗钥匙的数量是否超过第一预设值,若没有超过,可返回到所述将所述PIN码与所述SK码写入所述ECU系统的步骤,直接向ECU系统写入PIN码与所述SK码,而不必再从向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式的步骤S1开始,即当ECU系统对诊断设备表示认可之后,可直接对多把(不超过第一预设值)防盗钥匙进行匹配,这样能够简化多把防盗钥匙的匹配流程,减少多把防盗钥匙匹配的时间,节约时间、操作成本。
[0103] 在一个实施例中,所述接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配步骤S7之后,还包括:
[0104] S705、判断所述车辆的点火开关是否打开;
[0105] S706、若所述车辆的点火开关打开,判断所述车辆的启动按钮功能是否关闭;
[0106] S707、若所述车辆的启动按钮功能关闭,则向所述ECU系统发送执行指令,其中,所述执行指令用于同步匹配所述ECU系统中的ID认证盒与方向盘转向锁,以使所述防盗钥匙与ID认证盒、方向盘转向锁关联。
[0107] 如上述步骤S701‑S707所述,某些品牌车辆的防盗钥匙除了要与ECU系统匹配外(与ECU系统中的PEPS[(PassiveEntryPassiveStart,无钥匙进入及启动系统)]匹配),还需要ECU系统中的ID认证盒、方向盘转向锁匹配,这样才能够更大程度的保护车辆的安全性;因此,为了使得本实施例中的诊断设备能够对市面上大部分的车型进行防盗钥匙匹配,在防盗钥匙与ECU系统匹配成功后,可以基于车辆的品牌、型号,将防盗钥匙与ID认证盒、方向盘转向锁关联,从而使得该防盗钥匙获得ID认证盒与方向盘转向锁的认可,从而完成防盗钥匙的匹配,更优的,对于某些仅与PEPS系统匹配就能开启车辆的防盗钥匙,也可以选择将该防盗钥匙与ID认证盒、方向盘转向锁进行关联,这样相对于原始的防盗钥匙,新匹配的防盗钥匙能够加强车辆的安全性。
[0108] 在一个实施例中,根据所述第一种子值计算第一密钥值的步骤S3,包括:
[0109] S301、获取第一种子值的长度;
[0110] S302、计算第一种子值的长度与32的商,得到第一商值Na;
[0111] S303、判断所述第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;
[0112] S304、若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:
[0113] W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);
[0114] i1=i1+1;
[0115] 其中,W2[i1]为第二密钥值,i1为第一i值;
[0116] S305、返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;
[0117] S306、若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;
[0118] S307、判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;
[0119] S308、若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:
[0120] i2=i2+1,其中,i2为第二i值,
[0121] X=W2[i2‑1],其中,X为W2[i2‑1]的变量;
[0122] S309、若X的值不等于0,则
[0123] W3[i2]=W2[i2‑Na]^X;
[0124] 其中,W3[i2]为第一密钥值,符号“^”表示差分运算;
[0125] S310、返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;
[0126] S311、根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:
[0127] W1[i]={W2[i1],W3[i2]};
[0128] 其中,所述W1[i]表示第一密钥值。
[0129] 如上述步骤S301‑S311所述,通过上述计算公式,可精确计算出第一密钥值,为了便于理解,下面举例进行说明:例如,第一种子值为{2,27,1,0,55…,71},假设第一种子值的长度为128位(包括128位数值),那么第一商值Na则为4,第一i值从0开始,由于0小于4,因此,第二密钥值W2[0]=([4*0]+[4*0+1]+[4*0+2]+[4*0+3])=6,之后,i1=i1+1,则第一i值等于1,此时,再次判断1是否小于4,若小于,那么W2[1]=([4*1]+[4*1+1]+[4*1+2]+[4*1+3])=22,之后,i1=i1+1,则第一i值等于1,再返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤,依次计算W2[2]、W2[3]、W2[4]…,直到第一i值大于第一商值Na为止;此时,则计算第一种子值的长度与4的商,得到第二商值Nb,第二商值为32,判断第二i值是否小于第二商值Nb,此时,第二i值的初始值为第一商值Na,即第二i值的初始值等于Na等于4,判断4是否小于32,若小于,i2=i2+1,即i2等于5,再通过X=W2[i2‑1]计算X的值,W2[i2‑
1]=W2[5‑1]=W2[4],则X的值等于当i1为4时,W2[4]的值,假设W2[4]的值为58,则W3[5]=W2[5‑4]^58,则W3[5]=W2[1]^58=22^58,再返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb,则得到W3[5]、W3[6]、W3[7]、W3[8]、W3[9],则第一密钥值等于W2[i1]与W3[i2]的集合,即W1[i]={W2[0],W2[1],W2[2],W2[3],W2[4],W3[5]、W3[6]、W3[7]、W3[8]、W3[9]…}
[0130] 在一个实施例中,所述将所述PIN码与所述SK码写入所述ECU系统的步骤S6,包括:
[0131] S61、根据所述PIN码与所述SK码构建第一认证字符串;
[0132] S62、将所述第一认证字符串发送至所述ECU系统,其中,所述ECU系统将自带的第二认证字符串与第一认证字符串进行比对,若比对成功,向所述诊断设备发送认证成功信号;
[0133] S63、接收所述认证成功信号,并将所述PIN码与所述SK码写入所述ECU系统。
[0134] 如上述步骤S61‑S63所述,通过构建第一认证字符串能够获取向ECU系统写入PIN码与所述SK码的权限,这样便于将PIN码与SK码写入ECU系统中。其中,SK(AccessKeyId)码用于标示用户(诊断设备),若第一认证字符串与第二认证字符串比对成功,则ECU系统会认为诊断设备拥有指定的操作权限,从而ECU系统会根据诊断设备的指令执行相应的步骤,而不再需要获取额外的权限,对于写入PIN码来说,写入SK码能够提高防盗钥匙的匹配效率。
[0135] 在一个实施例中,所述若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答的步骤S703之后,还包括:
[0136] S7031、将与所述ECU系统完成匹配的所述防盗钥匙标识为有效钥匙;
[0137] S7032、获取与所述ECU系统完成匹配的历史防盗钥匙;
[0138] S7033、将所述历史防盗钥匙设定为失效钥匙。
[0139] 如上述步骤S7031‑S7033所述,通常用户会在钥匙丢失或损坏的情况下,重新进行防盗钥匙匹配,为了防止已经匹配的防盗钥匙还能开启车辆,可将本次完成匹配的防盗钥匙标识为有效钥匙,而将之前匹配的防盗钥匙设定为失效钥匙,这样能够防止其他人捡到之前的防盗钥匙后,开启车辆,即可以屏蔽已丢失的钥匙;更优的,若用户找到丢失的钥匙了,可对该钥匙进行重新注册,即重复上述步骤S1‑S7。
[0140] 本申请还提供一种防盗钥匙匹配装置,所述防盗钥匙匹配装置一端与车辆的ECU系统连接,另一端与防盗钥匙无线连接,包括:
[0141] 第一发送模块1,用于向所述ECU系统发送第一控制信号,以使所述诊断设备进入诊断模式;
[0142] 第一获取模块2,用于获取所述ECU系统的第一种子值,以开启所述ECU系统的用户权限;
[0143] 第一计算模块3,用于根据所述第一种子值计算第一密钥值,并将所述第一密钥值发送至所述ECU系统,其中,所述ECU系统将自带的第二密钥值与第一密钥值做比较,并向比较结果发送至所述诊断设备;
[0144] 第一接收模块4,用于接收所述比较结果,并根据所述比较结果检测ECU系统的学习状态,其中,学习状态包括已学习状态与未学习状态;
[0145] 第二获取模块5,用于若根据所述比较结果检测ECU系统的学习状态为未学习状态,则获取车辆VIN码;已学习状态:复位PEPSECU至未学习”功能恢复ECU至未学习状态。
[0146] 写入模块6,用于根据所述VIN码计算PIN码与SK码,并将所述PIN码与所述SK码写入所述ECU系统,其中,所述PIN码与所述SK码写入完成后,所述ECU系统生成匹配指令;
[0147] 第二接收模块7,用于接收所述匹配指令,并将所述匹配指令发送至所述防盗钥匙,以使所述防盗钥匙与所述ECU系统完成匹配。
[0148] 在一个实施例中,所述防盗钥匙匹配装置,还包括:
[0149] 统计模块,用于统计所述ECU系统完成匹配的防盗钥匙的数量;
[0150] 第一判断模块,用于判断所述防盗钥匙的数量是否大于第一预设值;
[0151] 反馈模块,用于若所述防盗钥匙的数量大于第一预设值,则向所述ECU系统反馈消极应答,其中,所述消极应答用于终止所述防盗钥匙的匹配;
[0152] 返回模块,用于若所述防盗钥匙的数量不大于第一预设值,则返回到所述将所述PIN码与所述SK码写入所述ECU系统的步骤,以继续匹配防盗钥匙。
[0153] 在一个实施例中,所述防盗钥匙匹配装置,还包括:
[0154] 第二判断模块,用于判断所述车辆的点火开关是否打开;
[0155] 第三判断模块,用于若所述车辆的点火开关打开,判断所述车辆的启动按钮功能是否关闭;
[0156] 第二发送模块,用于若所述车辆的启动按钮功能关闭,则向所述ECU系统发送执行指令,其中,所述执行指令用于同步匹配所述ECU系统中的ID认证盒与方向盘转向锁,以使所述防盗钥匙与ID认证盒、方向盘转向锁关联。
[0157] 在一个实施例中,第一计算模块3包括:
[0158] 第一获取单元,用于获取第一种子值的长度;
[0159] 第一计算模块,用于计算第一种子值的长度与32的商,得到第一商值Na;
[0160] 第一判断单元,用于判断所述第一i值是否小于或等于所述第一商值Na,其中,所述第一i值的初始值为0;
[0161] 第二计算单元,用于若所述第一i值小于或等于所述第一商值Na,则计算第二密钥值,其中,计算公式为:
[0162] W2[i1]=([4*i1]+[4*i1+1]+[4*i1+2]+[4*i1+3]);
[0163] i1=i1+1;
[0164] 其中,W2[i1]为第二密钥值,i1为第一i值;
[0165] 第一返回单元,用于返回到所述判断所述第一i值是否小于或等于所述第一商值Na的步骤;
[0166] 第三计算模块,用于若所述第一i值大于所述第一商值Na,计算第一种子值的长度与4的商,得到第二商值Nb;
[0167] 第二判断单元,用于判断第二i值是否小于第二商值Nb,其中,所述第二i值的初始值为第一商值Na;
[0168] 第四计算模块,用于若所述第二i值小于第二商值Nb,则计算第三密钥值,其中,计算公式为:
[0169] i2=i2+1,其中,i2为第二i值,
[0170] X=W2[i2‑1],其中,X为W2[i2‑1]的变量;
[0171] 若X的值不等于0,则
[0172] W3[i2]=W2[i2‑Na]^X;
[0173] 其中,W3[i2]为第一密钥值,符号“^”表示差分运算;
[0174] 第二返回单元,用于返回到所述判断第二i值是否小于第二商值Nb的步骤,直至所述第二i值不小于第二商值Nb;
[0175] 第五计算模块,用于根据所述第二密钥值与所述第三密钥值计算所述第一密钥值,其中,计算公式为:
[0176] W1[i]={W2[i1],W3[i2]};
[0177] 其中,所述W1[i]表示第一密钥值。
[0178] 在一个实施例中,写入模块6,包括:
[0179] 构建单元,用于根据所述PIN码与所述SK码构建第一认证字符串;
[0180] 比对单元,用于将所述第一认证字符串发送至所述ECU系统,其中,所述ECU系统将自带的第二认证字符串与第一认证字符串进行比对,若比对成功,向所述诊断设备发送认证成功信号;
[0181] 写入单元,用于接收所述认证成功信号,并将所述PIN码与所述SK码写入所述ECU系统。
[0182] 在一个实施例中,所述防盗钥匙匹配装置,还包括:
[0183] 标识模块,用于将与所述ECU系统完成匹配的所述防盗钥匙标识为有效钥匙;
[0184] 第三获取模块,用于获取与所述ECU系统完成匹配的历史防盗钥匙;
[0185] 设定模块,用于将所述历史防盗钥匙设定为失效钥匙。
[0186] 如图3所示,本申请还提供了一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储防盗钥匙匹配方法的过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现防盗钥匙匹配方法。
[0187] 本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
[0188] 本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一个防盗钥匙匹配方法。
[0189] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0190] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
[0191] 以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。