鉴源实验室 | AUTOSAR E2E:车载通信的安全保障

news2024/12/17 17:49:11

作者 | 沈平 上海控安可信软件创新研究院汽车网络安全组

来源 | 鉴源实验室

社群 | 添加微信号“TICPShanghai”加入“上海控安51fusa安全社区”

随着汽车行业逐步走向电气化、智能化,车载系统的软件和硬件复杂度不断上升。如何确保这些复杂系统中的数据通讯安全和可靠,已成为业界关注的焦点。E2E(End-to-End)通讯常常指的是一个信息从发送端到接收端的完整传输过程,保障通讯中数据的完整性与安全性。AUTOSAR (AUTomotive Open System ARchitecture) 是一个全球汽车工业的标准化项目,旨在为嵌入式汽车软件创造一个共同的标准。在AUTOSAR架构中,软件被分为三个主要层次:应用软件 (ASW, Application Software),基础软件 (BSW, Basic Software),以及运行时环境 (RTE, Runtime Environment)。E2E通常是在ASW层实现的,它确保应用级的数据通信在发送和接收时的完整性。图1所示为在AUTOSAR架构中E2E保护示例图。在图1中E2E能够减轻BSW层软硬件以及ECU之间网络通讯的故障。

图片

图1 通过E2E保护减轻故障的示例图

功能安全是关于硬件和软件系统在出现故障时仍然保持安全状态的能力。在车载系统中,例如ISO 26262标准定义了如何评估和确保汽车电子/电气系统的功能安全。当进行功能安全评估时,可以考虑E2E保护作为降低数据通信相关风险的一个措施。

E2E之所以能够保证一定程度的功能安全是因为E2E保护的目标是确保数据在传输过程中的完整性,避免由于噪声、干扰或软件错误导致的数据损坏或失真。它包括两大核心要素:

1. 通过计算和验证校验和或CRC(循环冗余校验),确保数据在传输过程中没有被篡改或损坏。如果一个关键系统(例如制动系统或转向系统)收到了损坏或篡改的数据,它可能会做出不正确的决策,从而导致功能失效甚至危险情况。E2E保护通过确保数据完整性来减少这种风险。

2. 通过顺序计数器(Counter)来确保消息按预期的顺序到达,能够检测丢失的消息或重复的消息。如果接收端的计数器值与预期不符,这可能是由于消息丢失或者重复。对于某些功能安全关键的应用,如自动驾驶或紧急刹车,如果系统收到的数据是间断的,可能会导致不适当或延迟的响应。

接下里将结合AUTOSAR官方文档中的E2E Profile 1例子,具体阐述E2E是如何工作的。

E2E Profile 1由以下四个组件构成:

  • CRC:循环冗余检查。Profile 1通常使用一个8位的CRC,采用CRC-8-SAE J1850-0x1D多项式计算。

  • Counter:计数器在每次消息发送时增加。对于Profile 1,这通常是一个4位的值,这意味着它的范围是从0到14。当达到最大值后,计数器会回绕到0。

  • Data ID:用来唯一标识数据元素或消息的标识符。对于Profile 1,这通常是16位的值,用来参与计算CRC,但不会进行实际的数据传输。

  • Timeout monitoring:超时监控是由E2E管理模块对counter的值计算得到。

需要注意的是E2E保护中的CRC不同于CAN或者FlexRay通讯协议的CRC校验。其中CAN或者FlexRay通讯协议的CRC是由通信控制器中的硬件支持提供,并不是由E2E管理模块生成的。E2E保护中的CRC是CAN或者FlexRay通讯协议中传输的数据段内容。另外Counter的值是0到14,值15是用来表示错误的。

在AUTOSAR 官方文档中E2E Profile 1对于CRC以及Counter是可以自定义其起始位置的,在本文中将CRC起始位置定义为bit 0且长度为8,Counter起始位置定义为bit 8,且长度为4。如图2所示。

图片

图2 E2E保护报文矩阵示意图

CRC的计算过程中,一般会对整个报文传输的数据进行校验。其中未使用的bit位用0xFF代替。根据图2报文矩阵定义,CRC的计算如图3计算示意图所示,在图3中CRC计算的结果填充在了报文的第一个Byte,Counter值填充在了报文第二个Byte的低位。

图片

图3 CRC计算示意图

