[发明专利]一种保证EFUSE秘钥稳定性的方法及其系统有效
申请号: | 201910317759.5 | 申请日: | 2019-04-19 |
公开(公告)号: | CN110096909B | 公开(公告)日: | 2021-04-20 |
发明(设计)人: | 杨志佳;冯元元;周强 | 申请(专利权)人: | 深圳忆联信息系统有限公司 |
主分类号: | G06F21/78 | 分类号: | G06F21/78;G06F21/57;G06F21/60;G06F11/10;H04L9/08 |
代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 冯筠 |
地址: | 518067 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 保证 efuse 稳定性 方法 及其 系统 | ||
本发明涉及一种保证EFUSE秘钥稳定性的方法及其系统;其中,方法,包括:S1,芯片上电,Bootrom运行;S2,读取EFUSE中的秘钥信息,获取出厂前设置的秘钥key;S3,从Flash中读取Bootloader固件;S4,使用秘钥key对密文的bootloader文件进行解密,生成明文的bootloader文件;S5,对明文的bootloader文件做CRC校验;S6,判断校验是否通过;S7,解析header存放的256bit随机数X和256bit校验数据Y,并对X和Y做异或计算得到Z值;S8,比较Z值和Key的值,记录EFUSE出错的比特位,将出错的比特位信息写到EFUSE的冗余信息中;S9,芯片复位,控制器重新运行BootRom;S10,Bootloader正常运行。本发明利用异或校验的方式,定位EFUSE秘钥出错位置,对出错的EFUSE秘钥进行纠错,保证EFUSE秘钥的稳定性,确保固态硬盘能够正常运行。
技术领域
本发明涉及固态硬盘秘钥技术领域,更具体地说是指一种保证EFUSE秘钥稳定性的方法及其系统。
背景技术
通常,固态硬盘控制器Efuse中保存有关键的秘钥信息,而现有秘钥处理存在以下弊端:1、一旦Efuse中秘钥的某个比特位出现翻转,秘钥便会出错,整个芯片无法正常工作;2、没有利用EFUSE硬件的冗余位纠错功能,对保存在EFUSE中的秘钥没有可靠的纠错方案;因此,无法满足需求。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种保证EFUSE秘钥稳定性的方法及其系统。
为实现上述目的,本发明采用于下技术方案:
一种保证EFUSE秘钥稳定性的方法,包括以下步骤:
S1,芯片上电,Bootrom运行;
S2,读取EFUSE中的秘钥信息,获取出厂前设置的秘钥key;
S3,从Flash中读取Bootloader固件,Bootloader固件包括头文件和密文的bootloader文件;
S4,使用秘钥key对密文的bootloader文件进行解密,生成明文的bootloader文件;
S5,对明文的bootloader文件做CRC校验;
S6,判断校验是否通过;若是,进入S10;若否,则进入S7;
S7,解析明文的bootloader文件中header存放的256bit随机数X和256bit校验数据Y,并对X和Y做异或计算得到Z值;
S8,比较Z值和Key的值,记录EFUSE出错的比特位,将出错的比特位信息写到EFUSE的冗余信息中;
S9,芯片复位,控制器重新运行BootRom,返回S1;
S10,Bootloader正常运行。
其进一步技术方案为:所述秘钥key为打包工具随机生成256bit的随机数。
其进一步技术方案为:所述Bootloader固件采用打包工具再随机生成256bit的随机数X,用于秘钥key的纠错处理,由Y=key⊕X异或公式计算出256bit的校验数据Y,将秘钥Key写到SSD控制器芯片的EFUSE中,打包工具打包bootloader,对bootloader做CRC计算,并将生成的CRC值、随机数X和校验数据Y值写到bootloader固件的header中。
其进一步技术方案为:所述S7包括:
S71,解析明文的bootloader文件中header存放的256bit随机数X和256bit校验数据Y;
S72,对X和Y做异或计算得到Z值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳忆联信息系统有限公司,未经深圳忆联信息系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910317759.5/2.html,转载请声明来源钻瓜专利网。