汽车信息安全入门总结(2)

news2024/10/7 3:21:35

目录

1.引入

2.汽车信息安全技术

3.密码学基础知识

4.小结


1.引入

上篇汽车信息安全入门总结(1)-CSDN博客主要讲述了汽车信息安全应该关注的点,以及相关法规和标准,限于篇幅,继续聊信息安全相关技术以及需要掌握的密码学基础知识。

2.汽车信息安全技术

车联网的迅猛发展使得汽车和驾乘人员充分暴露在黑客的攻击范围内,故汽车信息安全保护的不仅是车,还有更重要的是驾乘人员,所以理清汽车信息安全技术关注的范畴是关键所在。

国际上有很多关于汽车信息安全的车辆模型,如EVITA车载网络参考架构、日本IPA Car信息安全模型、PRESERVE的V2X安全通信系统,它们模型基础概念相似,均是从云、管、端三个方面提出汽车信息安全相关需求。

所以我的研究路径是这样:首先了解每个方向上的信息安全概念和基本应用,然后就自己手头业务锚定一个方向深入。

以车端为例,我习惯以手上开发的ECU为基础,了解当前件在不同OEM的整车电子电气架构中扮演什么角色,总结长城Geep3.0、大众E3、华为域控架构、吉利浩瀚SEA架构等等,本质还是与Bosch提出的域控概念类似,主要分为智驾域、中央网关、动力域、车身域、信息娱乐域控,如下:

在了解上述域控及其下挂子节点的功能feature后,我们可以根据OEM的通信矩阵来识别出带SecOC属性的报文,并根据信号定义摸索出一些资产定义的共性,同时也可以对整车的功能互联有一定的了解。

有了这个基本概念后,研究难度陡升。

  • ECU安全防护技术:我是以蓝方思维来思考信息安全这件事的,因此会想构建起一些底层框架。这部分了解了常见的安全攻击手段,例如非授权访问、恶意软件篡改、重放攻击、溢出攻击等等,针对这些手段,去尝试了解和梳理ECU的安全系统架构。从硬件开始,熟悉和调研市面常见的HSM技术,再往上内核操作系统针对上述攻击的安全防护技术,例如防火墙、系统加固、IDS等等,最后再衍生到AP和CP AUTOSAR中的信息安全机制。借用AUTOSEMO的一张图,沿着这个思路,应该可以建立起很好的纵深防御思路。

  • 车内安全通信,目前来说车内通信以CAN\CANFD、车载以太网为主,LIN、FlexRay为辅,这些总线通信的信息安全一般通过身份认证、数据完整性、数据加密等技术来保证,例如基于CAN的SecOC技术、车内以太网通信使用TLS。除此之外,现目前智能网联汽车还推出了近程无线通信技术,例如蓝牙、WIFI等,这一系列车载网络技术是需要了解,但做过的人都知道,就一个SecOC就得大半年功夫加上实车经验才能融会贯通;
  • 安全启动,这部分逻辑比较简单,就是运行应用程序前,必须有一个授信主体(例如HSM)来验证应用程序的数据完整性和真实性。主要争议点在于安全启动和OEM要求的启动时间的矛盾,所以建议对这部分内容进行深度TARA分析,并做相应的风险处置措施;
  • 安全升级,在智能网联汽车里,有具备自更新能力的智能ECU,也有传统车控ECU。因此需要有一个控制器作为整车OTA的主控设备,一般来讲可用TBOX也可以用中央网关,负责差分或者整包升级,而安全升级的信息安全尤为重要,故需要了解OEM升级包制作、服务器升级包管理、OTA主控设备数据完整性、机密性、身份认证等。从这个逻辑再深入到某ECU中的OTA企标,基本就知道自己在干啥。

除了上述技术外,还包括安全调试、安全监测、日志管理、安全存储等。这里没有涉猎,不列举了。

3.密码学基础知识

针对传统汽车人来说,密码学属于跨学科新知识,来了不可怕,重要的是掌握方法快速入门。

针对信息安全,掌握的就是基础知识,这里建议了解概念:

  • 对称算法、非对称算法、哈希函数的基本常识:
    • 对称算法:DES、AES、流密码、分组密码工作模式(cbc\ecb\cfb\ofb)
    • 非对称算法:数学难题、RSA、ECC、SM2、DH等,数字签名的方式;
    • 哈希函数:什么是哈希函数、什么是抗碰撞性、SHA2\3、HMAC等
  • 密钥管理基本常识:
    • 什么是数字证书;
    • 密钥槽位设计;
    • 密钥导入、密钥交换、密钥派生等标准的熟悉

