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

news/2024/10/9 15:21:40/

目录

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.ppmy.cn/news/1447328.html

相关文章

Linux 第十七章

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…

微信小程序常用的api

基础API: wx.request:用于发起网络请求,支持GET、POST等方式,是获取网络数据的主要手段。wx.showToast:显示消息提示框,通常用于向用户展示操作成功、失败或加载中等状态。wx.showModal:显示模态…

打水问题(贪心算法)

题目:有n个人排队到r个水龙头去打水,他们装满水桶的时间t1、t2………tn为整数且各不相等,应如何安排他们的打水顺序才能使他们总共花费的时间最少?通过键盘输入排队打水的人数以及每人打水的时间和水龙头数,使用贪心算…

Spring Data JPA数据批量插入、批量更新真的用对了吗

Spring Data JPA系列 1、SpringBoot集成JPA及基本使用 2、Spring Data JPA Criteria查询、部分字段查询 3、Spring Data JPA数据批量插入、批量更新真的用对了吗 前言 在前两篇文章已经介绍过,在使用Spring Data JPA时,DAO层的Respository通过继承J…

Rust特征对象

一、特征对象是什么,有什么用,怎么用 1、特征对象是什么 特征对象指向实现了 某种特征的类型的实例,这种映射关系是存储在一张表中,可以在运行时通过特征对象找到具体调用的类型方法 可以通过 & 引用或者 Box 智能指针的方式…

TiDB系列之:使用TiUP部署TiDB集群最新版本,同时部署TiCDC的详细步骤

TiDB系列之:使用TiUP部署TiDB集群最新版本,同时部署TiCDC的详细步骤 一、部署TiDB集群二、准备环境三、安装 TiUP四、安装TiUP cluster组件五、初始化包含TiCDC的TiDB集群拓扑文件六、检查和修复集群存在的潜在风险七、查看可以安装的tidb版本八、部署 TiDB 集群:九、查看集…

探索和构建 LLaMA 3 架构:深入探讨组件、编码和推理技术(九)Transformer架构

探索和构建 LLaMA 3 架构:深入探讨组件、编码和推理技术(九)Transformer架构 Llama Transformer架构 现在将所有单独的组件堆叠到Transformer中: class ModelArgs:dim: int 4096n_layers: int 32n_heads: int 32 # Number o…

扭蛋机小程序对市场的发展有哪些推动作用?

近几年,扭蛋机发展的非常迅猛。随着二次元文化的火热,给扭蛋机带来了发展机遇,扭蛋机行业也受到了大众的喜爱。扭蛋机的商品种类多样化,包含了各类热门IP周边衍生品、玩具、小商品等,适合所有消费人群,市场…