System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及车载can总线通信,具体涉及一种低成本高可靠的车载can总线安全通信方法及安全通信系统。
技术介绍
1、车载can总线是一种广泛应用于车辆内部通信的串行通信协议,应用于汽车不同电子控制单元(ecu)之间的通信。车载can总线的应用场景包括动力控制、制动系统、空调系统、娱乐系统、仪表盘、安全系统等。这些ecu之间需要频繁交换信息,以确保车辆正常运行。can总线硬件和协议相对简单,成本较低,具有实时性、可靠性、可扩展性等优点,但can总线也存在一些信息安全隐患。can总线上的数据通常以明文形式传输,容易被窃听,导致信息泄漏。ecu之间缺乏有效的身份认证机制,可能导致非法ecu的注入攻击,破坏车辆的正常操作。由于缺乏数据验证和加密,攻击者可以重放先前的can消息,引发意外操作。
2、为解决这些问题,autosar引入了secoc(secure onboard communication),它是一种用于车辆内部通信的安全机制。secoc使用加密和认证技术保护can消息的完整性,防止信息篡改。secoc可以确保ecu之间的身份验证,防止非法ecu的注入攻击。通过在消息中加入新鲜值管理,secoc可以检测和抵御重放攻击,确保只有合法的消息被接受和执行。
3、然而,secoc也存在一些不足之处。譬如,secoc只支持can-fd协议而不支持can协议,需要成本更高的硬件和更复杂的软件支持,增加了成本和开发难度;消息数据依然是明文发送,无法保护消息的机密性。
4、还有一些技术虽然对消息数据进行了
5、基于此,本专利技术设计了一种低成本高可靠的车载can总线安全通信方法及安全通信系统以解决上述问题。
技术实现思路
1、针对现有技术所存在的上述缺点,本专利技术提供了一种低成本高可靠的车载can总线安全通信方法及安全通信系统。
2、为实现以上目的,本专利技术通过以下技术方案予以实现:
3、一种低成本高可靠的车载can总线安全通信系统,包括:
4、网关,用于转发密钥预置指令,完成can总线上各ecu的初始密钥预置;
5、ecu_a作为can消息发送端,用于把明文数据认证加密后的密文消息发送至ecu_b;
6、具体的,ecu_a利用通信密钥、真实同步id和can消息id,通过轻量级aead算法把明文数据加密同步生成密文数据和原生认证码,然后把密文数据、由原生认证码生成的消息认证码和显式同步id组合成密文消息,并将密文消息发送至ecu_b;
7、ecu_b作为can消息接收端,用于把密文消息解密验签后得到明文消息数据;
8、具体的,ecu_b计算接收到的密文消息的显式同步id与自身维护的隐式同步id是否一致,如果一致,则解密验签通过后,隐式同步id在255或65535的模内加1,真实同步id加1;如果不一致,继续判断显式同步id和隐式同步id的差值是否在允许范围内;若差值iddiff在允许范围内,则隐式同步id在255或65535的模内加上(1+iddiff)的和,真实同步id加上(1+iddiff)的和,否则上报异常;ecu_b把明文数据返回给业务处理。
9、一种低成本高可靠的车载can总线安全通信系统的安全通信方法,包括:
10、a、网关转发上位机或者tsp平台的密钥预置指令,完成包括网关在内的can总线上各ecu的初始密钥预置;
11、b、ecu_a把明文数据认证加密后的密文消息发送至ecu_b;
12、具体的,ecu_a利用通信密钥、真实同步id和can消息id,通过轻量级aead算法把明文数据加密同步生成密文数据和原生认证码,然后把密文数据、由原生认证码生成的消息认证码和显式同步id组合成密文消息,并将密文消息发送至ecu_b;
13、c、ecu_b把密文消息解密验签后得到明文消息数据;
14、具体的,ecu_b计算接收到的密文消息的显式同步id与自身维护的隐式同步id是否一致,如果一致,则解密验签通过后,隐式同步id在255或65535的模内加1,真实同步id加1;如果不一致,继续判断显式同步id和隐式同步id的差值是否在允许范围内;若差值iddiff在允许范围内,则隐式同步id在255或65535的模内加上(1+iddiff)的和,真实同步id加上(1+iddiff)的和,否则上报异常;ecu_b把明文数据返回给业务处理。
15、进一步的,通信密钥的生成流程为:
16、步骤1-1,判断是否满足以下条件:ecu_a发现当前can消息id的通信密钥为空,或者ecu_b分发了新的任何can消息id的通信密钥;满足条件时进行步骤1-2;
17、步骤1-2,ecu_a从硬件随机数生成器或伪随机数生成器获取到一串随机数;
18、步骤1-3,对该随机数做哈希运算,取哈希值的最高3字节和最低3字节依序组合成6字节的数据序列作为此can消息id的通信密钥。
19、进一步的,通信密钥的分发流程为:
20、步骤2-1,ecu_a从启动、故障等异常恢复后,把此can消息id的真实同步id、隐式同步id、显式同步id恢复至初始值零;
21、步骤2-2,ecu_a利用此can消息id的通讯密钥、真实同步id和can消息id,通过轻量级aead算法把通信密钥加密同步生成密文数据和原生认证码;密文数据的长度同样为6个字节;
22、步骤2-3,判断是否在can协议场景下;
23、若在can协议场景下,显式同步id占用1个字节,取值为255,表明此条消息为通信密钥的分发消息;则取原生认证码的最高4个比特和最低4个比特依序拼接而成消息认证码;
24、若不在can协议场景下,而是在包括can-fd协议在内的其它场景下,显式同步id占用2个字节,取值为65535,同样表明此条消息为通信密钥的分发消息;则取原生认证码的最高1个字节和最低1个字节依序拼接而成消息认证码;
25、步骤2-4,ecu_a把密文数据、消息认证码和显式同步id依序拼接组合成通信密钥分发消息,并将通信密钥分发消息发送到can总线上;
26、ecu_b作为can消息接收端,用于把密文消息解密验签后得到明文消息数据;
27、步骤2-5,ecu_b判断接收到的can消息的显式同步id是否为255或65535,如果是,则进入通信密钥分发消息处理流程。
28、进一步的,通信密钥分发消息处理流程为:
29、步骤s1,ecu_b使用此can消息id的通讯密钥、真实同步id和can消息id对接收到的密文消息解密验签;
30、步骤s2,判断是否验签成功;
31、如果验签成功,说明此消息的确是通信密钥分发消息;
32、如果验签失败,则认为接本文档来自技高网...
【技术保护点】
1.一种低成本高可靠的车载CAN总线安全通信系统,其特征在于,包括:
2.一种根据权利要求1所述的低成本高可靠的车载CAN总线安全通信系统的安全通信方法,其特征在于,包括:
3.根据权利要求2所述的低成本高可靠的车载CAN总线安全通信方法,其特征在于,通信密钥的生成流程为:
4.根据权利要求3所述的低成本高可靠的车载CAN总线安全通信方法,其特征在于,通信密钥的分发流程为:
5.根据权利要求4所述的低成本高可靠的车载CAN总线安全通信方法,其特征在于,通信密钥分发消息处理流程为:
6.根据权利要求5所述的低成本高可靠的车载CAN总线安全通信方法,其特征在于,ECU_A加密流程与ECU_B解密流程共同构成业务数据加密解密传输流程;
7.根据权利要求6所述的低成本高可靠的车载CAN总线安全通信方法,其特征在于,在CAN协议场景下,明文数据长度不超过6个字节,由轻量级AEAD算法生成的密文长度与明文长度相等;在CAN-FD协议场景下,明文数据长度不超过60个字节,由轻量级AEAD算法生成的密文长度与明文长度相等。<
...【技术特征摘要】
1.一种低成本高可靠的车载can总线安全通信系统,其特征在于,包括:
2.一种根据权利要求1所述的低成本高可靠的车载can总线安全通信系统的安全通信方法,其特征在于,包括:
3.根据权利要求2所述的低成本高可靠的车载can总线安全通信方法,其特征在于,通信密钥的生成流程为:
4.根据权利要求3所述的低成本高可靠的车载can总线安全通信方法,其特征在于,通信密钥的分发流程为:
5.根据权利要求4所述的低成本高可靠的车载can总线安全通信方法,其特征在于,通信密钥分发消息处理流程为:
6.根据权利要求5所述的低成本高可靠的车载can总线安全通信方法...
【专利技术属性】
技术研发人员:李桂良,杨晶,张东,冯世杰,谭乐安,江浩良,谢艺枝,
申请(专利权)人:智极广州科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。