[发明专利]一种嵌入式计算机开机身份认证方法在审
申请号: | 202011227091.4 | 申请日: | 2020-11-05 |
公开(公告)号: | CN112241523A | 公开(公告)日: | 2021-01-19 |
发明(设计)人: | 楚要钦;刘小剑;刘永强;施辰光;裴静静;陈川 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F21/44 | 分类号: | G06F21/44;G06F21/60;G06F21/64 |
代理公司: | 中国航空专利中心 11008 | 代理人: | 张昕 |
地址: | 710000 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 计算机 开机 身份 认证 方法 | ||
1.一种嵌入式计算机开机身份认证方法,其特征在于,所述嵌入式计算机硬件组成至少包括:FPGA,通用处理器,FPGA上电配置存储器,所述FPGA分别与处理器和存储器互联,处理器与存储器之间通过FPGA隔离,其中,FPGA支持密钥存储和bit流加解密,所述存储器中存储有加密FPGA上电配置代码、处理器引导程序和开机授权信息;所述开机身份认证方法包括:
步骤1,计算机上电后,FPGA从存储器中加载加密FPGA上电配置代码;
步骤2,FPGA配置完成后,执行嵌入于加密FPGA上电配置代码中的开机身份认证程序;
步骤3,通过执行开机身份认证程序,将计算机的硬件信息和软件程序分别与开机授权信息进行对比,以对计算机进行开机身份认证。
2.根据权利要求1所述的嵌入式计算机开机身份认证方法,其特征在于,所述FPGA中运行的软件程序采用FPGA代码实现,开机授权信息的密钥[A]和开机身份认证程序嵌入在所述FPGA代码中。
3.根据权利要求2所述的嵌入式计算机开机身份认证方法,其特征在于,在执行所述开机身份认证方法之前,还包括:
将嵌入密钥[A]和开机身份认证程序的FPGA代码经FPGA加密软件加密,形成加密FPGA上电配置代码,并将加密FPGA上电配置代码存入FPGA上电配置存储器中。
4.根据权利要求3所述的嵌入式计算机开机身份认证方法,其特征在于,所述加密FPGA上电配置代码用的密钥[B]保存在FPGA内部的专用存储单元中。
5.根据权利要求1所述的嵌入式计算机开机身份认证方法,其特征在于,经对称加密算法加密后的开机授权信息存储在存储器的一次编程OTP区域内。
6.根据权利要求1~5中任一项所述的嵌入式计算机开机身份认证方法,其特征在于,在执行所述开机身份认证方法之前,还包括:
通过处理器执行开机授权程序,以形成开机授权信息,并存储于存储器的OTP区域中;其中,开机授权程序通过仿真器下载至处理器中执行,在计算机的存储器中不存留。
7.根据权利要求6所述的嵌入式计算机开机身份认证方法,其特征在于,所述处理器执行开机授权程序的步骤,包括:
步骤21,收集计算机中核心器件ID信息,器件至少包括处理器和FPGA;
步骤22,采用哈希加密算法,将收集到的所有器件的ID信息加上自定义信息A,生成签名DATA[A];
步骤23,采用对称密钥算法,使用密钥[A]将步骤23中生成的签名DATA[A]加密生成加密数据DATA[B];
步骤24,采用哈希加密算法,将存储器中存储的处理器引导程序形成签名DATA[C];
步骤25,采用对称密钥算法算法,使用密钥[A]将DATA[C]加密,生成加密数据DATA[D];
(6)通过FPGA将DATA[B]和DATA[D]写入FPGA上电配置FLASH的OTP区域,其中,DATA[B]和DATA[D]为所述开机授权信息。
8.根据权利要求1~5中任一项所述的嵌入式计算机开机身份认证方法,其特征在于,所述FPGA执行开机身份认证程序,并将计算机的硬件信息和软件程序分别与开机授权信息进行对比的步骤包括:
步骤31,FPGA从存储器的OTP区域中读取加密数据DATA[D],采用对称密钥算法,使用FPGA中嵌入的密钥[A],对DATA[D]进行解密,生产DATA[C];
步骤32,FPGA采用哈希加密算法,将存储器中存储的处理器引导程序形成签名DATA[C*];
步骤33,FPGA比较数据DATA[C]与DATA[C*]是否一致,如果两者均一致,则FPGA从存储器中读取处理器引导程序,并加载到处理器中运行。否则FPGA通过硬件措施将处理器置于复位状态,停止运行;
步骤34,FPGA从存储器的OTP区域中读取加密数据DATA[B],使用FPGA中嵌入的密钥[A],采用对称算法对加密DATA[B]进行解密,生成DATA[A];
步骤35,FPGA读取FPGA内部自身的ID信息,通过处理器引导程序获取处理器自身的ID信息;
步骤36,FPGA采用哈希加密算法,将在步骤33中收集到的ID信息加上自定义信息A,生成签名DATA[A*]。
步骤37,FPGA比较数据DATA[A]与DATA[A*]是否一致,如果两者不一致,FPGA通过处理器复位控制逻辑将处理器置于复位状态,停止处理器运行;如果两者均一致,则处理器继续执行引导程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011227091.4/1.html,转载请声明来源钻瓜专利网。