汽车网络安全 -- 后量子密码时代还远吗?

news2024/11/26 0:31:40

目录

1.量子计算对密码学的威胁

1.1 传统密码学速览

1.2 量子计算对密码学的威胁

2.后量子密码学

2.1 量子计算原理

2.2 后量子密码学

3.未来汽车网络安全面临的威胁

3.1 量子计算对汽车的威胁

3.2 TC4xx对于PQC算法的支持


国庆抽空回顾了下Hitex组织的《Designing with TC4xx》,该会议里面提到的大部分TC4xx新特性在之前已经分析过了,后面有机会再聊聊(题外话:参会这几家的PPT确实搞得简单易懂)。

比较吸引我的是ETAS再一次提到了后量子密码学对于整车的影响,结合之前看过一篇论文《Post-Quantum Secure Architectures for Automotive Hardware Secure Modules》,看来不入门一下后量子密码学是要落后了。

因此,今天的主要议题:

(1)弄清量子计算对于传统密码学的威胁

(2)当前汽车网络安全架构面临的难题

(3)TC4xx针对后量子密码学的支持

1.量子计算对密码学的威胁

1.1 传统密码学速览

之前讲解汽车信息安全入门总结(2)-CSDN博客 时就已经阐述过,当前我们常见的传统密码学算法包括对称算法、非对称算法和Hash算法(也称杂凑算法)。

这里再次有请Alice和Bob上台展示一番。

  • 对称算法

通信双方Alice和Bob共享一个私钥,通过私钥实现数据加解密,一般用于数据加密传输和存储,

对称密码算法基本都来源于Shannon提出的乘积密码思想,它遵循Feistel分组密码结构,旨在实现扩散和混乱,保证数据每一比特都能得到重新排列、混淆密文和密钥的统计关系,它不依赖于特定数学难题,因此可用于保证数据的机密性;

但是这个私钥在密钥分发的过程中有被窃听的风险,因此对称密码一般还需结合其他类型算法使用。

常见对称算法包括:AES(FIPS-197)、SM4(GB/T 32907-2016)、ZUC(GB/T 33133.2-2017)等。

  • 非对称算法

通信接收方Alice向所有人公布公钥(Public Key),发送方Bob用此公钥将数据加密后传给Alice,而Alice使用与该公钥匹配的私钥解密,并且私钥只有Alice一人拥有。第三方使用公钥逆向解密数据非常困难(基于数学难题)。

  • Hash算法

该类型算法可以将任意长度的数字消息转换为固定长度消息的函数,用于数据完整性保护。

理论上讲,对称算法和Hash算法保证了数据的机密性和完整性,对称算法保证了数据来源的身份认证。常见做法为,先对原始数据进行签名,再对原始数据+签名进行对称加密,从而保证了CIA。

1.2 量子计算对密码学的威胁

对称密码算法的密钥长度直接决定了攻击难度,例如AES-128具有128位密钥,使用穷举攻击搜索的空间复杂度高达2^128,理论上随着密钥长度的增加,安全强度也成指数级上升;从目前研究看,量子攻击对对称密码算法影响较小,具体可参考论文《抗量子计算对称密码研究进展概述》。

非对称密码算法来源数论难题,例如RSA基于大数因子分解、ECC基于椭圆曲线离散对数、DH\DSA基于离散对数难解,这个之前密码学基础专栏已经讨论过。

但是随着量子计算的出现,这些难题存在被破解的可能。

1994年,Shor提出了分解大数和求解离散对数的量子算法,其量子资源消耗成多项式级,这对于目前广泛使用的公钥密钥体制(RSASSA、DH、ECDSA、SM2等)的底层数论难题均有效,

这意味着一旦一定规模的量子计算机成为现实,首当其冲的就是互联网的各种公钥密码体系,区块链去中心化概念也将不再安全。

2.后量子密码学

2.1 量子计算原理

量子计算与目前计算机数字计算差别在于二进制表示方式和存储方式。

我们目前接触到的电子产品,用0和1来表示数字,理论上一个N位寄存器可以存储任意一个2^N - 1的非负整数,但是在同一时刻只能表示一个数。

但是量子计算就不一样,它基于量子力学原理,使用quantum bits(量子位,简称qubits)来存储数字。它可以用叠加形式在同一时刻表示二进制数0和1,因此理论上将一个N qubits的量子寄存器在同一时刻可以存储2^N-1个非负整数。那在这样量子寄存器上操作,相当于就是同时对2^N个整数进行并行操作。

因此,我们的电子产品要执行2^N计算才能完整的操作,在量子计算机上只需要N步就可以完成。这有点像之前看“星际穿越”时无法想象到四维空间一样,我也很难理解量子计算机在运算方式上为何可以做到与传统计算机不一样,但是它确实做到了。

据统计,Google于2018年建造了72 qubit芯片,虽然质量相对较差,但是已经是历史性突破。

