- 博客(196)
- 收藏
- 关注
原创 汽车网络安全总目录
(5)AUTOSAR中的Crypto Stack(五)-- HSM的多Host多会话机制分析。(4)AUTOSAR中的Crypto Stack(四)-- SecureBoot源码分析。(5)汽车网络安全--常见非对称算法概述。(6)汽车网络安全--常见摘要算法概述。(3)欧几里得算法、扩展欧几里得算法。RSA、ECC、ELGamal等留坑。(1)模运算、模逆元。
2023-10-21 09:02:04 709 2
原创 AUTOSAR专项目录
2023.10.23最近有很多朋友在反馈这里面的文章有些比较粗略,没有CP AUTOSAR相关基础的话确实有时候不知道文章在说什么,我觉得还是有必要把CP的基础概念整理一下,因此接下来会根据AUTOSAR的框架将一些基本概念介绍一下,打算一共分16篇文章。
2023-07-28 17:55:51 448 1
原创 汽车信息安全--如何理解TrustZone(2)
汽车信息安全--如何理解TrustZone(1)-CSDN博客讲解了什么是Trustzone,下面我们继续讲解与HSM的区别。
2024-04-25 17:50:39 758 2
原创 汽车信息安全--如何理解TrustZone(1)
根据Arm官方介绍,TrustZone最先是Arm A核的一种安全架构的统称,它在SOC系统级别提供硬件隔离机制将系统分成了两个运行环境:TEE(Trusted Execution Environment)和REE( Rich Execution Environment):在REE中,通常执行复杂且功能丰富的应用软件,意味着其攻击面广,更易遭受网络攻击;在TEE中通常为REE提供授信服务,例如加解密、密钥管理等等,这与HSM/SHE的理念比较相似。
2024-04-25 17:48:23 866
原创 密码学基础 -- ECC
当前公认安全有效的三大类公钥密钥体制分别为基于大数因子分解难题(RSA)、离散对数难题(DSA)和椭圆曲线离散对数(ECC)难题的密码体制。最初RSA由于其容易理解被广泛运用,但随着计算机性能的提升,要保证RSA的安全性,则必须要增加密钥长度,所以我们可以看到RSA密钥从1024bit慢慢来到了4096比特。
2024-04-22 19:07:55 686
原创 汽车网络安全 -- SOC和MCU的HSM方案梳理
如果我们把HSM当成黑盒子,只用它的相关功能就好了;但实际上从成本和场景出发,信息安全解决方案是需要客制化的;例如,某些控制件只需要支持SecOC和少量的密钥存储,那么SHE就完全可以满足要求,上HSM价格更贵且浪费了,这对成本敏感的OEM是不可接受的。所谓我们来看看目前MCU大厂的HSM方案,以U2A、S32K3、TC3xx为例。
2024-04-18 18:29:26 194 6
原创 汽车网络安全 -- ECU会遭受黑客怎样的攻击?
黑客针对汽车ECU的网络攻击某种意义上讲是通过非授权方式访问到目标ECU内部资源,从而获取ECU内部数据、影响该ECU的运行状态、导致功能失效等。获取控制权限:例如车辆行驶过程劫持程序执行流程,影响该ECU的系统机密性、完整性等;获取、篡改程序和数据信息:例如改装车刷ECU提升动力、获取车主个人隐私信息、获取整车敏感数据等;拒绝服务:通过内存破坏使得目标ECU失去提供正常服务的能力,导致系统失效。因此,针对上述三类攻击目的,我们就可以定义出一个ECU到底需要保护哪些资产。
2024-04-17 18:50:38 164
原创 密码学基础 -- 走进RSA(2)(放弃数学原理版)
从上面密码学基础 -- 走进RSA(1)(放弃数学原理版)-CSDN博客我们知道了非对称算法的密钥对使用时机,那么接下里我们继续讲解RSA,我们分别从RSA加解密、签名验签以及其原理概述入手有了上述测试,我们对RSA有了感性认识,接下来就讲点纯理论的东西。RSA是由麻省理工的Rivest、Shamir和Adleman在1978年提出,其数学基础用到了欧拉定理,安全性由大因子分解十分困难保证,利用了单向陷门函数的原理,具体如下:其中{e,n}表示公钥,{d,n}表示私钥。该算法安全在哪里呢?
2024-04-15 19:41:02 1089
原创 密码学基础 -- 走进RSA(1)(放弃数学原理版)
在讲RSA原理时,咱们先来思考非对称算法的几个问题。那么我们带着问题动手撸撸代码来熟悉RSA。
2024-04-15 19:39:41 470
原创 入门Adaptive AUTOSAR(一) -- 为什么要提Adaptive(2)
我们简单聊了Adaptive的由来,接下来我们比较CP和AP的区别在哪里。
2024-04-14 21:47:59 321
原创 入门Adaptive AUTOSAR(一) -- 为什么要提Adaptive(1)
这就是AUTOSAR的设计理论:主机厂基于新的整车电子电气架构设计总体功能时,是不太能够确定具体的ECU个数和功能分配(大家肯定有今天这个功能还在左域控、明天就移到右域控的经历),毕竟是概念阶段,具体细节是由各研发部门去实现的。值得注意的是,在大家很熟悉的CP AUTOSAR框架下,上述运行在硬件上的所有功能均是静态配置, 在程序发布前就已经按照预定规则静态编译和链接,这就意味着该ECU的功能是可预期且有时序概念的,这也是汽车控制器最初安全可控的理念。一旦涉及到平台切换,做基础软件的同袍就开始烦躁;
2024-04-14 21:46:47 775
原创 未来汽车硬件安全的需求(2)
笔者认为基于汽车微控制器与集成硬件安全模块相结合的系统解决方案是ECU级别的基本保护,以及关键通信接口和网络中的一些额外的汽车安全控制器(如中央网关,远程信息处理,电动汽车的车载充电器或域控制器),这是最经济的方法,可以在未来领先于可能的攻击者一步。中央网关负责控制和监控每个ECU允许的固件版本,从OEM OTA云服务器下载最新固件,解密、认证和检查接收到的固件,解包并将接收到的服务包拆分到各个ECU,建立到这些ECU的安全传输通道,更新和重置软件映像,并提示IVI向驱动程序显示更新详细信息。
2024-04-12 19:16:53 564 3
原创 未来汽车硬件安全的需求(1)
智能网联汽车依赖于各种不同的技术来提高驾驶员的舒适度、道路安全和移动服务。但由于其与外部世界的互连和易于访问,智能网联汽车会受到网络世界中的恶意软件操纵和硬件级别的物理攻击。这导致需要基于硬件的安全措施来抵御通过无线接口的间接攻击和直接物理攻击。本文讨论了基于硬件的安全在日益增长的车辆自动化、互联性背景下的作用,以及由此产生的对车辆安全的需求。简单、非侵入式攻击的威胁;未来量子计算机攻击的潜在威胁;未来E/E架构的变化;网络安全在标准、监管、认证方面的举措;当前和未来车载网络中的安全用例。
2024-04-12 19:16:16 1165
原创 英飞凌TC3xx SMU再述
MCU一般由内核子系统、系统管理子系统、外设子系统、电源子系统等等组成;在设计时每个子系统不可能保证完全没有bug,也不能保证芯片在运行过程中不会出现随机硬件失效(例如ECC,位反转等);针对系统失效:可以通过持续和严格的过程改进来尽量避免:针对随机硬件失效:可以通过工艺设计预防、引入功能安全机制来探测和缓解;如下:在TC3xx里,每个功能安全机制都会产生一个名叫“SMU alarm”的信号;试想,这么多的alarm如何管理?
2024-04-11 18:26:20 844
原创 密码学基础--搞清RFC和PKCS(2)
基本标准,用于定义公钥和私钥的语法、消息和数字签名的格式、用于每个级别的加密和解密的不同算法以及数字证书的格式该标准在2012年重新发布为RFC 8017。RFC最初是作为IETF工作文档和标准的一种形式,但后来成为了一个广泛接受的标准和参考文档的集合。因此,尽管它们服务于不同的目的,但PKCS和RFC之间的交叉影响是可能的,特别是在公钥密码学和网络安全领域。可以看到,PKCS和RFC尽管是由不同的组织发布并服务于不同的目的,但它们之间关系是比较密切的。指定存储的加密数据的语法。
2024-04-10 18:58:47 1256
原创 密码学基础--搞清RFC和PKCS(1)
昨天从生成密钥对开始逐步了解了公钥、证书等各种编码方式,今天继续趁热打,做一个理论知识汇总。Ps:我只是标准的翻译搬运工。
2024-04-10 18:56:46 757
原创 对CryptoDriver里密钥格式定义的探索(2)
我们简单描述了PEM格式,但是引出了ASN,1的问题,所以下片文章,我继续分析,并将pem格式解析出来什么是ASN.1?ASN.1定义了一种抽象的数据类型和其对应的表示方式,并提供了一种描述和交换结构化数据的通用方式,使得不同系统之间可以理解和交换数据。由于ASN.1 只是定义了数据结构,并未规定具体的编码方式,因此该语言要与编码规则一起完成数据的编码和解码。在密码学中,常见的有BER(Basic Encoding Rules)、DER(Distinguished Encoding Rules);
2024-04-09 19:11:08 175
原创 对CryptoDriver里密钥格式定义的探索(1)
一入网络安全才发现深似海,传统汽车MCU码农转型之路异常艰难。在CP AUTOSAR中的CryptoDriver SWS对密钥格式的需求来源于RFC,其中要求了RSA、ECC、SHE等key material的格式。再往下看,我就有些迷糊了,例如关于RSA Private Key的OCTEE STRING格式根据IETF RFC8017,Public Key又得根据RFC5280,完全不得其解。所以今天先从生成密钥对,并对其进行解析开始,一步一步拆解。
2024-04-09 19:09:31 60
原创 汽车标定技术(二十) -- 移植标定栈时主机厂、供应商应该做什么?(2)
上面汽车标定技术(十九) -- 移植标定栈时主机厂、供应商应该做什么?(1)-CSDN博客我们用了较小篇幅讲解了供应商视角做标定栈移植阶段针对需求、代码需要注意的事项,那么接下来我们继续看,在A2L、模型开发、OEM视角还需要做什么内容?
2024-04-08 18:30:58 252 4
原创 汽车标定技术(十九) -- 移植标定栈时主机厂、供应商应该做什么?(1)
这个问题应该困扰了不少朋友。在之前做基础软件供应商时,经常接到这些问题:A2L文件里标定量、测量量地址怎么替换呀?你们给的A2L Master文件怎么在INCA上用不了呢?每次模型生成代码都得手动给标定、观测量分配地址空间,有没有简单办法?以至于我后来在释放配置参考手册都把这部分增值服务写进去了。所以,今天就来谈谈不同开发视角下对于标定栈集成需要注意什么。
2024-04-08 18:29:26 338 2
原创 在你开发子网网关功能时发现没买对应插件,你在开发什么(2)
我们上面讲到了从软件层面考虑如何实现网关功能,接下来我们继续讨论软件实现细节,以及S32G 的LLCE如何实现该功能。我们讲到最好不要去直接修改静态代码,那么再往上层走,有没有这样的接口呢?既然是应用指定的,那我在里面搞gateway功能应该也是可行的。在这里我们就找到了切入点,那么要如何实现gateway功能呢?从通信矩阵入手,做一个类似PduR的示例让系统进行填写,生成类似的路由表CanDriver_RouteTable和对应DBC,先导入到工具里骗骗达芬奇生成pdu handle;
2024-04-07 18:19:12 147
原创 在你开发子网网关功能时发现没买对应插件,你在开发什么(1)
不止一次碰到过上述情况。之前做VCU需要路由某些关键信号,做座舱需要路由报文给下挂子节点时,本以为使用达芬奇点点点就可以搞定,结果打开Gateway功能,发现采购没购买Add-Ons。抓瞎了,重新提预算的话,不仅成本上去了,开发节点也守不住。怎么办?那就从两头抓,一方面继续追加采购,另一方面考虑根据需求手写。
2024-04-07 18:17:19 41
原创 25. AUTOSAR MCAL分析(三)--Crypto Driver(2)
在上一篇文章24. AUTOSAR MCAL分析(三)--Crypto Driver(1)-CSDN博客讲解了CryptoDriver的基本概念,引入了CryptoDriver Object的内容,针对该内容,我们做出了详细的描述。接下来我们继续讲解不同软件供应商对CDO的实现差异,以及Key、job的同步异步的处理方式上文我们简介了CryptoDriver的几个关键概念,该驱动主要实现了同步和异步加密原语的通用接口,支持密钥存储、密钥配置和密钥管理等功能。
2024-04-03 15:49:05 142
原创 24. AUTOSAR MCAL分析(三)--Crypto Driver(1)
1. Crypto Driver概述Crypto Driver处在加密栈中的最底层,负责抽象芯片硬件密码功能或者基于软件封装的密码功能等,层级结构如下图所示:在分析该Driver之前,有几个术语是需要掌握的:Crypto Driver:指定密码硬件\软件的驱动程序;Crypto Driver Object:一个Driver包含一个或者多个Crypto Driver Object(CDO),CDO用于提供不同的Crypto Primitive(加密原语);
2024-04-03 15:46:49 241
原创 RH850\U2A SOTA机制分析
最近在考虑无感OTA方案时,汇总了TC3xx、RH850-U2A、S32K3等系列MCU对于OTA的硬件支持。TC3xx在文档中写的很清楚,有兴趣的可以看看TC3xx UserMannul 1.5 SOTA章节,以前我也在某平台写过相关文章,这里不再赘述。比较让我疑惑的是U2A的方案,因为在U2A高性能版本中,出现了3个Flash控制器,我第一反应是为将来跨域融合做准备,事实上也是如此;在这款MCU中提出了Cluster的概念,针对Cluster里面布局了Memory、中断、外设等资源;
2024-04-01 19:22:16 1048
原创 汽车信息安全 -- HSM是否可以作为信任根?(2)
在上文,我们讲解了信任锚和信任根,本文继续讲解汽车中关于硬件信任锚点的内容,最终回归到问题:HSM是否可以作为信任根?
2024-03-28 16:42:52 353 2
原创 汽车信息安全 -- HSM是否可以作为信任根?(1)
最近在讨论汽车信息安全时听到一些新的概念:在车规MCU中HSM不能作为信任根。但回想起之前做ECU产品时,HSM又像个黑盒子;特别是在做安全启动时,基本只做Host侧程序数据的身份、完整性验证,这很明显是把HSM当作了信任根。有分歧就有讨论,偏信则暗,兼听则明;那么今天就来收集整理下信任根、信任锚等概念,理清思路;
2024-03-28 16:40:49 397
原创 技术复盘:Flash Memory揭秘(2)
上一篇我们从NVM 的分类,Flash的编程\擦除基本原理做了分析,下一篇我们将继续描述Nor、NANDFlash区别,以及eFlash在车规MCU中遇到的问题。
2024-03-25 18:05:28 985
原创 技术复盘:Flash Memory揭秘(1)
Flash在嵌入式领域是非常重要的角色,主要用于存储数据代码,为代码的执行提供基础保证等。实际上,Flash只是Non-volatile Memory中的一个分支,根据《Mask ROM是在芯片掩膜阶段写入数据或者代码,对于MCU来说最常见就是启动代码,例如英飞凌的BootRom,一旦写入,用户就无法进行修改;OTP类似Mask ROM,可以由用户写入敏感数据等,例如密钥、设备独有信息等;EPROM(Electrically Programmable ROM):按字节编程,但不能擦除;
2024-03-25 18:03:21 722
原创 汽车ECU的虚拟化技术(五) -- 对MCU虚拟化实现难点的思考
在上面文章里汽车ECU的虚拟化技术(四) -- 对MCU虚拟化实现难点的思考-CSDN博客,解了OEM面临新的电子电气架构下的集成难点,引入了hypervisor以及VM调度机制,接下来我们将继续讲VM之间的通信、中断处理、在safety和security上面的思考。
2024-03-22 18:20:38 722 1
原创 汽车ECU的虚拟化技术(四) -- 对MCU虚拟化实现难点的思考
一般来说,Hypervisor是需要运行在最高异常等级下,例如R52内核MCU就需要hypervisor在EL2等级运行,英飞凌TC1.8更直接,直接就提供了名为hypervisor的运行模式。本文主要讲解了OEM面临新的电子电气架构下的集成难点,引入了hypervisor以及VM调度机制,下一篇我们将继续讲VM之间的通信、中断处理、在safety和security上面的思考。现在突然要将这些软件功能放到一个ECU,共享MCU的资源,同时还要保证功能的隔离和资源不会冲突,想想头都大了。
2024-03-22 18:18:46 1356 3
原创 23.CP AUTOSAR PostBuild怎么用(2)
橙色部分是在工程构建完成后下载到Flash中,版本稳定了基本就不会再更新了;很明显,AUTOSAR SWC使用变体来根据定义的条件在执行路径中启用或禁用AUTOSAR相关接口或者具体实现。假设现在相同平台出了柴油版本和汽油版本的车型,本质上将除了控制策略上不同,基础平台完全可以不变。上面讲的基本都是BSW这一层级的,其实针对SWC应用层级,我们同样可以使用变体来进行管理。讲解了PostBuild的分类,接下来主要讲一下Loadable的集成要点。这样的设计我想到了,SIMULINK当然也想到了。
2024-03-21 18:51:25 313
原创 22.CP AUTOSAR PostBuild怎么用(1)
经过上面简单的分析,我们把PC\PB等属性搞得七七八八了,不过基于AUTOSAR规范的配置项的PC\PB还比较容易设计,涉及到Vendor自定义的,特别是MCAL里面的,如何来定义PC\PB,这确实需要仔细考量。上面我所提到的通过配置字来更新车型,就是用的Selectable类型,这种方式简单好用,通过诊断工具即可实现,但是需要额外的Flash空间;这个较为简单,今天就不聊了。我举个例子,做过座舱的同学在做整车测试的时候最常刷的DID想必就是配置字了,这个配置字对应的就是同一车型的高中低配置。
2024-03-21 18:49:03 164
原创 汽车信息安全--密钥管理系统初探(2)
个人理解,密钥管理是必须考虑到一个密钥的全生命周期,即该密钥从产生、分发、部署、使用最后到销毁的整个过程,而在汽车行业,密钥管理又是和ECU产品开发、产线量产、汽车运行、报废等过程息息相关,这是芯片厂在做密钥管理系统方案的难度之一;在产线生产阶段,密钥的角色就变化了,有不需要修改固化到OTP里,有需要使用一段时间就更新的,因此需要设定一套方案来实现密钥的加密固化、密钥的存储。HSM提供密钥生成的功能,那么用于生成密钥的种子的安全性就显得尤为重要,使用有可预见概率的随机数生成器肯定是不够安全。
2024-03-20 14:03:23 572
原创 汽车信息安全--密钥管理系统初探(1)
当真正开始思考如何设计基于HSM的密钥管理系统,才发现基于之前vHSM的套路是相当不完备的。仅仅是依靠AUTOSAR KeyM和CSM提出的密钥管理要点作为需求,总觉得是无根之水,不够踏实。因此我打算从密钥的实际使用场景、HSM中如何保护密钥两个方面入手,保证系统方案的溯源。
2024-03-20 14:01:53 313
原创 汽车信息安全--安全调试功能在量产后是否必须禁用(2)
这种方式也存在密钥泄露的风险,所以通常基于信息安全等级的不同要求,可以适当使用密钥派生机制,通过芯片特定ID或者Trim数据作为派生的输入;最明显的就是密钥的管理,什么情况下密钥不变、什么情况下密钥得保存,密钥更新后如何保证其新鲜度值,这不仅仅是芯片厂需要考虑的,还需要Tier 1、OEM共同讨论,才能得出一个较为成熟的方案。本文主要从信息安全角度对调试这一重大功能做了分析,针对售后阶段的bug分析作了信息安全方面的妥协,提出了常见的临时解锁debug口的手段。这是大变革,也是大机遇。
2024-03-18 18:04:07 278
原创 汽车信息安全--安全调试功能在量产后是否必须禁用(1)
在产品量产后,如果Debug口不禁用,一旦攻击者通过debug连接到ECU,那么很有可能对ECU进行注入恶意代码攻击、套取密钥、逆向工程等,从而对OEM、Tier1造成巨大损失。因此,我们可以对调试接口新增一种状态:Locked。但是这又有一个问题,当在售后阶段车上的某个件如果出现了偶发问题,需要回家复现或者调试,这个时候Debug口已经禁用了,这就很容易抓瞎?在整车产品中,芯片的生命周期是严格与整车绑定到一起,大致可分为:芯片出厂阶段、Tier-1开发阶段、OEM量产阶段、售后阶段和报废阶段。
2024-03-18 18:01:33 402
原创 如何看待工作中的内耗和妥协
在如今信息泛滥、知识碎片化的数字时代,我们可以很轻松地从某些被加工、带有主观色彩的知识片段里了解自己本不熟悉的行业,形成对行业的特定认识。很多时候,我们可以轻易地通过某种方式来评价别人,却很难用同样的评价体系来认识自己,因为评价永远是主观的,对自己同样难做到客观。然而不止一位前辈告诉我,A股市场才是真正的众生相,因为市场永远是客观的正确的,至于盈亏得自负,我深以为然;就像才出生的婴儿对世界充满好奇一样,把未知的东西交给时间,交给客观,放弃内耗,空杯心态迎接每天的生活。
2024-03-17 14:00:13 953
原创 21.AUTOSAR MCAL分析(二):Memory Driver
之前聊过存储栈,主要是针对NvM以及Fee的讨论,对于Memory Driver里面各模块基本没有介绍。但在我们在讨论功能安全的时候,RAM和Flash的测试是不可能绕开的话题;
2024-03-15 18:42:27 157 3
ETAS的ETK技术在Auritx上的实现
2023-11-04
armv8-r虚拟化介绍
2023-11-03
NXP关于SOC的安全子系统详细描述
2023-11-02
TC3xx HSM的启动应用笔记
2023-11-01
人工智能概述的相关文档
2023-10-31
基于英飞凌的TC38x系列的以太网SOTA示例
2023-10-30
绑定微信失败,该如何解绑
2023-10-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人