这部分完全得靠自己去琢磨,不过好在我们有哔站这等学习利器,这里非常建议学习Dan Boneh的密码学讲稿,具体链接:【完结合集】Dan Boneh的密码学 第一季【伊卡酱全程译注】_哔哩哔哩_bilibili【完结合集】Dan Boneh的密码学 第一季【伊卡酱全程译注】共计13条视频,包括:绪论、流密码、分组密码等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV1yx411T78i/?vd_source=74e0140f5de57bae80a97b0307c64609

4.小结

可以发现,关于汽车信息安全的涉及面太广了,从传统信息安全跨行进入汽车行业的大佬需要了解汽车相关基础知识,而传统ECU开发的工程师对传统信息安全晦涩的技术又有些难以下口,每一项都需要实操经验才能有所领悟,这也是目前市场上难以找到这种复合人才的原因。

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

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

相关文章

SpringCloud学习笔记(一)微服务介绍、服务拆分和RestTemplate远程调用、Eureka注册中心

文章目录 1 认识微服务1.1 单体架构1.2 分布式架构1.3 微服务1.4 SpringCloud1.5 总结 2 服务拆分与远程调用2.1 服务拆分原则2.2 服务拆分示例2.2.1 搭建项目2.2.2 创建数据库和表2.2.3 实现远程调用2.2.3.1 需求描述2.2.3.2 注册RestTemplate2.2.3.3 实现远程调用 2.2.4 提供…

Aiseesoft Data Recovery for Mac:专业数据恢复软件

Aiseesoft Data Recovery for Mac是一款高效且专业的数据恢复软件,专为Mac用户量身打造。 Aiseesoft Data Recovery for Mac v1.8.22激活版下载 无论是由于误删、格式化还是系统崩溃等原因导致的数据丢失,Aiseesoft都能帮助您快速找回。 它采用先进的扫描…

【计算机毕业设计】基于SSM++jsp的社区管理与服务系统【源码+lw+部署文档+讲解】

目录 摘 要 Abstract 第一章 绪论 第二章 系统关键技术 第三章 系统分析 3.1.1技术可行性 3.1.2经济可行性 3.1.3运行可行性 3.1.4法律可行性 3.4.1注册流程 3.4.2登录流程 3.4.3活动报名流程 第四章 系统设计 4.3.1登录模块顺序图 4.3.2添加信息模块顺序图 4.4.1 数据库E-…

SpringCloud系列(21)--更换Ribbon的负载均衡模式

前言:在上一篇文章中我们介绍了关于Ribbon的知识点已经如果去应用Ribbon,而本章节内容则是关于如何去切换Ribbon的负载均衡模式。 以下是上篇文章的部分内容,可以再看下熟悉下,方便后续理解 Ribbon工作架构图 Ribbon的负载均衡模式…

C# winform 漂亮的日期时间控件

源代码下载: https://download.csdn.net/download/gaoxiang19820514/89242240 效果图 在 HZH-Controls控件 基础上修改的日期控件 因为HZH_Controls控件 中的日期控件太大了, 我的程序中需要多个日期时间的控件放不下,主题是绿色的&#…

pkpmbs 建设工程质量监督系统 Ajax_operaFile.aspx 文件读取漏洞复现

0x01 产品简介 pkpmbs 建设工程质量监督系统是湖南建研信息技术股份有限公司一个与工程质量检测管理系统相结合的,B/S架构的检测信息监管系统。 0x02 漏洞概述 pkpmbs 建设工程质量监督系统 Ajax_operaFile.aspx接口处存在文件读取漏洞,未经身份认证的攻击者可以利用漏洞读…

使用 Docker 自建一款怀旧游戏之 - 扫雷

1)扫雷 简介 扫雷 是一种经典的单人电脑游戏,最初由微软公司在 1990 年代开发并内置在 Windows 操作系统中。游戏的目标是在一个由方块组成的网格上揭开所有非地雷的方块,而不触发地雷。每个方块上都标有数字,表示周围 8 个方块中…

26版SPSS操作教程(高级教程第十七章)

目录 前言 粉丝及官方意见说明 第十七章一些学习笔记 第十七章一些操作方法 聚类分析 均值聚类法(快速聚类法) 假设数据 预分析(描述统计) 先将除了ID变量的每个变量除以其最大值进行标准化操作 具体操作 结果解释 聚…

OpenCV如何在图像中寻找轮廓

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV如何模板匹配 下一篇 :OpenCV系列文章目录(持续更新中......) 目标 在本教程中,您将学习如何: 使用 OpenCV 函数 cv::findContour…

