一种用于汽车电子控制单元通信的密钥交换方法技术

技术编号:22649120 阅读:59 留言:0更新日期:2019-11-26 17:54
本发明专利技术涉及一种用于汽车电子控制单元通信的密钥交换方法,包括以下步骤:步骤一、选择加密对象,将多个电子控制单元分类为Master和Slave;步骤二、系统初始化,Slave接入Master,Master检查是否需要生成密钥参数;若是,则生成密钥参数,并同时存入到Master和Slave的安全存储区域;若否,则使用原有已经生成的密钥参数;步骤三、实时生成密钥,车辆每次点火后,Master和Slave分别生成一个随机数,依据密钥参数与随机数生成密钥;步骤四、数据加密,Master通过密钥加密需要向Slave发送的通信数据,Slave通过密钥加密需要向Master发送的通信数据。本发明专利技术的用于汽车电子控制单元通信的密钥交换方法,加密成本低,无需建立专门的服务器存储密钥,密钥泄露风险低,具有很高的安全性。

A key exchange method for communication of automobile electronic control unit

The invention relates to a key exchange method for automobile electronic control unit communication, which comprises the following steps: Step 1, selecting encryption object, classifying multiple electronic control units into master and slave; step 2, system initialization, slave accessing master, master checking whether key parameters need to be generated; if so, key parameters are generated and stored in master and slave at the same time If not, use the original generated key parameters; step 3: generate the key in real time. After each ignition of the vehicle, master and slave generate a random number respectively, and generate the key according to the key parameters and random numbers; step 4: encrypt the data. Master encrypts the communication data that needs to be sent to slave through the key. Slave encrypts the communication data that needs to be sent to mast through the key Communication data sent by ER. The key exchange method for automobile electronic control unit communication of the invention has the advantages of low encryption cost, no need to establish special server to store key, low risk of key leakage and high security.

【技术实现步骤摘要】
一种用于汽车电子控制单元通信的密钥交换方法
本专利技术涉及汽车领域,特别是关于一种用于汽车电子控制单元通信的密钥交换方法。
技术介绍
随着智能网联车辆的快速发展,汽车信息安全事件层出不穷,智能网联车辆的信息安全问题越来越引起重视。汽车内部电子控制单元之间的通信由于受到传统通信方式的制约,通常采用的是明文传输,数据很容易遭到破解、重放等,成为一个汽车被攻击的弱点。为了改善通信安全性,目前常用方法是对通信数据进行加密,利用消息验证码保证数据的完整性和真实性。一般使用的是对称密码算法。使用对称密码算法,需要用到密钥,就要对密钥进行管理(例如产生、存储、使用等)。目前常用方法是在车辆下线前通过诊断方式注入密钥到电子控制单元内部,同时密钥需要存储在服务器数据库中,需要进行复杂的密钥管理。
技术实现思路
有鉴于此,本专利技术为解决上述技术问题,提供一种用于汽车电子控制单元通信的密钥交换方法,加密成本低,无需建立专门的服务器存储密钥,密钥泄露风险低,具有很高的安全性。本专利技术的目的通过以下技术方案实现:一种用于汽车电子控制单元通信的密钥交换方法,用于将汽车内部多个电子控制单元之间的通信明文数据转化为加密数据以提高数据安全性,包括以下步骤:步骤一、选择加密对象,将多个电子控制单元分类为Master和Slave,Master向Slave发送通信数据,Slave亦向Master发送通信数据;步骤二、系统初始化,Slave接入Master,Master检查是否需要生成密钥参数;若是,则生成密钥参数,并同时存入到Master和Slave的安全存储区域;若否,则使用原有已经生成的密钥参数;步骤三、实时生成密钥,车辆每次点火后,Master和Slave分别生成一个随机数,依据密钥参数与随机数生成密钥;步骤四、数据加密,Master通过密钥加密需要向Slave发送的通信数据,Slave通过密钥加密需要向Master发送的通信数据。优选的,步骤二中,Slave通过诊断工具与Master连接并进入到诊断模式。优选的,在诊断模式中,Master检查是否需要生成密钥参数。优选的,Master检查到需要生成密钥参数时,Master生成一个素数q和一个整数a,a是q的一个原根。优选的,Master把q和a通过明文数据形式发送给Slave,Master和Slave把q和a值存储在外部不能读取的安全存储区域。优选的,步骤三中,每次车辆点火启动时,Master生成一个随机数XM,XM<q,并计算得到YM,同时将YM发送给Slave;Slave生成一个随机数XS,XS<q,并计算得到YS,同时将YS发送给Master。优选的,Master生成密钥K,Master生成的密钥K的计算方式是Slave生成与Master相同的密钥K,Slave生成的密钥K的计算方式是优选的,步骤四中,将密钥长度记为N,从K的低位开始截取位数为N位的数据作为会话密钥KS,Master使用会话密钥KS加密通信数据后发送给Slave,并使用会话密钥KS解密来自Slave的通信数据。优选的,从K的低位开始截取位数为N位的数据作为会话密钥KS,Slave使用会话密钥KS解密来自Master的通信数据,并使用会话密钥KS解密来自Master的通信数据。本专利技术相较于现有技术的有益效果是:本专利技术通过利用Diffie-Hellman算法,对算法使用进行改进,实现电子控制单元的密钥交换。由于车辆每次点火启动时,都会重新生成会话密钥,会话密钥使用周期较短,有效降低了被破解的风险;车辆每次点火启动时会重新生成全新的随机数,并依据随机数得到新的密钥,以密钥来加密通信数据,不仅加密成本低,而且安全性很高,能够有效保证汽车数据的安全性;电子控制单元在首次连接时,生成密钥参数,该密钥参数存入到Master和Slave的安全存储区域内,安全存储区域内不能被外部读取,大大降低密钥泄漏的风险;不需要在生产时就写入密钥,也不需要建立专门的系统去管理通信密钥,仅需在Master与Slave首次连接时,在Master与Slave的安全存储区域内写入密钥参数即可。Diffie-Hellman算法本身存在容易遭受中间人攻击的风险,通过把密钥参数存储在安全存储区域内,使得外部无法获取密钥参数的值,从而避免中间人攻击的现象发生。本专利技术的方法不仅加密成本低,而且无需建立专门的服务器存储密钥,密钥泄露风险低,具有很高的安全性。附图说明图1为本专利技术实施例1中密钥参数生成的流程图。图2为本专利技术实施例1中密钥生成的流程图。具体实施方式为了便于本领域技术人员理解,下面将结合具体实施例及附图对本专利技术作进一步详细描述。请参考图1-2,本专利技术实施例1包括:一种用于汽车电子控制单元通信的密钥交换方法,用于将汽车内部多个电子控制单元之间的通信明文数据转化为加密数据以提高数据安全性,包括以下步骤:步骤一、选择加密对象,将多个电子控制单元分类为Master和Slave,其中,Master的数量为一个,Slave的数量为大于或等于两个,即一个Master与多个不同的Slave连接,Master向Slave发送通信数据,Slave亦向Master发送通信数据。步骤二、系统初始化,多个Slave分别接入到Master,Master逐个对每一个Slave进行检查是否需要生成密钥参数;若是,则生成密钥参数,并同时存入到Master和Slave的安全存储区域;若否,则使用原有已经生成的密钥参数。具体的,Slave通过诊断工具与Master连接并进入到诊断模式;在诊断模式中,Master检查其与Slave的通信是否需要生成密钥参数;Master检查到需要生成密钥参数时,Master生成一个素数q和一个整数a,a是q的一个原根;Master把q和a通过明文数据形式发送给Slave,Master和Slave把q和a值存储在外部不能读取的各自安全存储区域内。步骤三、实时生成密钥,车辆每次点火后,Master和Slave分别生成一个随机数,依据密钥参数与随机数生成密钥。具体的,每次车辆点火启动时,Master生成一个随机数XM,XM<q,并计算得到YM,同时将YM发送给Slave;Slave生成一个随机数XS,XS<q,并计算得到YS,同时将YS发送给Master。Master生成密钥K,密钥K的计算方式是Slave生成密钥K,密钥K的计算方式是Master生成的密钥K和Slave生成的密钥K完全相同。步骤四、数据加密,Master通过密钥加密需要向Slave发送的通信数据,同时Slave亦通过密钥加密需要向Master发送的通信数据。具体的,将密钥长度记为N,从K的低位开始截取位数为N位的数据作为会话密钥KS,Master使用会话密钥KS加密通信数据后发送给Slave,并使用会话密钥KS解密来自Slave的通信数据。从K的低位开始截本文档来自技高网...

