车联网OTA安全实践

news2025/1/18 17:15:37

摘要:

近年来,智能汽车已成为全球汽车产业发展的战略方向,汽车技术与工程核心逐渐从传统硬件层面转移到软件层面,汽车行业已经踏上了软件定义汽车(SDV)的变革之路。

在SDV的大趋势下,汽车零部件智能化水平不断提高,车辆内部搭载的软件也越来越多。毫无疑问,车辆复杂度的提高必将带来维护上的困难,车企要如何面对更新迭代速度越来越快的软件、固件系统?OTA(over the air)技术在软件定义汽车中扮演了核心角色,帮助车企远程实现车辆功能升级、性能优化、缺陷修复,为用户带来更好的服务和体验。车企也得以和用户建立更好、更深远的联系。

OTA安全风险

作为车企修复软件固件漏洞、迭代改进软件功能的重要途径,OTA的快速普及让其成为黑客的重点研究对象。总体上OTA常见的安全风险包括以下几个:

身份假冒

攻击者伪装OTA通信中的发送方或接收方身份。

窃听攻击

攻击者在OTA传输过程中窃取数据包,从而获取升级包内的敏感信息。

数据篡改

攻击者可能会对OTA升级包进行篡改,通过植入恶意软件、病毒等方式,对车辆进行攻击。

OTA安全实践

为了防范以上这些安全风险,OTA通信需要采取一系列安全措施,如加密传输、数字签名验证、数据完整性检测等,确保OTA通信的安全可靠。

当然,所有的加密都是有代价的,所以对于加密的使用需要综合我们的安全需求以及硬件和业务情况决定。帆一尚行采取了对称加密和基于PKI技术的非对称组合的数字信封技术,来作为OTA安全中的加密和签名方案。下面分享下我们在OTA过程中安全流程。

首先是我们的升级包制作过程 :1、OTA平台激活,通过PKI获取公私钥。2、对原始包用签名算法进行签名。3、使用对称算法对原始升级包进行加密。4、将加密升级包分发至CDN网络。

接下来是车端的升级流程:

1、车载终端通过预设流程激活从PKI获取终端证书,包含终端公私钥。

2、OTA平台基于PKI验证车载终端合法性并采用终端的公钥对对称密钥进行加密。

3、车载终端使用私钥解密加密后的对称密钥。

4、车载终端从CDN网络下载加密升级包。

5、车载终端利用对称密钥对加密升级包进行解密。

6、车载终端基于PKI平台能力进行验签。

以上过程在具体实施过程中采用了一系列散列、数据压缩、对称加密及非对称加密算法,可以归结如下:

1、在身份认证和完整性检查方面,使用数字签名来保证接收者收到的信息一定来自于信息所声明的发送者。

2、在消息加密方面,同时使用了对称加密和非对称加密的方法对消息明文进行加密操作。

以上流程使用PKI进行设备接入、密钥的分发和设备认证,完成信任体系构建。结合PKI技术和数字信封的思路,我们形成一个车云通信场景下的OTA基本轮廓。在保证OTA升级包安全性的同时,利用对称加密具有计算量小、加密速度快、加密效率高的特点,减小了对终端资源的消耗,规避了非对称加密由于算法自身的强度过高而导致加解密速度和对称加密相比不够理想的问题,利用了公钥算法加密对称会话密钥提高安全性和加解密的效率。

后记

以上过程可以从概念上描述基于PKI的OTA过程。OTA的安全工作是个体系化工程,除了通过PKI保障OTA传输安全(管端安全),云端和车端安全同样需要重视。例如在云端,需要采取的安全产品有云主机安全加固、应用防护、WAF、DDOS攻击防护等;在车端需要结合TEE、安全芯片等手段来保证密钥的安全存储、安全使用。

欢迎朋友们在后台留言,和我们一起讨论OTA安全话题。

帆一尚行是上汽集团为数字化转型而设立的创新平台,以“消融产业边界,释放数据价值”为己任,聚焦安全云、自动驾驶云、智能制造及产业互联网技术领域,赋能行业数字化转型,加速产业数字化、数字产业化进程,积极推动社会数字经济发展。作为一家深耕汽车行业云计算,同时发展多元化业务的科技公司,帆一尚行为企业、开发者和政府机构等提供安全、可靠的数据计算与处理能力、专属云产品与服务。