【Web】D^3CTF之浅聊d3pythonhttp——TE-CL请求走私

目录 step0 题目信息 step1 jwt空密钥伪造 step1.5 有关TE&CL的lab step2 TE-CL请求走私 payload1 payload2 step0 题目信息 注意到题目源码前端是flask写的,后端是web.py写的 frontend from flask import Flask, request, redirect, render_templat…

KMP算法与next数组【超详细】

一、朴素匹配法 S "abgabcd" T "abcd" 假设有两个字符串,要判断字符串T是否在字符串S中出现过&#xff0c;你会怎么做&#xff1f;一般来说我们都是这样&#xff0c;一个一个对比&#xff1a; #include<iostream> using namespace std; int mai…

机器学习:逻辑回归

概念 首先&#xff0c;逻辑回归属于分类算法&#xff0c;是线性分类器。我们可以认为逻辑回归是在多元线性回归的基础上把结果给映射到0-1的区间内&#xff0c;hθ&#xff08;x&#xff09;越接近1越有可能是正例&#xff0c;反之&#xff0c;越接近0越有可能是负例。那么&am…

C++中list的使用

文章目录 一、 list简介二、 构造函数1. 默认构造函数2. 拷贝构造3. 迭代器区间初始化4. 插入n个值为x的数据5. 代码示例 三、 容量和元素访问1. empty()2. size()3. max_size()3. back()4. front()5. 代码示例 四、 增删查改1. push_back()2. push_front()3. emplace_back()4.…

stm32f103zet6_串口实现-DHT11-tim1(定时)

1思路 1打开时钟 1.1使用定时器实现us级的计时 1.2在打开串口 1,3在DHT11驱动中修改引脚 stm32cudeMX 配置 1打开时钟 2打开串口 3打开tim1(定时器) 4生成代码 代码设置 1导入DHT11库(tim.h是定时器的文件系统自动生成的) DHT11.c #include "dht11.h" #inc…

机器学习:基于Sklearn、XGBoost框架,使用逻辑回归、支持向量机和XGBClassifier来诊断并预测一个人是否患有自闭症

前言 系列专栏&#xff1a;机器学习&#xff1a;高级应用与实践【项目实战100】【2024】✨︎ 在本专栏中不仅包含一些适合初学者的最新机器学习项目&#xff0c;每个项目都处理一组不同的问题&#xff0c;包括监督和无监督学习、分类、回归和聚类&#xff0c;而且涉及创建深度学…

nuxt3使用记录五:禁用莫名其妙的Tailwind CSS(html文件大大减小)

发现这个问题是因为&#xff0c;今天我突然很好奇&#xff0c;我发现之前构建的自动产生的200.html和404.html足足290k&#xff0c;怎么这么大呢&#xff1f;不是很占用我带宽&#xff1f; 一个啥东西都没有的静态页面&#xff0c;凭啥这么大&#xff01;所以我就想着手动把他…

爬虫实战-房天下(bengbu.zu.fang.com/)数据爬取

详细代码链接https://flowus.cn/hbzx/3c42674d-8e6f-42e3-a3f6-bc1258034676 import requests from lxml import etree #xpath解析库 def 源代码(url): cookies { global_cookie: xeqnmumh38dvpj96uzseftwdr20lvkwkfb9, otherid: b44a1837638234f1a0a15e…

Android Studio的笔记--布局文件

关于Layout布局文件的使用 LinearLayoutRelativeLayout之前文章的内容一些常见性质在android.graphics.Color中定义了12种常见的颜色常数线性布局LinearLayout 一些常见使用文本框TextView设置文本内容编辑框EditText获取文本内容按钮Button控件使用其他按钮修改图标及名称添加…

HEVC/H.265视频编解码学习笔记–框架及块划分关系

前言 由于本人在学习视频的过程中&#xff0c;觉得分块单元太多搞不清楚其关系&#xff0c;因此本文着重记录这些分块单元的概念以及关联。 一、框架 视频为一帧一帧的图像&#xff0c;其编码的主要核心是压缩空间以及时间上的冗余。因此&#xff0c;视频编码有帧内预测和帧间…

C语言函数指针的使用、函数指针数组及使用、指向函数指针数组的指针,指针进阶版的冒泡排序等介绍

文章目录 前言一、函数指针的使用1. 加减乘除计算器普通实现2. 加减乘除计算机函数指针实现 二、函数指针数组1. 函数指针数组的书写2. 两个有趣的代码3. 函数指针数组的使用 三、指向函数指针数组的指针四、指针进阶_冒泡排序1.整型冒泡排序2. C语言qsort函数3. 仿写C语言qsor…