草庐IT

英飞凌TC3xx--深度手撕HSM安全启动(二)--加密算法解析

        在第一节,我们简单描述了汽车MCU常见的安全启动,以及英飞凌和vector设计的安全启动流程。这里我们就要对启动中所使用的加密算法进行描述。    首先我们来分析在MCU中安全启动时所需要的成员:待校验对象(通常为应用程序)的数据长度、起始地址;待校验对象进行校验时所需要的加密算法;待校验对象进行校验时所需要的密钥;    有了上述三个成员,(注意:开始描述安全启动逻辑代码)启动的信任根(通常是HSM的BootRom)首先会查看待校验对象的数据长度和起始地址是否合法(通常就是范围判断),然后到slot中获取校验对象的验证密钥(思考下我这里为什么不说解密密钥而是说验证密钥?),最

英飞凌TC3xx SOTA分析

1.SOTA功能描述SOTA(Sofewareupdateovertheair),指不连接烧写器的情况下,通过CAN、串口、以太网等通讯方式,实现应用程序的更新。汽车行业里通常有如下几种方案:针对MCU控制器,需要分别开发汽车BootLoader程序(需裁剪UDS协议)和应用程序,MCU上电后首先运行BootLoader,然后正常进入应用程序;当需要更新应用程序时,可通过诊断仪下发指令给MCU,MCU的应用程序收到指令后将设置更新标志位,然后进行复位重新进入BootLoader,Bootloader根据标志位开始擦除旧APP,接收新的APP数据并直接写在APP运行的Flash地址空间。该方案的

mongodb - 如何删除 WiredTigerStat.XX.XX 文件?

在/var/lib/mongodb/中有很多WiredTigerStat.XX.XX文件。我可以删除它们吗?mongo.conf:systemLog:path:/var/log/mongodb/mongod.logdestination:filenet:bindIp:127.0.0.1security:authorization:enabledstorage:dbPath:/var/lib/mongodbjournal:enabled:trueengine:wiredTiger#wiredTiger:#engineConfig:#statisticsLogDelaySecs:30ope

pip安装报错Could not fetch URL https://pypi.org/simple/xx/: There was a problem confirming the ssl c

问题:只是个记录帖):今天使用pip指令安装django时报错:CouldnotfetchURLhttps://pypi.org/simple/django/:Therewasaproblemconfirmingthesslcertificate:HTTPSConnectionPool(host='pypi.org',port=443):Maxretriesexceededwithurl:/simple/django/(CausedbySSLError(SSLEOFError(8,'EOFoccurredinviolationofprotocol(_ssl.c:1129)')))-skippi

git使用git push -u origin master提交远程仓库时报错error: failed to push some refs to ‘‘https://gitee.com/xx报错解决

今天使用git提交到远程仓库时报错,报错如下:error:failedtopushsomerefsto‘https://gitee.com/hxxx-d/gitstudy.git’错误原因:未将远程仓库克隆到本地正确解决办法:1.先与远程仓库建立连接gitremoteaddoriginhttps://gitee.com/hxxx-d/gitstudy.git2.gitcheckoutmaster切换到默认分支3.然后使用gitpulloriginmaster--allow-unrelated-histories将远程仓库的master与本地仓库的进行合并。(–allow-unrelated-h

java报错:类是公共的,应在xx.java文件中声明

publicclassPerson{staticpublicvoidmain(String[]args){System.out.println("helloworld!");}}问题解释:文件名与共有类的类名不一致解决方案:删除代码的public将文件名改为Person相关解释:java文件,只要是共有类就必须与文件名一致java文件可以不包含共有类

英飞凌TC3xx--深度手撕HSM安全启动(一)--安全启动方式

    汽车MCU的信息安全在最近几年是越来越火,而信息安全最重要的一个功能就是系统的安全启动;        从嵌入式角度出发,安全启动最早应用在linux系统上,全称叫secureboot;它是一种逐级验证镜像,从而实现固件可信运行。以常见的uboot启动为例,通常要经过BootRom->SPL->uboot三个大阶段(其中BootRom出厂时掩膜在ROM介质中,不可更改,SPL(SecondatyProgramLoader)用于初始化C语言环境等);BootRom作为信任根,会首先验证SPL代码(这里不讨论具体算法),确认SPL无误后,加载SPL代码到DDR或者SRAM;然后由SPL对u

Web Spider NEX XX国际货币经纪 - PDF下载 & 提取关键词(二)

WebSpiderNEXXX国际货币经纪-PDF下载&解析首先声明:此次案例只为学习交流使用,切勿用于其他非法用途文章目录WebSpiderNEXXX国际货币经纪-PDF下载&解析前言一、任务说明1.PDF下载2.PDF解析提取关键词数据二、Pip模块安装三、网站分析四、核心代码注释1.创建2019年1月1日-至今的时间字符串,存入列表中2.pdf下载3.pdf读取解析五、运行结果六、示例代码总结前言目标网站:https://www.cfets-nex.com.cn/提示:以下是本篇文章正文内容,下面案例可供参考一、任务说明1.PDF下载提示:下载2019年1月1日-至今的"银行间货币市场"P

java - 无法将值 '2012-04-05 10:20:00' 从列 XX 转换为 TIMESTAMP

当JDBC尝试将MySQL(5.1.51)中的有效日期时间转换为java.sql.timestamp时,抛出java.sql.SQLException。一个例子是:java.sql.SQLException:Cannotconvertvalue'2012-04-0510:20:00'fromcolumn40toTIMESTAMP这是第一次Versions:MySQL:5.1.51J/Connector:5.1.19ColumnDefinition:DATETIMEJavaType:java.sql.Timestamp堆栈跟踪:Cannotconvertvalue'2012-04-051