1.一种基于can总线的信息加密传输方法,can总线的信息加密由两个通信ecu组成,ecu1进行加密信息发送,ecu2进行加密信息接收;其特征在于:所述ecu1中包含通信模块a和加密模块;所述ecu2中包含通信模块b和解密模块;ecu1的通信模块a将通信报文发送给内部加密模块,加密模块处理后生成加密报文,生成的加密报文再通过ecu1的通信模块a发送给ecu2的通信模块b,ecu2的通信模块b将接收到的加密报文传递给ecu2的解密模块进行解密处理,解密成功或失败的结果信息再由ecu2的通信模块b反馈给ecu1的通信模块a。
2.根据权利要求1所述的一种基于can总线的信息加密传输方法,其特征在于:
所述加密报文采用8字节数据场。
3.根据权利要求2所述的一种基于can总线的信息加密传输方法,其特征在于:
将byte0定义为操作指令信息,byte1-byte3定义为加密报文的时间戳信息。
4.根据权利要求3所述的一种基于can总线的信息加密传输方法,其特征在于:
所述加密报文采用0-16777215顺序编码。
5.根据权利要求4所述的一种基于can总线的信息加密传输方法,其特征在于:
byte4-byte7为前byte0-byte3的数据与密钥进行aes算法转换后截取的高4字节加密数据。
6.根据权利要求5所述的一种基于can总线的信息加密传输方法,其特征在于,所述加密信息的传输方法,包括以下步骤:
1)ecu1的通信模块a将所有加密的信息传递给ecu1的加密模块;
2)ecu1的加密模块将所含信息的操作指令放于加密报文中的byte0字节,将初始的时间戳在发送前做加1操作,置于加密报文中的byte1-byte3字节;
3)ecu1的byte0-byte3的数据与密钥进行aes算法转换后截取的高4字节加密数据置于byte4-byte7字节中;
4)ecu1的加密模块将处理后的加密报文传递给ecu1的通信模块a;
5)ecu1的通信模块a将该加密报文通过can总线发送给ecu2的通信模块b;
6)ecu2的通信模块b将接收到的加密报文传递给ecu2的解密模块进行数据解密;
7)ecu2的解密模块将收到的加密报文的byte0-byte3与密钥进行aes算法转换后截取高4字节加密数据与ecu1的byte4-byte7进行对比,相同则执行第8)步,不相同则终止,并将失败结果反馈给ecu1;
8)ecu2的解密模块将byte1-byte3与自身的时间戳进行差值判断,若来自ecu1的byte1-byte3的时间戳与ecu2内部的时间戳数值差值大于等于1且小于等于10,则执行byte0的操作指令并将自身存储的时间戳替换为ecu1中byte1-byte3的时间戳数据,否则终止,并将失败结果反馈给ecu1。
7.根据权利要求6所述的一种基于can总线的信息加密传输方法,其特征在于:
通过can总线信息加密传输方法实现远程启动发动机报文发送,ecu1为tbox,ecu2为peps,tbox和peps提前写入相同的密钥值,时间戳初始值均设置为0,按照以下步骤执行:
1)tbox的通信模块a将启动发动机的信号传递给tbox的加密模块;
2)tbox的加密模块将启动发动机的操作指令放于加密报文中的byte0字节,将初始的时间戳在发送前做加1操作,放于加密报文中的byte1-byte3字节;
3)tbox的byte0-byte3的数据与密钥进行aes算法转换后截取的高4字节加密数据放于byte4-byte7字节中;
4)tbox的加密模块将处理后的加密报文传递给tbox的通信模块a;
5)tbox的通信模块a将该加密报文通过can总线发送给peps的通信模块b;
6)peps的通信模块b将接收到的加密报文传递给peps的解密模块进行数据解密;
7)peps的解密模块将收到的加密报文的byte0-byte3与密钥进行aes算法转换后截取高4字节加密数据与tbox的byte4-byte7进行对比,通过比对后,比对结果相同;
8)peps的解密模块将byte1-byte3与自身的时间戳进行差值判断,来自tbox的byte1-byte3的时间戳与peps内部的时间戳数值差值等于1,peps将执行启动发动机的指令,并将自身存储的时间戳替换为tbox中byte1-byte3的时间戳数据1,整个加密通信过程结束。
8.根据权利要求6所述的一种基于can总线的信息加密传输方法,其特征在于:
通过can总线信息加密传输方法实现远程解锁车门报文发送,ecu1为tbox,ecu2为bcm,tbox和bcm提前写入不同的密钥值,时间戳初始值均设置为0,按照以下步骤执行:
1)tbox的通信模块a将解锁车门的信号传递给tbox的加密模块;
2)tbox的加密模块将解锁车门的操作指令放于加密报文中的byte0字节,将初始的时间戳在发送前做加1操作,放于加密报文中的byte1-byte3字节;
3)tbox的byte0-byte3的数据与密钥进行aes算法转换后截取的高4字节加密数据放于byte4-byte7字节中;
4)tbox的加密模块将处理后的加密报文传递给tbox的通信模块a;
5)tbox的通信模块a将该加密报文通过can总线发送给bcm的通信模块b;
6)bcm的通信模块b将接收到的加密报文传递给bcm的解密模块进行数据解密;
7)bcm的解密模块将收到的加密报文的byte0-byte3与自身密钥进行aes算法转换后截取高4字节加密数据与tbox的byte4-byte7进行对比,由于tbox和bcm的密钥值不同,所以比对结果不同,bcm将失败结果反馈给tbox,通讯结束,bcm未能执行远程解锁车门的操作。
9.根据权利要求6所述的一种基于can总线的信息加密传输方法,其特征在于:
通过can总线信息加密实现遥控解锁行李箱报文发送,ecu1为ble,ecu2为bcm,双方提前写入相同密钥值,ble的时间戳设置为10,bcm的时间戳设置为0,按照以下步骤执行:
1)ble的通信模块a将遥控解锁行李箱的信号传递给bcm的加密模块;
2)ble的加密模块将遥控解锁行李箱的操作指令放于加密报文中的byte0字节,将初始的时间戳在发送前做加1操作,放于加密报文中的byte1-byte3字节;
3)ble的byte0-byte3的数据与密钥进行aes算法转换后截取的高4字节加密数据放于byte4-byte7字节中;
4)ble的加密模块将处理后的加密报文传递给ble的通信模块a;
5)ble的通信模a块将该加密报文通过can总线发送给bcm的通信模块b;
6)bcm的通信模块b将接收到的加密报文传递给bcm的解密模块进行数据解密;
6)bcm的解密模块将收到的加密报文的byte0-byte3与密钥进行aes算法转换后截取高4字节加密数据与ble的byte4-byte7进行对比,通过比对后,比对结果相同;
8)bcm的解密模块将byte1-byte3与自身的时间戳进行差值判断,来自ble的byte1-byte3的时间戳与bcm内部的时间戳数值差值等于11,时间戳差值超出设定的范围,通讯终止,bcm将失败结果反馈给ble,bcm未能执行遥控解锁行李箱的操作。