驾考知识网 > 汽车知识

CAN总线信息认证码(MAC)研究

  • 2024-05-13 20:04:17

洪雷 万开明

摘 要:CAN(Controller Area Network)总线技术的发展令人惊叹,基于CAN的车载总线实现ECU(Electronic Control Unit)分布式实时数据通讯,自由通信,总线仲裁。本文提出了在CAN协议基础上增加ECU间(Key)密钥分配与信息认证,简称MAC(Message Authentication Code,信息认证码)。本文会由浅入深阐述当前CAN总线协议基础上的MAC的工作原理与实现方式。

关键词:CAN总线;信息认证;MAC(Message Authentication Code)

1 CAN总线简介

CAN(Controller Area Network)网络由德国Bosch博世公司1991发明,旨在提供一种多ECU(Electronic Control Unit)高性能,稳定性高,成本低,扩展性强,并兼顾总线仲裁的车载总线协议。

2 MAC 信息认证码简介

MAC(信息认证码)通过车载CAN总线中ECU间网络报文的认证,确认信息来源。报文的发送方计算并生成认证码MAC(Message Authentication Code)并包含在报文Data Field中,MAC的数值需要证实数据的完整性和真实性。接收方需要在接受与处理信息之前确认MAC的合法性。设计意图主要有以下几点:

2.1 CAN协议兼容性

MAC数据信息需要支持并符合已有CAN总线协议,无需对已有CAN总线协议进行修改。

2.2 ECU硬件兼容性

MAC的布置无需对ECU模块硬件进行升级或更换,仅更新ECU的软件即可实现MAC认证功能。

2.3 实时性

MAC认证不应消耗过多ECU运算资源,避免因MAC的认证影响车辆正常使用与运行。

2.4 低成本

MAC认证的实施成本低,ECU硬件调整,ECU软件调整费用可控;

2.5 密钥控制成本

密钥的生成,存储,写入,获取,重写,都需要连接OEM后台服务器,增加或减少ECU不改变已有MAC认证策略;

认证场占用部分CAN协议中的 Data Field(数据场)的优点:

a.CAN协议集成度高,模块的CAN协议层经历漫长开发,调整,优化;避免模块重新开发与调试的高昂费用;

b.CAN协议中除Data Field部分,都定义明确;对ECU软件与CAN协议进行最小升级实现MAC功能;

c.为向下兼容提供可能。

3 密钥简介

MAC的生成与安全访问(Security Access)计算方式类似。发送方与接收方需要共享密钥,称为Symmetric Encryption(成对密钥)。发送方与接收方生成MAC,认证MAC都需相同的密钥。在开始通讯前报文的发送方接收方需共享密钥的写入。需要特别指出的是成对密钥无法支持方向性确认。具备确认MAC的真实性的同时也就具有生成MAC的能力。

成对密钥依需设置多组,整车中网络报文的发送方,接收方都有明确规定,一组成对密钥只限于发送方与接受方,无关模块不写入成对密钥。以确保只有已设置权限的获取成对密钥的实体才能生成和认证MAC。

成对密钥存储在ECU的NVM(Non-Volatile-Memory)中,成对密钥不能通过诊断命令直接读取,需要通过模块指定API调用。

4 防重放计数器(Anti-Replay Counter)

与控制器的Security Access类似,MAC也会遇到非法外置设备的重放入侵,穷举测试直到找到正确的成对密钥,防重放场应运而生。非法设备可以通过将监听到的总线报文重放的方式来实现认证与攻击。为了解决重放攻击问题,加入了Anti-Replay Counter意在解決总线报文重放攻击。

报文的接收方需要能够判断出报文是否为重放攻击,报文本身必须包含信息确保此报文仅被发送了一次,否则蓄意攻击方可以在不理解总线内容的情况下进行监听,并在随后实现重放攻击,达成与监听时合法发送方相同的效果。

