- 博客(65)
- 收藏
- 关注
原创 DoIP-1 简介
DoIP-Diagnostic Over Internet Protocol ,基于TCPIP协议族的诊断传输协议DoIP国际标准定义为ISO 13400,总共由五部分组成: ISO13400-1DoIP的综述 ISO13400-2DoIP的传输层和网络层服务(主体部分) ISO13400-3基于IEEE802.3的物理属性(线束、接口) ISO13400-4DoIP高速接口定义 ISO13400-5一致性测试定义。
2024-07-07 21:55:31
952
原创 整车功能开发
上面的表格,是一种车辆特性的表达方式,其实比较传统,我们称之为配置表(Feature list),简单来说,就是具备什么样的特征,也就是我有什么,拿整车配置表来说,就是告诉用户或者内部开发人员,我有哪些东西,而且这些东西很多是我的特色,买我性价比高。轮胎尺寸、轴距、电池容量、续驶里程;参数类配置说明整车、系统或零件的类型和参数;零件类配置说明整车装有哪些零件,有些零件名称本身就可以表示其具有的功能,如车顶行李架(功能为行李固定),电动助力转向管柱(功能为车辆转向);
2024-06-30 17:23:27
2276
原创 蓝牙BLE安全-SSP简单安全配对
在这种模型中,只有显示屏的设备显示一个6位数的数字,然后用户在具有输入能力的设备上输入该数字。设备验证阶段如下图所示,注意与LSC不一样的地方在于,SSP的设备双方都是申验者和验证者,即通信的设备既会验证对方的Link Key,也会被对方验证本方的Link Key,只要有一方验证失败,则这整个阶段都验证失败。接下来的加密密钥的生成以及加密算法如下图所示,可以看到其大致与LSC一致,不过采用的算法完全不一样,这里采用h3来生成加密密钥,使用AES-CCM来加密数据包。包的长度时,要使用专门的。
2024-02-19 19:52:49
2320
原创 蓝牙BLE学习-GATT和ATT
GATT-Generic Attribute profle-通用属性配置文件。GATT层是传输真正数据所在的层。包括了一个数据传输和存储架构以及其基本操作。GATT用来规范attribute中的数据内容,并运用group(分组)的概念对attribute进行分类管理。没有GATT,BLE协议栈也能跑。但互联互通就会出问题,也正是因为有了GATT和各种各样的应用profile,BLE摆脱了Zigbee等无线协议的兼容性困境,成为了出货量最大的2.4G无线通信产品。
2024-02-19 19:31:05
2598
原创 BLE蓝牙安全机制
蓝牙配对是建立安全连接的关键过程。对于传统蓝牙应采用SSP配对方式,而低功耗蓝牙4.0和4.1的版本应使用legacy pairing配对方式,4.2以后的版本应采用Secure connection的配对方式。传统的蓝牙采用的配对方式如下:蓝牙2.1版本之前使用的Legacy pairing。该配对方式蓝牙双方采用输入固定pin Code来实现身份的认证,该方式目前已经不在使用。蓝牙2.1版本提出了简单安全配对(Secure simple pairing)的方式。
2024-02-13 12:34:49
2232
原创 蓝牙BLE学习-安全
BLE的配对和绑定是一连串的动作,总结下来可以用下图来表示。阶段1:配对特征交换,得到临时密钥(TK)值(配对请求、配对响应)阶段2:身份确认以及短期密钥(STK)生成(通过安全管理协议(SMP)配对),确定自己正在和一个真正想要通信的设备通信,而非第三方。即确定对方身份。阶段3:传输特定密钥(密钥分配)。绑定所需存储到安全数据库的数据也是在此阶段发送的。上述三阶段总结:配对认证:主从机一方提供密码,一方输入密码,如果双方密码一致,那么此密码将作为TK(临时密码)。
2024-02-13 12:07:15
3217
原创 蓝牙BLE学习-GAP
GAP层(Generic access profile-通用访问配置文件)。GAP是对LL层payload(有效数据包)如何进行解析的两种方式的一种,而且也是最简单的一种。GAP简单的对LL payload进行一些规范和定义,因此GAP能实现的功能极其有限。GAP目前主要用来进行广播,扫描和发起连接。GAP保证了不同的BLE设备可以互相发现对方并建立连接GAP定义了蓝牙设备如何发现和建立与其他设备的安全或不安全连接。它处理一些一般模式的业务,比如询问、命名和搜索,还处理一些安全问题,比如担保。
2024-02-13 08:53:01
1653
原创 蓝牙BLE学习-蓝牙广播
什么叫做广播,顾名思义就像广场上的大喇叭一样,不停的向外传输着信号。不同的是,大喇叭传输的是音频信号,而蓝牙传输的是射频信号。BLE使用的是无线电波传递信息,就是将数据编码,调制到射频信号中发射。BLE使用的射频频率是2.4GHz。跟WIFI、Zigbee等协议使用的是同一频段。那如何做到使用同一频段而有不相互干扰呢?首先要知道的是2.4G指的不是某一个频率,而指的是一个频段(2400MHz-2483.5MHz)。在这个频段内每隔2M为一个信道,共40个信道。
2024-02-12 20:02:05
4162
原创 蓝牙BLE学习-概述
蓝牙,直接来自于一位国王的名字--King Harald ‘Bluetooth' Gromsson。这位国王因两件事留名于史,其一是在公园958年统一了丹麦和挪威,其二是在其死后,其牙齿呈现出暗蓝色的颜色,因而得名蓝牙为绰号。而蓝牙联盟之所以选择它作为联盟的名字,则是看中了King Harald在统一丹麦和挪威上的贡献。联盟希望,该技术能够像他一样,将PC和无线产业用短距离无线传输连接在一起。
2024-02-12 10:46:29
1924
1
原创 WP29缔约国
美国、加拿大、日本、法国、英国、欧洲联盟、德国、俄罗斯、中国、韩国、意大利、南非、芬兰、匈牙利、土耳其、斯洛伐克、新西兰、荷兰、阿塞拜疆、西班牙、罗马尼亚、瑞典、挪威、塞浦路斯、卢森堡、马来西亚、印度。
2023-09-13 15:28:11
316
原创 ARM编程模型-常用指令集
由上述例子所示,每调用一级子函数,我们都把返回地址存入到未分组寄存器中,但是未分组寄存器毕竟是有限的,像Linux内核函数的调用层次往往很深,通用寄存器根本不够用,要想保存返回地址,就需要对数据进行压栈,那我们就要为每个模式的栈设置空间。操作数1应是一个寄存器,操作数2可以是一个寄存器,被移位的寄存器,或一个立即数。未设置的掩码位保持不变。对大多数的Thumb指令而言,没有使用条件执行(标志一直都是置位的),源寄存器和目标寄存器是相同的,只使用了低端寄存器,常量有大小的限制,没有使用内嵌桶形移位器。
2023-09-03 13:43:04
5078
原创 ARM编程模型-指令流水线
流水线技术通过多个功能部件并行工作来缩短程序执行时间,提高处理器核的效率和吞吐率,从而成为微处理器设计中最为重要的技术之一。
2023-09-02 19:29:36
2233
原创 ARM编程模型-寄存器组
Cortex A系列ARM处理器共有40个32位寄存器,其中33个为通用寄存器,7个为状态寄存器。usr模式和sys模式共用同一组寄存器。
2023-09-02 16:16:23
1478
原创 ARM编程模型-状态模式
ARM的两种工作状态大部分的ARM处理器都实现了两种指令集,32位ARM指令集和16位Thumb指令集,看生成的机器码是32位的还是16位的ARM v6引入了新的指令集Thumb-2,能够提供32位和16位的混合指令,在增强了灵活性的同时保持了代码的高密度。ARM的2种工作状态ARM状态:执行32位ARM指令集Thumb状态:执行16位Thumb指令集或v6及以后版本支持的Thumb-2指令集。
2023-09-02 14:41:55
603
原创 ARM编程模型-内存空间和数据
ARM属于RISC体系,许多指令单周期指令,是32位读取/存储架构,对内存访问是32位,Load and store的架构,只有寄存器对内存,不能内存对内存存储,CPU通过寄存器对内存进行读写操作。ARM的寻址空间是线性地址空间,典型的32位地址下,空间大小为232 = 4G.注:X86 寻址是段+偏移量。
2023-09-02 14:34:32
1129
原创 ARM处理器核心概述
紧接着LDR指令后用相同寄存器的数据操作会引起互锁,原因使用相同的寄存器,后面的指令执行依赖相同寄存器。需要注意的是,PC指向的是将要被预取的指令,而不是执行的指令。3级流水线:取值解码执行,从而允许 一些操作同时运行。ARM920T-arch v4T.哈佛结构,5级流水线,具有MMU。ARM V6架构,8级流水线,支持静态和动态的分支预测以及返回堆栈。提供虚拟地址到物理地址的转换,提供操作系统的续存管理。面向复杂的APP的processor,如移动终端。分支指令的存在可能打断流水线的运行。
2023-08-29 21:27:36
476
原创 车载以太网物理层
在微控制器的每个时钟周期中,MII接口到来的数据是4个bit,PHY从MII接口收到数据后,会首先进行一个4B3B的转换,为了匹配25MHz * 4bit = 100Mbit/s的速率,PHY的MII接口时钟周期应该是33.3333M,每次接收3bit,也实现了33.3333M * 3bit = 100Mbit/s的速率。最后一步是PAM3,将逻辑的-1,0,1转化为在双绞线上的电压,所以,最终在总线上信号的波特率是66.666MHz,但是它实现了100Mbit/s的通信速率。
2023-08-15 21:48:20
779
原创 威胁分析风险评估(TARA)影响和攻击可行性评估参考
在威胁分析风险评估(TARA)过程中,风险等级由对资产安全属性侵害造成后果的影响等级和威胁的可能性两方面综合评估。备注:以上内容的评估皆是建立在由信息安全问题引起并导致的前提下。
2023-08-01 21:25:11
1268
原创 嵌入式硬件系统的基本组成
冯.诺依曼架构特点是指令代码和数据存放在同一个存储空间,是统一编址的,并行度不够,对指令的操作和对数据的操作要分开,指令和数据通过同一总线访问。系统上电后在主存中的代码直接运行,主存储器的特点是速度快,一般采用ROM、EPROM、Nor Flash、SRAM、DRAM等存储器件。嵌入式微处理器有许多不同的体系,即使在同一体系中也可能有不同的时钟速度和总线数据宽度、集成不同的外部接口和设备。嵌入式系统的硬件是以包含嵌入式微处理器的SOC为核心,主要由SOC、总线、存储器、输入/输出接口和设备组成。
2023-07-30 17:05:01
9198
原创 自动驾驶感知系统--惯性导航定位系统
(f)量化误差,这在所有数字系统中是固有的,由于它可能存在于标准化环境中,当输入不变时它的值可能是变换的。该系统通过加速度计测量车辆在惯性参考系中的加速度,通过陀螺仪测量载体的旋转运动,可以进行惯性坐标系到导航坐标系的转换,将角速度相对时间进行积分,结合车辆的初始运动状态(速度,位置),就能推算出车辆的位置和姿态信息。牛顿第二定律在INS中也有重要的作用,简单来说,牛顿第二定律说明了加速度的大小与作用力成正比,方向与作用力的方向相同,数学表达式为F=ma。这种噪声的功率谱密度以1/f减小,其中f是频率。
2023-07-29 19:30:56
2900
原创 自动驾驶感知系统-全球卫星定位系统
空间位置即GNSS卫星在某坐标系的坐标,为此首先要建立适当的坐标系来表征卫星的参考位置,而坐标又往往与时间联系在一起,因此,定位是基于坐标系统和时间系统来进行的。GPS提供具有全球覆盖、全天时、全天候、连续性等优点的三维导航和定位能力,作为先进的测量、定位、导航和授时手段、除了在军事上起着举足轻重的作用外,在国家安全、经济建设和民生发展的各个方面都扮演着重要的角色。卫星导航系统的误差从来源上可以分为4类:与信号传播有关的误差,与卫星有关的误差,与接收机有关的误差以及地球潮汐、负荷潮等造成的其他误差。
2023-07-29 19:26:26
1393
原创 自动驾驶感知系统-超声波雷达
超声波雷达的工作原理可用图的数学模型来表示,其中α为超声波探测角,一般UPA的探测角为120度作用,APA的探测角较小为80度左右,β为超声波雷达检测宽度范围的影响元素之一,该角度一般较小。采用超声波雷达测距时,超声波发射器先向外面某一个方向发射出超声波信号,在发射超声波的同时开始计时,超声波通过空气进行传播,传播途中遇到障碍物就会立刻反射回来,超声波接收器在接收到反射波立即停止计时。超声波能量消耗较为缓慢,防水、防尘性能好,传播距离较远,穿透性强,测距方法简单,成本低,且不受光线条件的影响。
2023-07-23 22:29:04
1612
原创 自动驾驶感知系统-毫米波雷达
返回的波形和发出的波形之间有频率差,这个频率差是呈线性关系的:物体越远,返回波收到的越晚,那么它跟入射波的频率差就越大。在自动驾驶汽车领域,车载毫米波雷达通过天线发射毫米波,接收目标反射信号,经后台处理后快速准确地获取汽车车身周围的物理环境信息(如汽车与其他物体之间的相对距离,相对速度、角度、运动方向等),然后根据所探知的物体信息进行目标跟踪和识别分类,进而结合车身动态信息和其他传感器接收的信息进行数据融合,通过中央处理单元(ECU)进行智能处理,经合理决策后,及时对汽车运动执行控制,从而实现自动驾驶。
2023-07-23 21:35:36
1284
原创 自动驾驶感知系统-摄像头
双目摄像头是通过对两幅图像视差的计算,直接对前方景物(图像所涉及的范围)进行距离测量,因此无须判断前方出现的物体是什么类型的障碍物,不用像单目摄像头那样建立并维护庞大的样本特征数据库。依靠两个平行布置的摄像头产生的视差,找到同一物体所有的点,依赖精确的三角测距,就能够算出摄像头与前方障碍物的距离,实现更高的识别精度和更远的探测范围。在140km/h的车速下,汽车每秒要移动40m的距离,为避免两次图像信息获取间隔期间自动驾驶汽车驶过的距离过长,要求车载摄像头具有不低于30f/s的帧率。单目摄像头采集的数据。
2023-07-23 21:31:41
1883
原创 自动驾驶感知系统-激光雷达
借助LiDAR本身的特性可以很好的探测反射障碍物的远近,大小,甚至表面形状,有利于障碍物检测准确性的提高,而且在算法方面比起机器视觉算法来也比较简单,更适合无人车的需求,下图为激光雷达生成的点云图。最后,将初始位置信息,激光雷达提取的特征跟高精地图的特征信息进行匹配,从而获取一个准确的定位。利用以下简化的概率模型:已知t0时刻的GNSS信息,t0时刻的点云信息,以及t1时刻无人车可能位于的3个位置P1,P2,P3(为了简化问题,假设无人车会在这3个位置中的某一个),求t1时刻车在这3点的概率。
2023-07-23 21:27:11
1122
原创 自动驾驶技术架构
自动驾驶汽车技术架构较为复杂,涉及了多领域的交叉互容,例如汽车、交通、通信等,基于自动驾驶相关的软硬件、辅助开发工具、行业标准等各方面关键问题,自动驾驶汽车关键技术可分文以下几个部分。
2023-07-23 21:19:28
2041
原创 自动驾驶分级和技术架构
即在有限的条件下实现自动控制,例如,在预先设定的路段(例如高速、低流量的城市路段),自动驾驶系统可以独立负责整个车辆的控制,然而,在特殊紧急情况下,驾驶员仍然需要接管,但系统需为驾驶员预留足够的警告时间。L3级别将解放驾驶员,无须随时监控道路状况,将驾驶安全主控权交给车辆自动驾驶系统。与SAE自动驾驶分级基本保持对应,SAE-China将自动驾驶汽车分为DA、PA、CA、HA、FA5个等级,考虑了中国道路交通情况的复杂性,加入了对应级别下智能系统能够适应的典型工况特征,如下表。3) L2:部分自动驾驶。
2023-07-22 17:28:49
1882
原创 Password-Based Key Derivation Functions (PBKDF)
PBKDF(Password-Based Key Derivation Function)
2022-12-08 19:46:15
1235
原创 Infineon TC3XX的 通过HSM 实现Secure Debug
Infineon TC3XX 的 通过HSM实现Secure Debug
2022-12-04 19:12:56
4005
原创 HSM和TEE
本文摘自牛咖网文章HSM和TEEHSM为其他应用程序提供密钥管理和加密功能。TEE还提供让应用程序(或应用程序的安全相关部分)在其隔离环境中执行的功能。常规执行环境 (REE)是TEE社区中的术语,用于表示设备中特定TEE之外的所有内容。HSM如何解决安全问题在集成HSM的设备中,软件架构如下所示:HSM为安全任务提供加密服务。REE中的“安全”任务提供数据,HSM可以接收该数据并加密或解密该数据,然后再将其返回给REE中的任务发布者。支持TEE的设备中实现HSM功能在Android
2022-05-18 23:27:35
3027
原创 DH密钥交换和ECDHE密钥交换
Diffie-Hellman密钥交换Diffie-Hellman算法的有效性是建立在计算离散对数很困难的基础上的,简单如下所述:首先定义素数p的本原根是一个整数,且其幂可以产生1到p-1之间的所有整数,也就是说若a是p的本原根,则a mod p,a^2 mod p,… a^p-1 mod p各不相同,它是整数1到p-1的一个置换对任意整数b和素数p的本原根a,我们可以找到唯一的指数使得b = a^i mod p, 其中i大于等于0,小于等于p-1;Diffie-Hellman密钥交换过
2022-05-17 23:05:54
467
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人