因此,量子计算对于基于数论难题的非对称密码算法是毁灭性的打击,后量子密码学就在这个背景中产生。

2.2 后量子密码学

后量子密码算法(Post-quantum Cryptography\PQC))主要是为了抵御量子计算的攻击,国内也叫抗量子密码。

目前实现PQC大致可分为4类:基于Hash函数、基于编码、基于格、基于多变量。

  • 基于Hash函数:利用Hash函数的抗碰撞性,用于构造数字签名,代表算法XMSS和SPHINCS+等;
  • 基于编码(Code-based):用于构造加密算法,基本理论来源于某些编码的译码非常困难,代表算法为McEliece;
  • 基于格(Lattice-based):所谓格,是指数的几何,它是数形结合的代数结构。格密码基于格上问题的困难性,可用于数字签名、身份认证、密钥交换等等;代表算法SIS\LWE
  • 基于多变量(Multivariate-based):该类算法基于高次多变量方程求解难,采用二次多项式,将有限域上的一组二次多项式作为公钥映射,可用于密钥交换等,代表算法如HFEv-类型的GeMSS、UOV类型的Rainbow签名

 2023年8月,NIST公布了PQC初始公开标准草案:

  • 基于格的公钥加密、密钥封装算法:Crystals-Kyber
  • 基于格的公钥签名算法:Crystals-Dilithium、Falcon
  • 基于哈希的公钥签名算法:SPHINCS+

3.未来汽车网络安全面临的威胁

3.1 量子计算对汽车的威胁

当前汽车作为一部移动终端,它的网络安全贯穿从生产到报废,而公钥密码体系在真实性认证扮演了非常重要的角色,如下图:

车云安全通信、车内安全启动\安全认证、ECU SOTA都依赖非对称密码学,然而量子计算的出现可能会对整车网络安全架构造成破坏性的威胁。

有人可能会说,量子计算对整车造成威胁的时间还早着呢。

但是个人认为,2015年Mosca教授提出的评估网络安全风险理论可以让我们保持警醒:

一台汽车的生命大概就是10年,意味着整车的各种证书、密钥、敏感信息均需要保存直到报废所需10年,这个时间就是X;

当我们做产品需要迁移算法时,需要考虑这个移植时间,当然如果我们接口做的好,那么这个时间Y就很少;

Z则表示可以破解传统算法的量子计算机大规模部署的时间,这个应该没人能预知。

一旦X+Y > Z,我们再切换就为时已晚:

这会造成什么样的威胁呢?

1.对称算法安全性降低,所有基于数论难题的非对称算法很容易被攻破;

2.OEM OTA的安全防御措施轻易被瓦解

3.所有车云通信数据可随时被窃听、篡改

....

因此从现在开始做起,是应对PQC的最好解决方案。

3.2 TC4xx对于PQC算法的支持

根据公开资料显示,AURIX TC4xx提出了security cluster的概念,如下:

Cyber security satellite(CSS)提供了硬件加速器的并行化,为应用程序提供了21个独立通道,避免资源竞争;

Cyber security real-time module用于提升性能,相较于TC3xx HSM性能增加15倍。

在PQC算法上,TC4xx同样可以提供硬件加速机制,统计如下:

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

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

相关文章

西门子S7-1200选型指南之概述

S7-1200 控制器概述 S7-1200 虽然只是中小型控制器,但是功能很全面。它具有较高性能,并且具有很强的扩展能力,通信能力多种多样,本体即具有各种常见工艺功能,此外也具备西门子常见的诊断功能,下面将分几部…

vue3 + vite + cesium项目

GitHub - tingyuxuan2302/cesium-vue3-vite: 项目基于 vue3 vite cesium,已实现常见三维动画场,欢迎有兴趣的同学加入共建,官网服务器相对拉胯,请耐心等候...https://github.com/tingyuxuan2302/cesium-vue3-vite/tree/github

计算机网络:数据链路层 —— 数据链路层的三个重要问题

文章目录 数据链路层的重要问题封装成帧封装过程帧的数据载荷 透明传输实现透明传输 差错检测传输差错误码(比特差错)分组丢失分组失序分组重复 奇偶校验循环冗余校验生成多项式方法流程 纠错码 数据链路层的重要问题 封装成帧 在计算机网络中&#xf…

基于Java+SpringBoot+Uniapp的博客系统设计与实现

项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念,提供了一套默认的配置,让开发者可以更专注于业务逻辑而不是配置文件。Spring Boot 通过自动化配置和约…

Jenkins整合Docker实现CICD自动化部署(若依项目)

前期准备 提前准备好jenkins环境 并且jenkins能使用docker命令,并且已经配置好了jdk、node、maven环境,我之前写了安装jenkins的博客,里面讲得比较详细,推荐用我这种方式安装 docker安装jenkins,并配置jdk、node和m…

【分布式架构】分布式事务理论与实践

