车载总线消息认证密钥学习方法、系统及可读存储介质技术方案

技术编号:33630916 阅读:11 留言:0更新日期:2022-06-02 01:34
本发明专利技术具体涉及车载总线消息认证密钥学习方法、系统及可读存储介质。方法包括:生成第一随机数;基于第一随机数以及对应车辆识别号和默认密钥生成第一散列值,并将第一随机数和第一散列值发送给被学习件;被学习件基于第一随机数核验第一散列值;核验通过后,被学习件基于随机数以及对应车辆识别号和默认密钥生成通信密钥,然后基于第一随机数生成等长的第二随机数,并基于通信密钥和第二随机数生成对应的第二散列值;基于第二随机数和通信密钥核验第二散列值,以完成被学习件的密钥学习。本发明专利技术还相应的公开了密钥学习系统及可读存储介质。本发明专利技术的车载总线消息认证密钥学习方法能够解决明文传输通信密钥容易泄露的问题。能够解决明文传输通信密钥容易泄露的问题。能够解决明文传输通信密钥容易泄露的问题。

【技术实现步骤摘要】
车载总线消息认证密钥学习方法、系统及可读存储介质


[0001]本专利技术涉及密钥学习
,具体涉及车载总线消息认证密钥学习方法、系统及可读存储介质。

技术介绍

[0002]随着车联网越来越普及,信息安全在整车层面备受重视。其中,整车信息安全包括ECU(Electronic Control Unit,电子控制单元)内部通信安全和车外信息安全。为了防止攻击者或者用户独自更换ECU导致行车危险或者偷盗行为的发生,就需要进行内部ECU通信安全的车载总线消息认证。
[0003]然而,车内采用的CAN网络的封闭性随着车联网的发展不再安全,因此需要采用对称加密、非对称加密等加密措施来对设备进行认证。例如,公开号为CN109150514A的中国专利就公开了《一种密钥的写入方法及设备》,其引出了对无钥匙启动系统和工作系统控制器进行密钥写入的一种方法,该方法是用诊断仪直接对系统发送密钥,通过工作系统控制器的计算来对接收的密钥进行认证。
[0004]上述现有方案的密钥写入方法的部分密钥是以明文的形式发送,过程依赖诊断仪,增加了诊断仪软件开发和密钥管理的难度。目前,消息认证密钥学习通常是通过上位机或电检设备直接对ECU的认证密钥进行明文刷写,或者通过服务器与ECU用非对称加解密方式来对车载总线消息认证密钥进行学习。然而,现有密钥学习方法需要对密钥明文和加密值进行管理,才能对学习到的密钥进行校验,导致密钥学习的实效性不好。同时,在密钥传输的过程中,明文传输的通信密钥存在被监听泄露的风险,导致密钥学习的安全性不好。因此,如何设计一种能够提升密钥学习实效性和安全性的密钥学习方是亟需解决的技术问题。

技术实现思路