在认证码防御的方案中, 常见的防御方案有两种:

(1)随机数:发送方与接收方会将随机数写入NVM(Non-Volatile-Memory)中,报文中出现NVM中记录过的随机数则说明是重放侵入。优点是逻辑简单,实现方便,缺点是需要记录的随机数对NVM的占用较高。

(2)流水号:在发送方与接收方之间增加一个逐步递增或递减的标识符,标识符也需要通过加密的方式融合到认证码场中。发送方的标识符如果不连续则说明是重放侵入。优点:相比于随机数,流水号方式对NVM的占用较小。

MAC发送方与接受方的关系如上图:

5 结束语

汽车CAN总线技术是当代汽车行业发展的主流趋势,伴随着车辆电器系统的迅速发展,各大主机厂都在考虑在其已有CAN架构电子架构中,实现了MAC总线信息认证功能,实现确认信息来源增强车载CAN总线的安全性的目的。本文介绍的成对密钥,防重放计数器都是MAC功能实现的核心。

参考文献:

[1]Bosch.Road Vehicles-Controller area network(CAN)[S].ISO 1898-2,2003.

[2]ISO.Road Vehicles-Unified diagnostic services(UDS)[S].ISO 14229-1,2013.

TAG: 密钥总线

相关汽车知识文章

  • 基于汽车排放及大气污染对汽车智能空调设计理念的论述

    刘其林 康光景摘 要:本文基于对大气污染的分析,说明“双向监测驾驶室空气品质的汽车空调智能控制系统及方法”这一项目存在的现实意义,旨在为驾乘人员营造更好的驾驶乘坐环境。重点分析汽车各种排放对大气的污染以及和汽车空调之间的关系,及汽车智能空调...

    2024-05-13 19:58:54
  • 汽车发动机维修中金属磨损自修复技术的应用

    王中海摘 要:近年来我国汽车保有量持续增加,车辆型号与规格向着多元化方向发展,给消费者提供更多的选择,但也造成起着发动机维修工作面临更多的问题。文中通过分析汽车发动机常见故障,结合实际探讨金属磨损自修复技术在发动机故障处理中的应用。关键词:...

    2024-05-13 20:02:05
  • 基于机械电子诊断技术在汽车检测维修中的应用分析

    林勇摘 要:伴随着先进科学技术的发展,传统汽车检修手段在人工操作等因素的影响下,维修效果难以符合要求,为了有效提高汽车检测维修水平,确保汽车安全驾驶,提倡在汽车检测维修中应用机械电子诊断技术。基于此,本文首先对机械电子诊断技术在汽车检测维修...

    2024-05-13 20:29:10
  • “六模块、六对接”的人才培养模式探析

    张鹏鹏摘 要:“六模块、六对接”人才培养模式背景;“六模块、六对接”人才培养模式;“六模块、六对接”人才培养模式的具体实施:(1)企业调研,定位人才培养目标;(2)校企合作共同开发课程体系;(3)教学内容对接工作任务,确定核心课程;(4)校...

    2024-05-13 20:16:22
  • 新能源汽车用动力电池管理系统设计

    李晓霖 王志强 李春鹏摘 要:电对于新能源汽车而言,其在运行过程中十分重要的参数就是电池荷电状态(SOC, state-of-charge)。电池荷电状态的综合估算算法主要包括由静态自学习残余电量算法、动态安时计量法和扩展卡尔曼滤波算法三個...

    2024-05-13 20:04:16
  • 超高泳透力电泳涂料参数影响膜厚的研究

    周俊鹏 徐峰 徐康 张正业 唐胜利摘 要:本文介绍了超高泳透力涂料的优点,并讨论了槽液更新率、固体份、温度、电压、灰份和MEQ对膜厚的影响机理。实验探究量化了各参数对上膜能力影响程度。关键词:超高泳透力;膜厚随着环保理念的不断深入和法律法规...

    2024-05-13 20:43:38