一、分布式事务理论 1. ACID理论 场景:单机架构中保证事务的理论 2. CAP理论 场景:分布式架构中保证事务的理论 概念 一致性:数据在不同的节点每一时刻都是一致的可用性:一部分的节点出现异常,但是系统仍然可用分…

【3dgs】3DGS与NeRF对比

以下是 3DGS(3D Geometry Sensing)与 NeRF(Neural Radiance Fields)对比表格: 更加详细的资料,轻参考: NERF/3DGS 对比维度3DGS (3D Geometry Sensing)NeRF (Neural Radiance Fields)基本原理…

【Linux进程信号】Linux信号产生机制详解:掌握系统通信的关键

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:Linux “ 登神长阶 ” 🌹🌹期待您的关注 🌹🌹 ❀Linux进程信号 📒1. 信号入门📜2. 信号捕捉初识📚3. 信号…

Windows应急响蓝安服面试

Windows应急响应 蓝队溯源流程 学习Windows应急首先要站在攻击者的角度去学习一些权限维持和权限提升的方法.,文章中的方法其实和内网攻防笔记有类似l红队教你怎么利用 蓝队教你怎么排查 攻防一体,应急响应排查这些项目就可以 端口/服务/进程/后门文件都是为了权限维持,得到s…

linux安装hadoop

目录 jdk安装配置 hadoop安装 hadoop配置 配置ssh免密登录 启动hadoop 实现文件上传下载 eclipse安装配置 jdk安装配置 1、删除centos自带的jdk yum list installed | grep java yum remove *openjdk* 2、下载jdk安装包 wget --no-check-certificate https://repo.h…

InternVid:用于多模态视频理解与生成的大规模视频-文本数据集 | ICLR Spotlight

InternVid 是一个开源的大规模视频-文本数据集,旨在促进视频理解和生成任务的发展,由上海人工智能实验室与南京大学、中国科学院等单位联合发布,相关的工作已经被ICLR2024接收。它包含超过 700 万个视频,总时长近 76 万小时&#…

位操作位操作位操作

呵呵哈哈哈哈哈哈哈哈哈和哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈

MySQL—视图

前言: 视图是一个虚拟的表,是基于一个或多个基本表或其他视图的查询结果集。视图本身不占据物理储存空间,仅仅只是一个查询的逻辑表示,物理上依赖于数据表的数据。 视图具有简单,安全,逻辑数据独立&#…

CST软件优化超表面--- 偏振片- 线圆极化转换,天线阵任务,远场算轴比AR

本期我们继续看线极化转圆极化。本案例是个三层结构,比单层的偏振片有更宽的频率和更少的反射。我们将利用CST的天线阵列任务中的单元任务,加上优化器优化,使偏振片在多个入射角、多个频率,S11反射都够小,AR都够圆。 …

Spark-RDD的宽窄依赖以及Shuffle优化

目录 RDD宽窄依赖的区别 DAG有向无环图 窄依赖 宽依赖 shuffle过程 Shuffle介绍 Spark优化-避免shuffle RDD宽窄依赖的区别 窄依赖 每个父RDD的一个Partition最多被子RDD的一个Partition所使用 mapflatMapfilter宽依赖 一个父RDD的Partition会被多个子RDD的Partition所使…

LCD补充

LCD补充 目录 LCD补充 tip:随着我们学的越来越多,代码长度越来越长,编译越来越慢,有没有超过内存是我们比较关心的一件事,通过以下方法可以实时看到写的代码的大小 回顾LCD LCD补充功能 -- 1、有关在LCD上显示动图&#xff…

Python库matplotlib之九

Python库matplotlib之九 动画ArtistAnimation构造器成员函数应用例子 动画 Matplotlib基于其绘图功能,还提供了一个使用动画模块,生成动画的接口。动画是一系列帧,其中每个帧对应于图形上的一个图。 Matplotlib使用两个类来实现动画&#x…

ordinaryroad-barrage-fly wsl部署记录

系统:win11 wsl版本:wsl2 Linux:Ubuntu 22.04.4 LTS 文档:https://barragefly.ordinaryroad.tech/deploy/#_2-1-docker-compose docker相关的内容自己事先安装好 git clone https://github.com/OrdinaryRoad-Project/ordinaryr…

TensorBoard

1、概念 TensorBoard可以看作是一个“训练监控仪表盘”,可以 将训练过程中的数据可视化,让你通过图表直观地看到模型的表现, 识别问题,并进行调试和优化。 TensorFlow是用来训练模型的深度学习框架,在使用tensorflo…

基于SpringBoot+Vue的疫情物资管理系统(带1w+文档)

基于SpringBootVue的疫情物资管理系统(带1w文档) 基于SpringBootVue的疫情物资管理系统(带1w文档) 本课题研究和开发疫情物资管理系统管理系统,让安装在计算机上的该系统变成管理人员的小帮手,提高疫情物资管理系统信息处理速度,规范疫情物资…