【技术保护点】
1.一种用于汽车电子控制单元通信的密钥交换方法,其特征在于,用于将汽车内部多个电子控制单元之间的通信明文数据转化为加密数据以提高数据安全性,包括以下步骤:/n步骤一、选择加密对象,将多个电子控制单元分类为Master和Slave,Master向Slave发送通信数据,Slave亦向Master发送通信数据;/n步骤二、系统初始化,Slave接入Master,Master检查是否需要生成密钥参数;若是,则生成密钥参数,并同时存入到Master和Slave的安全存储区域;若否,则使用原有已经生成的密钥参数;/n步骤三、实时生成密钥,车辆每次点火后,Master和Slave分别生成一个随机数,依据密钥参数与随机数生成密钥;/n步骤四、数据加密,Master通过密钥加密需要向Slave发送的通信数据,Slave通过密钥加密需要向Master发送的通信数据。/n

【技术特征摘要】
1.一种用于汽车电子控制单元通信的密钥交换方法,其特征在于,用于将汽车内部多个电子控制单元之间的通信明文数据转化为加密数据以提高数据安全性,包括以下步骤:
步骤一、选择加密对象,将多个电子控制单元分类为Master和Slave,Master向Slave发送通信数据,Slave亦向Master发送通信数据;
步骤二、系统初始化,Slave接入Master,Master检查是否需要生成密钥参数;若是,则生成密钥参数,并同时存入到Master和Slave的安全存储区域;若否,则使用原有已经生成的密钥参数;
步骤三、实时生成密钥,车辆每次点火后,Master和Slave分别生成一个随机数,依据密钥参数与随机数生成密钥;
步骤四、数据加密,Master通过密钥加密需要向Slave发送的通信数据,Slave通过密钥加密需要向Master发送的通信数据。


2.根据权利要求1所述的用于汽车电子控制单元通信的密钥交换方法,其特征在于,步骤二中,所述Slave通过诊断工具与Master连接并进入到诊断模式。


3.根据权利要求2所述的用于汽车电子控制单元通信的密钥交换方法,其特征在于,在所述诊断模式中,Master检查是否需要生成密钥参数。


4.根据权利要求3所述的用于汽车电子控制单元通信的密钥交换方法,其特征在于,所述Master检查到需要生成密钥参数时,Master生成一个素数q和一个整数a,所述a是q的一个原根。


5.根据权利要求...

【专利技术属性】
技术研发人员:张裁会
申请(专利权)人:惠州市德赛西威智能交通技术研究院有限公司
类型:发明
国别省市:广东;44

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

1