E2E保护的工作原理,作为发送端需要对每一条消息增加顺序计数器的值,使用Data ID、Counter以及传输数据计算CRC,将Counter和CRC添加到消息中并发送。作为接收方使用接收到的Data和Counter计算CRC,检查计算出的CRC是否与接收到的CRC匹配,检查Counter值以确定消息的连续性。如果在接收端CRC不匹配,这意味着数据可能已经被损坏。根据系统的需求,可以选择触发一个错误报告或者采取其他的错误处理措施。如果Counter值不是预期的(例如,如果它比上一条消息的值小),这可能意味着消息是过时的或者已经被重复。同样,可以根据具体情境进行处理,如丢弃数据或者触发一个警告。对于Counter校验机制如图4所示。

图片

图4 counter校验机制

在图4中,会根据配置的参数对counter进行校验,配置项包括允许最大的丢帧的数量,允许重复的计数器的数量等。通过对计数器的校验,会导致8种E2E状态:

  • E2E_P01STATUS_OK:Counter计数器正确并且CRC校验正确。

  • E2E_P01STATUS_NONEWDATA:一个报文周期内未接收到该E2E报文。

  • E2E_P01STATUS_WRONGCRC:CRC校验失败。

  • E2E_P01STATUS_SYNC:在收到期望之外的Counter后,收到了一个正确的CRC与合理的Counter。

  • E2E_P01STATUS_INITIAL:初始化阶段。

  • E2E_P01STATUS_REPEATED:收到的Counter是重复的。

  • E2E_P01STATUS_OKSOMELOST:接收到的E2E报文连续两帧之间的Counter差值大于1但小于MaxDeltaCounterInit。

  • E2E_P01STATUS_WRONGSEQUENCE:接收到的E2E报文连续两帧之间的Counter差值大于MaxDeltaCounterInit。

以上,本文对E2E保护机制的核心概念以及实现原理进行了简单的阐述。如果想对E2E保护机制在AUTOSAR中如何进行配置,需要进一步阅读AUTOSAR官方文档。

参考文献:

AUTOSAR.(2022).E2E Protocol Specification. AUTOSAR Standard Working Specification.

AUTOSAR.(2022).pecification of SW-C End-to End Communication Protection Library. AUTOSAR Standard Working Specification.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1140242.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Arduino驱动热敏电阻传感器模块

目录 一、简介二、参数性能三、使用方法四、实验现象 一、简介 点击图片购买 热敏电阻传感器模块采用NTC热敏电阻传感器,灵敏度好,PH2.0接口即插即用,防反接,适用于各类开发板。 二、参数性能 电压5V接口3PIN防反接PH2.0杜邦线尺…

BigDecimal应用——计算费用场景中用到Integer,Double,BigDecimal三种类型出现的意外情况 结合BigDecimal源码分析

引出 在一个计算费用的场景中,用到了Integer,Double,BigDecimal三种类型,在转换为bigdecimal的时候遇到的问题,结合源码进行了分析。 1.在new bigdecimal的时候,最好传入的是字符串;2.double类…

Java集合框架:List、Set、Map类型及泛型详解

文章目录 📕我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。🌎跑过十五…

干货!BIM高性能3D Web轻量化引擎——HOOPS Communicator!

HOOPS Communicator是一款简单而强大的工业级高性能3D Web可视化开发包,专注于Web端工程图形渲染。采用了先进的流式加载方式,并支持服务端和客户端渲染,是可以在云端进行部署和无缝集成的新技术平台。灵活且易于部署,可在以工程为…

你绝对不知道的接口加密解决方案:Python的各种加密实现

在现代软件开发中,接口测试已经成为了不可或缺的一部分。随着互联网的普及,越来越多的应用程序都采用了接口作为数据传输的方式。接口测试的目的是确保接口的正确性、稳定性和安全性,从而保障系统的正常运行。 在接口测试中,加密…

InterfaceWave 架构图

场景 正在开发一个Web应用,接口中很多重复逻辑(重复逻辑已经被抽象),我使用一个Adapter适配器,就可以自己生成接口,不用再一个一个C S D 写重复逻辑,我只需要在配置文件中配置,接口…

软件测试外包干了4年,感觉废了...

​先说一下自己的情况,大专生,18年通过校招进入湖南某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

Nokogiri库和OpenURI库使用HTTP做一个爬虫

Nokogiri和OpenURI是两个常用的Ruby库,用于编写爬虫程序。它们的主要功能如下: 1、Nokogiri:Nokogiri是一个强大的HTML和XML解析库,可以用于解析网页内容。它提供了一组简单易用的API,可以方便地遍历和操作HTML或XML文…