帆一尚行具备完整的车联网安全服务能力,支持用户全方位构建车联网架构体系。为了服务车企提供以下方面的能力输出:1.基于PKI的安全通信和身份认证与访问控制,2.基于云和端的数据安全以及脱敏方案,3.成熟可用的OTA能力,4.车辆安全检测与威胁预警VSOC系统,通过以上方案产品助力解决安全和合规问题。

帆一OTA产品已商用至多个车企的不同车型中,为车企提供零件、车辆、策略、任务等全方面的OTA管理能力,支持车企针对零件或者零件组进行升级刷写,并通过引入PKI体系,保证OTA全过程的安全。OTA产品有效提高车企软件修复和交付能力,帮助车企聚焦业务,加速数字化转型。

来源|焉知汽车

参考文献:

1.https://marcuseddie.github.io/2019/PGP-Introduction.html

2.http://www.catarc.org.cn/upload/202109/22/202109221135079397.pdf

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

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

相关文章

界面控件DevExpress WinForm的垂直网格,让数据展示更灵活(二)

DevExpress WinForm Vertical Grid(垂直网格)组件设计用于提供UI灵活性,它允许显示数据集中的单个行,或在其90度反向网格容器中显示多个数据集行。此外,开发者还可以将其用作属性网格,就像在Visual Studio …

VueBaiDuMap百度地图组件常用案例

VueBaiDuMap获取可视区边界点坐标_毛三仙的博客-CSDN博客【代码】VueBaiDuMap获取可视区边界点坐标。百度地图,左上角左下角右上角右下角坐标https://blog.csdn.net/m0_74149462/article/details/130420983?csdn_share_tail%7B%22type%22%3A%22blog%22%2C%22rType%…

《springboot实战》 第十二章 SpringBoot整合swagger-bootstrap-ui

前言 SpringBoot整合swagger&#xff0c;使用swagger-bootstrap-ui美化页面。 1、环境配置 1.1、导入依赖包 <dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version…

不得不说的结构型模式-代理模式

目录 代理模式&#xff1a; 下面是一个简单的C代码案例 下面是面试中可能遇到的问题&#xff1a; 代理模式&#xff1a; 代理模式是一种结构型设计模式&#xff0c;它通过引入一个代理对象来控制对另一个对象的访问。代理对象充当原始对象的中介&#xff0c;通过拦截对原始…

倾斜摄影超大场景的三维模型的顶层合并的点云抽稀处理技术分析

倾斜摄影超大场景的三维模型的顶层合并的点云抽稀处理技术分析 倾斜摄影超大场景的三维模型的顶层合并需要进行点云抽稀处理&#xff0c;以减小数据量和提高数据处理和展示性能。以下是几种常用的点云抽稀处理技术&#xff1a; 1、体素栅格化&#xff1a;将点云数据转换为3D体…

【TCP 协议】报文格式,数据可靠传输的机制(一)

哈喽&#xff0c;大家好~我是你们的老朋友&#xff1a;保护小周ღ 本期为大家带来的是网络编程的 TCP 传输控制协议的概念 &#xff0c;首先会讲解 TCP 协议的报文格式&#xff0c;在学习报文格式之后&#xff0c;会学习两种 TCP 保证数据可靠传输的机制&#xff0c;确认应答…

getType() 和 getGenericType()的区别

处理泛型时会经常用到这两个方法&#xff0c;但是二者的区别是什么&#xff1f; 先看看官方的解释&#xff1a; getType 》&#xff1a;Returns a Class object that identifies the declared type for the field represented by this Field object. 返回字段对象声明类型的…

nodejs+python+php+springboot+vue 婚庆公司服务网站管理系统

管理员模块 &#xff08;1&#xff09;信息管理模块&#xff1a;对商家和个人的查看&#xff0c;修改。 &#xff08;2&#xff09;留言管理模块&#xff1a;对留言进行管理&#xff0c;确定是否能进行发布&#xff0c;对留言进行回复。 &#xff08;3&#xff09;权限管理&…

Git常用命令2

git commit --amend 有时候我们提交完了才发现漏掉了几个文件没有添加&#xff0c;或者提交信息写错了。 此时&#xff0c;可以运行带有 --amend 选项的提交命令来重新提交,这个命令会将暂存区中的文件提交。 如果自上次提交以来你还未做任何修改&#xff08;例如&#xff0c;…

