- 博客(207)
- 收藏
- 关注
原创 汽车网络安全总目录
(5)AUTOSAR中的Crypto Stack(五)-- HSM的多Host多会话机制分析。(4)AUTOSAR中的Crypto Stack(四)-- SecureBoot源码分析。(5)汽车网络安全--常见非对称算法概述。(6)汽车网络安全--常见摘要算法概述。(3)欧几里得算法、扩展欧几里得算法。RSA、ECC、ELGamal等留坑。(1)模运算、模逆元。
2023-10-21 09:02:04 792 2
原创 AUTOSAR专项目录
2023.10.23最近有很多朋友在反馈这里面的文章有些比较粗略,没有CP AUTOSAR相关基础的话确实有时候不知道文章在说什么,我觉得还是有必要把CP的基础概念整理一下,因此接下来会根据AUTOSAR的框架将一些基本概念介绍一下,打算一共分16篇文章。
2023-07-28 17:55:51 519 1
原创 汽车标定技术(二十一)--英飞凌TC3xx的OLDA怎么玩?(2)
上一篇汽车标定技术(二十一)--英飞凌TC3xx的OLDA怎么玩?(1)-CSDN博客,我们讲了TC3xx OLDA;而VECTOR提出的OLDA概念,差点搞混淆,因此继续总结,方便后续回溯。
2024-05-24 19:01:57 155
原创 汽车标定技术(二十一)--英飞凌TC3xx的OLDA怎么玩?(1)
1.英飞凌提出的OLDA是什么?在研究TC3xx的内部总线互联时,偶然发现了OLDA(OnLine Data Acquisition),看名字就容易猜到,这个大概率是和标定测量系统有关。进一步了解OLDA的描述,更加好奇了:这样看来,OLDA这个Feature是需要搭配ED的MCU产品才能使用。那么它到底是个什么东西呢?从定义看,OLDA是SRI Slave接口的一个功能,从具体表现形式看,它是一段地址空间,划分在Segment 8和Segment A。
2024-05-24 18:59:43 26
原创 TC3xx Overlay应用分析:使用Cachable地址出现数据不一致
0x80280000重映射到到0xB0040000,定义一个变量在0x80280000,用a去读,开启Overlay功能之后,理论上来说修改0xB0040000的值,a读到的就是新值,结果a读到的还是原来的值,把cache关掉就正常了。开启Overlay后,CPU最开始使用的地址肯定是Flash的地址,例如0x80280000;现在出现DCache数据不一致现象,说明CPU通过DMI去获取数据时,首先取得的是Dache里的数据, 那能不能得出结论,Overlay的地址翻译是在如下位置实现的呢?
2024-05-20 15:02:16 733 1
原创 Cache基本原理--以TC3xx为例(2)
上一篇Cache基本原理--以TC3xx为例(1)-CSDN博客,我们聊了Cache基本概念,接下来我们将继续聊Cache映射模式,DCache的数据一致性问题。
2024-05-15 18:58:50 646 1
原创 Cache基本原理--以TC3xx为例(1)
为什么要使用Cache?为什么在多核工程里要谨慎使用DCache?Cache里的数据、指令是如何与Memory映射?灵魂三连后,软件工程师应该都会有模糊的回答:大概是为了运行更快,减小系统负载。但是再往下深入思考上面问题,我自己发现对于Cache原理的理解比较欠缺,网上资料纷繁复杂。因此,梳理并总结其原理,为后续系统性能优化打下基础。
2024-05-15 18:56:50 814
原创 英飞凌TC3xx 启动逻辑梳理(2)
限于篇幅,上一篇英飞凌TC3xx 启动逻辑梳理(1)-CSDN博客讲述了SSW里面的一些关键事项,接下来我们来看应用启动代码中的逻辑。
2024-05-10 17:24:30 711
原创 英飞凌TC3xx 启动逻辑梳理(1)
在调TC3xx的板子时,最害怕的就是刷UCB;稍不注意板子就上锁,调试器也连不上了,这里面的逻辑是什么?在设计SafetyLib时,对于芯片启动阶段的功能安全逻辑应该是怎样的?在设计SecurityLib时,对于芯片启动阶段的信息安全应该如何考量?今天就这几个方向来梳理一下TC3xx的启动流程。
2024-05-10 17:22:12 758
原创 TC3xx MTU概述(2)
上篇TC3xx MTU概述(1)-CSDN博客我们讲解了MTU基本功能和MBIST基本概念,接下来我们继续讲解MTU如何配置NDT算法。
2024-05-06 18:13:04 1146
原创 TC3xx MTU概述(1)
因为在ISO26262中,SRAM的Cell故障被认为是潜伏故障,而在一次驾驶循环内至少得有一次测试用于覆盖潜伏故障,所以使用者有权决定在MCU启动、APP运行和下电这三个阶段任意时刻进行MBIST,因此这种非破坏性测试(NDT)是最为友好。执行MBIST期间,每次发生读访问,SRAM自身的ECC机制会计算此次读出数据的校验码,并检查该校验码是否与存入该数据时计算的校验码一致。值得注意的是,SSH寄存器只能通过MTU->SSH这样的路径进行访问,因此在访问效率上会比直接通过SPB访问寄存器要慢一些。
2024-05-06 18:11:45 601
原创 汽车信息安全入门总结(2)
可以发现,关于汽车信息安全的涉及面太广了,从传统信息安全跨行进入汽车行业的大佬需要了解汽车相关基础知识,而传统ECU开发的工程师对传统信息安全晦涩的技术又有些难以下口,每一项都需要实操经验才能有所领悟,这也是目前市场上难以找到这种复合人才的原因。在了解上述域控及其下挂子节点的功能feature后,我们可以根据OEM的通信矩阵来识别出带SecOC属性的报文,并根据信号定义摸索出一些资产定义的共性,同时也可以对整车的功能互联有一定的了解。除了上述技术外,还包括安全调试、安全监测、日志管理、安全存储等。
2024-04-29 14:22:18 1191 3
原创 汽车信息安全入门总结(1)
汽车信息安全从2015年开始被引起重视发展至今已近10年时间,虽然有很多高屋建瓴的白皮书、指导标准可以指导我们从宏观了解汽车信息安全这个新兴行业,但真正实际需求落实到我们一线开发人员身上,总归感觉缺少点最底层的逻辑闭环。与汽车传统的主被动功能安全相比,汽车信息安全问题一旦出现可能会带来巨大影响,不仅对驾驶员、乘客的人身安全、隐私安全和财产安全造成影响,还会给车企或者供应商带来巨大经济损失,更有甚者影响国家安全(参考Tesla)。任何事物的出现都背景和根源,汽车信息安全也不例外。今天就来聊聊个人粗浅的看法。
2024-04-29 14:20:34 659 4
原创 汽车信息安全--如何理解TrustZone(2)
汽车信息安全--如何理解TrustZone(1)-CSDN博客讲解了什么是Trustzone,下面我们继续讲解与HSM的区别。
2024-04-25 17:50:39 1268 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 1101
原创 密码学基础 -- ECC
当前公认安全有效的三大类公钥密钥体制分别为基于大数因子分解难题(RSA)、离散对数难题(DSA)和椭圆曲线离散对数(ECC)难题的密码体制。最初RSA由于其容易理解被广泛运用,但随着计算机性能的提升,要保证RSA的安全性,则必须要增加密钥长度,所以我们可以看到RSA密钥从1024bit慢慢来到了4096比特。
2024-04-22 19:07:55 718
原创 汽车网络安全 -- SOC和MCU的HSM方案梳理
如果我们把HSM当成黑盒子,只用它的相关功能就好了;但实际上从成本和场景出发,信息安全解决方案是需要客制化的;例如,某些控制件只需要支持SecOC和少量的密钥存储,那么SHE就完全可以满足要求,上HSM价格更贵且浪费了,这对成本敏感的OEM是不可接受的。所谓我们来看看目前MCU大厂的HSM方案,以U2A、S32K3、TC3xx为例。
2024-04-18 18:29:26 291 6
原创 汽车网络安全 -- ECU会遭受黑客怎样的攻击?
黑客针对汽车ECU的网络攻击某种意义上讲是通过非授权方式访问到目标ECU内部资源,从而获取ECU内部数据、影响该ECU的运行状态、导致功能失效等。获取控制权限:例如车辆行驶过程劫持程序执行流程,影响该ECU的系统机密性、完整性等;获取、篡改程序和数据信息:例如改装车刷ECU提升动力、获取车主个人隐私信息、获取整车敏感数据等;拒绝服务:通过内存破坏使得目标ECU失去提供正常服务的能力,导致系统失效。因此,针对上述三类攻击目的,我们就可以定义出一个ECU到底需要保护哪些资产。
2024-04-17 18:50:38 189
原创 密码学基础 -- 走进RSA(2)(放弃数学原理版)
从上面密码学基础 -- 走进RSA(1)(放弃数学原理版)-CSDN博客我们知道了非对称算法的密钥对使用时机,那么接下里我们继续讲解RSA,我们分别从RSA加解密、签名验签以及其原理概述入手有了上述测试,我们对RSA有了感性认识,接下来就讲点纯理论的东西。RSA是由麻省理工的Rivest、Shamir和Adleman在1978年提出,其数学基础用到了欧拉定理,安全性由大因子分解十分困难保证,利用了单向陷门函数的原理,具体如下:其中{e,n}表示公钥,{d,n}表示私钥。该算法安全在哪里呢?
2024-04-15 19:41:02 1105
原创 密码学基础 -- 走进RSA(1)(放弃数学原理版)
在讲RSA原理时,咱们先来思考非对称算法的几个问题。那么我们带着问题动手撸撸代码来熟悉RSA。
2024-04-15 19:39:41 485
原创 入门Adaptive AUTOSAR(一) -- 为什么要提Adaptive(2)
我们简单聊了Adaptive的由来,接下来我们比较CP和AP的区别在哪里。
2024-04-14 21:47:59 336
原创 入门Adaptive AUTOSAR(一) -- 为什么要提Adaptive(1)
这就是AUTOSAR的设计理论:主机厂基于新的整车电子电气架构设计总体功能时,是不太能够确定具体的ECU个数和功能分配(大家肯定有今天这个功能还在左域控、明天就移到右域控的经历),毕竟是概念阶段,具体细节是由各研发部门去实现的。值得注意的是,在大家很熟悉的CP AUTOSAR框架下,上述运行在硬件上的所有功能均是静态配置, 在程序发布前就已经按照预定规则静态编译和链接,这就意味着该ECU的功能是可预期且有时序概念的,这也是汽车控制器最初安全可控的理念。一旦涉及到平台切换,做基础软件的同袍就开始烦躁;
2024-04-14 21:46:47 806
原创 未来汽车硬件安全的需求(2)
笔者认为基于汽车微控制器与集成硬件安全模块相结合的系统解决方案是ECU级别的基本保护,以及关键通信接口和网络中的一些额外的汽车安全控制器(如中央网关,远程信息处理,电动汽车的车载充电器或域控制器),这是最经济的方法,可以在未来领先于可能的攻击者一步。中央网关负责控制和监控每个ECU允许的固件版本,从OEM OTA云服务器下载最新固件,解密、认证和检查接收到的固件,解包并将接收到的服务包拆分到各个ECU,建立到这些ECU的安全传输通道,更新和重置软件映像,并提示IVI向驱动程序显示更新详细信息。
2024-04-12 19:16:53 580 3
原创 未来汽车硬件安全的需求(1)
智能网联汽车依赖于各种不同的技术来提高驾驶员的舒适度、道路安全和移动服务。但由于其与外部世界的互连和易于访问,智能网联汽车会受到网络世界中的恶意软件操纵和硬件级别的物理攻击。这导致需要基于硬件的安全措施来抵御通过无线接口的间接攻击和直接物理攻击。本文讨论了基于硬件的安全在日益增长的车辆自动化、互联性背景下的作用,以及由此产生的对车辆安全的需求。简单、非侵入式攻击的威胁;未来量子计算机攻击的潜在威胁;未来E/E架构的变化;网络安全在标准、监管、认证方面的举措;当前和未来车载网络中的安全用例。
2024-04-12 19:16:16 1188
原创 英飞凌TC3xx SMU再述
MCU一般由内核子系统、系统管理子系统、外设子系统、电源子系统等等组成;在设计时每个子系统不可能保证完全没有bug,也不能保证芯片在运行过程中不会出现随机硬件失效(例如ECC,位反转等);针对系统失效:可以通过持续和严格的过程改进来尽量避免:针对随机硬件失效:可以通过工艺设计预防、引入功能安全机制来探测和缓解;如下:在TC3xx里,每个功能安全机制都会产生一个名叫“SMU alarm”的信号;试想,这么多的alarm如何管理?
2024-04-11 18:26:20 942
原创 密码学基础--搞清RFC和PKCS(2)
基本标准,用于定义公钥和私钥的语法、消息和数字签名的格式、用于每个级别的加密和解密的不同算法以及数字证书的格式该标准在2012年重新发布为RFC 8017。RFC最初是作为IETF工作文档和标准的一种形式,但后来成为了一个广泛接受的标准和参考文档的集合。因此,尽管它们服务于不同的目的,但PKCS和RFC之间的交叉影响是可能的,特别是在公钥密码学和网络安全领域。可以看到,PKCS和RFC尽管是由不同的组织发布并服务于不同的目的,但它们之间关系是比较密切的。指定存储的加密数据的语法。
2024-04-10 18:58:47 1264
原创 密码学基础--搞清RFC和PKCS(1)
昨天从生成密钥对开始逐步了解了公钥、证书等各种编码方式,今天继续趁热打,做一个理论知识汇总。Ps:我只是标准的翻译搬运工。
2024-04-10 18:56:46 763
原创 对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 188
原创 对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 84
原创 汽车标定技术(二十) -- 移植标定栈时主机厂、供应商应该做什么?(2)
上面汽车标定技术(十九) -- 移植标定栈时主机厂、供应商应该做什么?(1)-CSDN博客我们用了较小篇幅讲解了供应商视角做标定栈移植阶段针对需求、代码需要注意的事项,那么接下来我们继续看,在A2L、模型开发、OEM视角还需要做什么内容?
2024-04-08 18:30:58 274 4
原创 汽车标定技术(十九) -- 移植标定栈时主机厂、供应商应该做什么?(1)
这个问题应该困扰了不少朋友。在之前做基础软件供应商时,经常接到这些问题:A2L文件里标定量、测量量地址怎么替换呀?你们给的A2L Master文件怎么在INCA上用不了呢?每次模型生成代码都得手动给标定、观测量分配地址空间,有没有简单办法?以至于我后来在释放配置参考手册都把这部分增值服务写进去了。所以,今天就来谈谈不同开发视角下对于标定栈集成需要注意什么。
2024-04-08 18:29:26 348 2
原创 在你开发子网网关功能时发现没买对应插件,你在开发什么(2)
我们上面讲到了从软件层面考虑如何实现网关功能,接下来我们继续讨论软件实现细节,以及S32G 的LLCE如何实现该功能。我们讲到最好不要去直接修改静态代码,那么再往上层走,有没有这样的接口呢?既然是应用指定的,那我在里面搞gateway功能应该也是可行的。在这里我们就找到了切入点,那么要如何实现gateway功能呢?从通信矩阵入手,做一个类似PduR的示例让系统进行填写,生成类似的路由表CanDriver_RouteTable和对应DBC,先导入到工具里骗骗达芬奇生成pdu handle;
2024-04-07 18:19:12 168
原创 在你开发子网网关功能时发现没买对应插件,你在开发什么(1)
不止一次碰到过上述情况。之前做VCU需要路由某些关键信号,做座舱需要路由报文给下挂子节点时,本以为使用达芬奇点点点就可以搞定,结果打开Gateway功能,发现采购没购买Add-Ons。抓瞎了,重新提预算的话,不仅成本上去了,开发节点也守不住。怎么办?那就从两头抓,一方面继续追加采购,另一方面考虑根据需求手写。
2024-04-07 18:17:19 57
原创 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 160
原创 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 269
原创 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 1107
原创 汽车信息安全 -- HSM是否可以作为信任根?(2)
在上文,我们讲解了信任锚和信任根,本文继续讲解汽车中关于硬件信任锚点的内容,最终回归到问题:HSM是否可以作为信任根?
2024-03-28 16:42:52 369 2
原创 汽车信息安全 -- HSM是否可以作为信任根?(1)
最近在讨论汽车信息安全时听到一些新的概念:在车规MCU中HSM不能作为信任根。但回想起之前做ECU产品时,HSM又像个黑盒子;特别是在做安全启动时,基本只做Host侧程序数据的身份、完整性验证,这很明显是把HSM当作了信任根。有分歧就有讨论,偏信则暗,兼听则明;那么今天就来收集整理下信任根、信任锚等概念,理清思路;
2024-03-28 16:40:49 416
原创 技术复盘:Flash Memory揭秘(2)
上一篇我们从NVM 的分类,Flash的编程\擦除基本原理做了分析,下一篇我们将继续描述Nor、NANDFlash区别,以及eFlash在车规MCU中遇到的问题。
2024-03-25 18:05:28 1000
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关注的人