对遗留系统的处理——(二)具体方法

对于遗留系统的分析和评价,具体方法是按照业务评价分值和技术水平分值的情况,把评价结果分为4种类型,如下图所示。 (1)改造 (2)继承 (3)淘汰 (4)集…

如何 通过使用优先级提示,来控制所有网页资源加载顺序

当你打开浏览器的网络标签时,你会看到大量的活动。资源正在下载,信息正在提交,事件正在记录,等等。 由于有太多的活动,有效地管理这些流量的优先级变得至关重要。带宽争用是真实存在的,当所有请求同时触发时…

前端知识储备

前端知识储备 一. 什么是前端? """ 任何与用户直接打交道的操作界面都可以称之为前端 比如:电脑界面 手机界面 平板界面什么是后端后端类似于幕后操作者(一堆让人头皮发麻的代码)不直接跟用户打交道 """ 二. 为什么学前端? ""&quo…

基于springboot实现校友社交平台管理系统项目【项目源码+论文说明】

基于springboot实现校友社交平台管理系统演示 摘要 校友社交系统提供给用户一个校友社交信息管理的网站,最新的校友社交信息让用户及时了解校友社交动向,完成校友社交的同时,还能通过论坛中心进行互动更方便。本系统采用了B/S体系的结构,使用了java技…

【阅读和学习代码】VoxelNet

文章目录 将点特征 转换为 voxel 特征 将点特征 转换为 voxel 特征 https://github.com/skyhehe123/VoxelNet-pytorch/blob/master/data/kitti.py 【Python】np.unique() 介绍与使用 self.T : # maxiumum number of points per voxel def preprocess(self, lidar…

直播预告 | YashanDB 2023年度发布会正式定档11月2日,邀您共同见证国产数据库发展实践!

11月2日,YashanDB 2023年度发布会将于云端直播开启,发布会以 「惟实励新」 为主题,邀请企业用户、合作伙伴、广大开发者共同见证全新产品与解决方案。届时发布会将在墨天轮社区同步进行,欢迎大家报名! 惟实求真。Yasha…

在线设计数据库表用Itbuilder,极简易用真香!!!

“如果您想要一个具有快速搜索运行的高性能数据库,那么数据库设计是必不可少的,花时间设计数据库将帮助您避免效率低下和高冗余等问题”。 在线数据库设计软件itbuilder,界面清爽漂亮,功能简洁,没有多余设置很容易上手…

CE-LVD证书跟CE-EMC证书有什么区别?

CE-LVD证书跟CE-EMC证书有什么区别? CE-LVD证书跟CE-EMC证书有什么区别? 近日,TEMU平台电器需提交CE-LVD证书,不再接受EMC证书---玩具产品需提交满足玩具法规的CE证书,法规总是多变的,卖家也是很苦恼&…

雪糕冰淇淋经营配送小程序商城效果如何

雪糕冰淇淋是很多年轻人喜欢的食品之一,市面上的雪糕品牌类型众多,销售模式主要为厂家批发、经销商零售等,由于雪糕冰淇淋的易化性,很多用户会选择就近购买,但制作技术升级和长途冷藏技术下,网购成为另一种…

Remote Local File Inclusion (RFI/LFI)-文件包含漏洞

在Web应用开发过程中,程序开发者经常会把具有某一功能的部分代码封装起来形成独立的文件,在后续想实现该功能时,就不需要重复编写,直接调用文件,大大提高编程效率。这种调用文件的过程一般被称为文件包含。开发人员为了使代码更灵活,会将被包含的文件设置为变量,用来进行…

基于LDA的隐式标签协同过滤推荐算法_文勇军

, 王全民等人[14]提出了一种交替奇异值分解算法 (ASVD),即结合协同过滤和隐语义分析的混合推荐 算法。唐泽坤等人[15]融合聚类算法和协同过滤推荐 算法,取得了一定效果。高娜等人[16⁃19]将标签因子 和协同过滤推荐算法结合研究缓解了数据稀疏问题,但这…

2023年【安全生产监管人员】考试报名及安全生产监管人员复审考试

题库来源:安全生产模拟考试一点通公众号小程序 安全生产监管人员考试报名是安全生产模拟考试一点通总题库中生成的一套安全生产监管人员复审考试,安全生产模拟考试一点通上安全生产监管人员作业手机同步练习。2023年【安全生产监管人员】考试报名及安全…