【C++入门】一篇搞懂auto关键字

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【C之路】 目录 作用不那么大的场景auto真正的价值注意点auto不能推导的场景范围for范围for的使用条件 作用不那么大的场景 在C中推出了…

工业元宇宙对于制造业的影响有哪些?

伴随元宇宙的快速发展&#xff0c;它在诸多现实场景中都实现了广泛应用&#xff0c;特别是在全球科技与产业竞争核心的智能制造领域。元宇宙与智能制造融合的本质是重构企业研发、制造、销售、终端四大场景&#xff0c;相当于把企业打包进虚拟世界&#xff0c;在虚拟世界中建设…

(五)ArcCatalog应用基础——ArcCatalog基本操作

&#xff08;二&#xff09;ArcCatalog应用基础——ArcCatalog基本操作 当ArcCatalog 与文件夹、数据库或者 GIS 服务器建立链接之后&#xff0c;就可以通过 ArcCatalog 来浏览其中的内容。ArcCatalog 具有浏览地图和数据、创建元数据、搜索地图数据、管理数据源等功能&#x…

SpringBoot RabbitMQ 死信队列

1. 死信定义 无法被消费的消息&#xff0c;称为死信。 如果死信一直留在队列中&#xff0c;会导致一直被消费&#xff0c;却从不消费成功&#xff0c;专门有一个存放死信的队列&#xff0c;称为死信队列(DDX, dead-letter-exchange)。 死信队列 DLX&#xff0c;Dead Letter Exc…

火山引擎 BVE 视频图片硬件编码器演进之路

动手点关注 干货不迷路 前言 近日&#xff0c;第 17 届世界编码器大赛 MSU 2022 公布硬件编码器比赛结果&#xff0c;在 60 fps&#xff08;帧率&#xff09;的超快视频编码赛道上&#xff0c;火山引擎多媒体实验室自主研发的 BVE 1.1 编码器表现突出&#xff0c;荣获最佳 FPGA…

计算机网络学习06(HTTP1.0 vs HTTP1.1)

1、响应状态码 HTTP/1.0仅定义了16种状态码。HTTP/1.1中新加入了大量的状态码&#xff0c;光是错误响应状态码就新增了24种。比如说&#xff0c;100 (Continue)——在请求大资源前的预热请求&#xff0c;206 (Partial Content)——范围请求的标识码&#xff0c;409 (Conflict)…

【C++】priority_queue使用和模拟实现——仿函数

文章目录 1. priority_queue的使用1.priority_queue的介绍2.priority_queue的结构3. 主要接口4. 使用示例 2. 仿函数1. 仿函数的概念2.尝试实现仿函数 3.priority_queue的模拟实现1.priority_queue的结构2. 接口实现1.向下调整算法2. 向上调整算法3.构造函数4.修改数据5.获取数…

机器学习 -Statsmodels

机器学习记录 Statsmodels 用于探索数据, 估计模型, 并运行统计检验. conda install -y statsmodels线性回归 import numpy as np import pandas as pd import matplotlib.pyplot as plt import statsmodels.api as sm import statsmodels.datasets.utils as du import sea…

数据结构【二】:霍夫曼编码

霍夫曼编码&#xff08;Huffman Coding&#xff09;是可变长编码&#xff08;VLC&#xff09;的一种。本质上使用变长编码表对源符号进行编码&#xff0c;通过评估源符号出现概率的方法进行分类&#xff0c;将出现几率较高的源字符使用较短的编码&#xff0c;出现几率较低的源字…

Hive优化补充

目录 一、表设计优化 1.通过设计分区表&#xff0c;增加动态分区&#xff0c;查询时避免全表扫描 2.设计分桶表&#xff1a;适用于大表join大表的情况 最后&#xff0c;两张大表进行join转为两张分桶表进行join&#xff1a; 二、文件存储 1.文件格式-概述 2.文件格式——…

学系统集成项目管理工程师(中项)系列13b_人力资源管理(下)

1. 项目团队建设 1.1. 塔克曼(Tuckman)阶梯理论 1.2. 理论基础 1.2.1. 激励理论 1.2.1.1. 马斯洛需要层次理论 1.2.1.1.1. 生理需要 1.2.1.1.2. 安全需要 1.2.1.1.3. 社会交往的需要 1.2.1.1.4. 自尊的需要 1.2.1.1.5. 自我实现的需要 1.2.1.2. 赫茨伯格的双因素理论…