首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bios加载过程

Bios加载过程
EN

Stack Overflow用户
提问于 2015-08-14 22:58:07
回答 1查看 134关注 0票数 2

我需要一些关于bios加载/执行过程的解释。我需要验证CPU执行的bios。我的想法是执行MISO数据流(从SPI BIOS闪存到CPU的数据)的HMAC-SHA1。

问题是我不确定MISO数据流是否总是相同的。我做了一些尝试,我总是得到一个与前一个不同的数据流。流的第一部分总是相同的,过了一段时间(我没有设备来转储整个通信并获得发生的时刻),流就不同了。我不确定,但我怀疑这是不同的,因为当计数器达到指定值时,我可以嗅探到流的几个字节,并且我得到了不同的嗅探值。我认为嗅探过程是正确的,但我不能确定(嗅探是由FPGA在CPU和SPI BIOS闪存之间执行的,我编写了VHDL )。

我还注意到,在bios执行期间,CPU至少读取2次重置向量( 0hFFFFF0 )。

CPU是否可能在每次加电时执行不同的步骤?在您看来,是否有可能对数据流进行身份验证?我需要的是确保执行的bios是有效的bios (我的bios )。

我很抱歉这个问题是一团糟,但我对bios和启动过程的了解很差。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2015-08-15 17:16:55

是的,系统通常在通电后重置几次,并且BIOS采用不同的执行路径。此外,SPI控制器可以按块读取闪存部分并缓存这些部分,因此您看到的从闪存读取的内容不一定是CPU执行的内容。不幸的是,你的方法是不可靠的,有一个行业标准的方法可以做到这一点,它被称为测量引导,它涉及到TPM。请在谷歌上搜索一下,看看它是否能满足你的需求。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32013031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档