[0005]针对上述现有技术的不足,本专利技术所要解决的技术问题是:如何提供一种车载总线消息认证密钥学习方法,以能够解决明文传输通信密钥容易泄露的问题,从而提升密钥学习的安全性和实效性。
[0006]为了解决上述技术问题,本专利技术采用了如下的技术方案:一种车载总线消息认证密钥学习方法,包括以下步骤:S1:生成第一随机数;S2:基于第一随机数以及对应车辆识别号和默认密钥生成第一散列值,并将第一随机数和第一散列值发送给被学习件;S3:被学习件基于第一随机数核验第一散列值;S4:第一散列值核验通过后,被学习件基于随机数以及对应车辆识别号和默认密钥生成通信密钥,然后基于第一随机数生成等长的第二随机数,并基于通信密钥和第二随机数生成对应的第二散列值;
S5:基于第二随机数和通信密钥核验第二散列值,以完成被学习件的密钥学习。
[0007]优选的,步骤S2和S4中,基于第一随机数以及对应车辆识别号和默认密钥结合不同的加密算法,分别生成对应的第一散列值和通信密钥。
[0008]优选的,加密算法包括但不限于AES算法、DES算法、RSA算法和椭圆曲线算法。
[0009]优选的,步骤S4中,通过对第一随机数进行转换的方式得到等长的第二随机数。
[0010]优选的,转换的方式包括但不限于行数组列式转换、散列算法、异或运算和点乘运算。
[0011]优选的,步骤S5中,若第二散列值核验通过,则生成密钥学习成功的指令;否则,生成密钥学习失败的指令。
[0012]本专利技术还公开了一种车载总线消息认证密钥学习系统,其基于本专利技术的密钥学习方法实施,具体包括:网关模块,用于生成第一随机数,并能够基于第一随机数以及对应车辆识别号和默认密钥生成第一散列值;被学习件,用于基于第一随机数核验第一散列值,并能够基于随机数以及对应车辆识别号和默认密钥生成通信密钥,然后基于第一随机数生成等长的第二随机数,最后基于通信密钥和第二随机数生成对应的第二散列值;所述网关模块还用于基于第二随机数和通信密钥核验第二散列值。
[0013]优选的,网关模块和被学习件基于第一随机数以及对应车辆识别号和默认密钥结合不同的加密算法,分别生成对应的第一散列值和通信密钥。
[0014]优选的,被学习件通过对第一随机数进行转换的方式得到等长的第二随机数。
[0015]本专利技术还公开了一种可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现本专利技术的车载总线消息认证密钥学习方法的步骤。
[0016]本专利技术的车载总线消息认证密钥学习方法与现有技术相比,具有如下有益效果:本专利技术通过网关生成第一随机数并结合默认密钥和车辆识别号生成第一散列值,进而发送第一随机数和第一散列值到总线上;被学习件(ECU)通过收到的第一随机数以及已知的车辆识别号和默认密钥对第一散列值进行校验;校验通过后基于第一随机数生成等长的第二随机数,同时计算出通信密钥,并通过通信密钥和第二随机数生成第二散列值;网关对收到的第二散列值进行校验,以完成被学习件的密钥学习。本专利技术的被学习件不需要做复杂的运算便能够实现密钥学习,进而能够提升密钥学习的实效性,并且节约了硬件成本,从而能够降低密钥学习的成本。同时,本专利技术在密钥学习时避免了明文传输通信密钥,解决了通信密钥容易泄漏的问题,从而能够提升密钥学习的安全性。
附图说明
[0017]为了使专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步的详细描述,其中:图1为车载总线消息认证密钥学习方法的逻辑框图。
具体实施方式
[0018]下面通过具体实施方式进一步详细的说明:
实施例一:本实施例中公开了一种车载总线消息认证密钥学习方法。
[0019]如图1所示,车载总线消息认证密钥学习方法,包括以下步骤:S1:(通过网关或其他集成网关功能的零部件)生成第一随机数R;S2:基于第一随机数R以及对应车辆识别号VIN和默认密钥MK生成第一散列值MAC1,并将第一随机数R和第一散列值MAC1发送给被学习件;S3:被学习件(ECU)基于第一随机数R核验第一散列值MAC1;S4:第一散列值核验MAC1通过后,被学习件基于随机数R以及对应车辆识别号VIN和默认密钥MK生成通信密钥CK,然后基于第一随机数R生成等长的第二随机数R1,并基于通信密钥CK和第二随机数R1生成对应的第二散列值MAC2;S5:(通过网关或其他集成网关功能的零部件)基于第二随机数R1和通信密钥CK核验第二散列值MAC2,以完成被学习件的密钥学习。若第二散列值核验通过,则生成密钥学习成功的指令;否则,生成密钥学习失败的指令。
[0020]需要说明的是,本专利技术的车载总线消息认证密钥学习方法可通过程序编程的方式生对应的成软件代码或软件服务,进而能够在服务器和计算机上运行和实施。
[0021]具体的,通过诊断仪或其他电检设备触发密钥学习指令,并且在向被学习件发送第一随机数和第一散列值之前,先对被学习件进行27认证(即iso27701认证,现有的一种认证方法)。网关或其他集成网关功能的零部件以及被学习件均集成有可通过加密算法生成密钥的加密模块。网关或其他集成网关功能的零部件以及被学习件均预置有默认密钥MK,并且整车的ECU具有相同的车辆识别号VIN。
[0022]其中,MAC1=C本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.车载总线消息认证密钥学习方法,其特征在于,包括以下步骤:S1:生成第一随机数;S2:基于第一随机数以及对应车辆识别号和默认密钥生成第一散列值,并将第一随机数和第一散列值发送给被学习件;S3:被学习件基于第一随机数核验第一散列值;S4:第一散列值核验通过后,被学习件基于随机数以及对应车辆识别号和默认密钥生成通信密钥,然后基于第一随机数生成等长的第二随机数,并基于通信密钥和第二随机数生成对应的第二散列值;S5:基于第二随机数和通信密钥核验第二散列值,以完成被学习件的密钥学习。2.如权利要求1所述的车载总线消息认证密钥学习方法,其特征在于:步骤S2和S4中,基于第一随机数以及对应车辆识别号和默认密钥结合不同的加密算法,分别生成对应的第一散列值和通信密钥。3.如权利要求2所述的车载总线消息认证密钥学习方法,其特征在于:加密算法包括但不限于AES算法、DES算法、RSA算法和椭圆曲线算法。4.如权利要求1所述的车载总线消息认证密钥学习方法,其特征在于:步骤S4中,通过对第一随机数进行转换的方式得到等长的第二随机数。5.如权利要求4所述的车载总线消息认证密钥学习方法,其特征在于:转换的方式包括但不限于行数组列式转换、散列算法、异或运算和点乘运算。6.如权利要求1所述的车...

【专利技术属性】
技术研发人员:汪向阳阙菲张贤谭成宇
申请(专利权)人:重庆长安汽车股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1