一种嵌入式系统的启动方法及嵌入式装置制造方法及图纸

技术编号:13039837 阅读:94 留言:0更新日期:2016-03-23 11:06
本发明专利技术涉及一种嵌入式系统的启动方法及嵌入式装置,该方法包括:在嵌入式系统上电之后,进入安全模式;在安全模式下,嵌入式系统执行初始化指令,以初始化嵌入式系统;存储器加载启动程序文件,并用第一证书验证启动程序文件的有效性;当启动程序文件有效时,执行启动程序文件;启动程序文件加载操作系统,并用第二证书验证操作系统的有效性;当操作系统有效时,执行操作系统。本发明专利技术通过几项硬件级别的安全措施,以及几项软件级别的安全措施,可以保证嵌入式装置从上电的瞬间开始,直到操作系统完全运行,全程运行的代码都是经过验证的合法代码;从而从源头上保证了没有恶意代码可以替换或者篡改启动程序文件和操作系统。

【技术实现步骤摘要】

本专利技术涉及嵌入式系统的安全启动的问题,特别涉及一种嵌入式系统的启动方法及嵌入式装置
技术介绍
随着嵌入式设备的大量采用,以手机为代表的设备逐渐接管了人们日常使用的各种敏感信息,比如支付宝程序,网银程序等大量的应用程序在手机上面被使用。应用程序提供商比如阿里巴巴本身花了极大的努力来提升自己程序和流程的安全性,但是这一切的努力有一个前提,就是操作系统本身没有被植入病毒,假设黑客在操作系统核心层面已经控制了系统,那么无论这个应用程序自身逻辑有多健全,它都是不安全的。因此对终端用户来说,需要手机提供商保证一点:手机一旦出厂之后,任何情况下都无法自动更新操作系统到一个未经过验证的版本。只有手机提供商官方验证过的版本才可以在用户手机上面升级。由此,嵌入式系统的安全启动很重要。
技术实现思路
本专利技术的目的是解决嵌入式系统在启动的过程中被恶意代码破坏的启动程序和操作系统的问题。为实现上述目的,一方面,本专利技术提供了一种嵌入式系统的启动方法包括以下步骤:在嵌入式系统上电之后,进入安全模式;在安全模式下,嵌入式系统执行存储于存储器中的初始化指令,以初始化嵌入式系统;存储器加载启动程序文件,并用第一证书验证启动程序文件的有效性;当启动程序文件有效时,执行启动程序文件;启动程序文件加载操作系统,并用第二证书验证操作系统的有效性;当操作系统有效时,执行操作系统。具体地,存储器加载启动程序文件,并利用证书验证启动程序文件的有效性步骤包括:读取启动程序文件的第一签名,启动程序的第一签名是由第一证书的私钥产生,并存放在启动程序文件的结尾处;用公钥对第一签名进行计算,得到启动程序文件的第一哈希值;将所述启动程序文件的第一哈希值与通过哈希算法计算出的所述启动程序文件的第二哈希值进行比对,如果比对成功,则启动程序文件有效。具体地,存储器加载启动程序文件,并利用证书验证启动程序文件的有效性步骤之前还包括:验证第一证书的有效性;第一证书有效时,验证启动程序文件;反之,终止验证启动程序文件。具体地,验证证书的有效性的步骤包括:计算第一证书的第一哈希值;读取保险丝(FUSE)里面预先烧录的正确的第一证书的第二哈希值;比对第一证书的第一哈希值和第一证书的第二哈希值,若两者相等则执行验证启动程序文件的有效性;反之,终止执行验证启动程序文件的有效性。具体地,启动程序文件加载操作系统,并用第二证书验证操作系统的有效性步骤包括:读取操作系统的第二签名,操作系统的第二签名是由第二证书的私钥产生;用公钥对第二签名进行计算,得到操作系统的第一哈希值;将所述操作系统的第一哈希值与通过哈希算法计算出的所述操作系统的第二哈希值进行比对,如果比对成功,则操作系统有效,执行操作系统。具体地,启动程序文件加载操作系统,并用第二证书验证操作系统的有效性步骤之前还包括:验证第二证书的有效性;第二证书有效时,验证操作系统;反之,终止验证操作系统。具体地,验证第二证书的有效性的步骤包括:计算第二证书的第一哈希值;读取保险丝(FUSE)里面预先烧录的正确的第二证书的第二哈希值;比对第二证书的第一哈希值和第二证书的第二哈希值,若两者相等则执行验证操作系统的有效性;反之,终止执行验证操作系统的有效性。另一方面,本专利技术提供了一种嵌入式装置,该装置包括:安全模式模块,用于在嵌入式系统上电之后进入安全模式;初始化模块,用于在安全模式下,嵌入式系统执行存储于存储器中的初始化指令,以初始化嵌入式系统;第一验证模块,用于存储器加载启动程序文件,并用第一证书验证启动程序文件的有效性;当启动程序文件有效时,执行启动程序文件;第二验证模块,用于启动程序文件加载操作系统,并用第二证书验证操作系统的有效性;执行模块,验证通过后执行操作系统。优选地,第一验证模块包括加载单元、第一签名单元和第一验证单元;第一加载单元,用于加载启动程序文件;第一签名单元,用于第一证书对启动程序文件进行第一签名;第一验证单元,用于验证第一签名的有效性,若第一签名有效,则执行启动程序文件;反之,终止执行启动程序文件。优选地,第二验证模块包括第二加载单元、第二签名单元和第二验证单元;第二加载单元,用于启动程序文件加载操作系统;第二签名单元,用于通过第二证书对操作系统进行第二签名;第二验证单元,用于验证第二签名的有效,若第二签名有效,则执行操作系统;反之,终止执行操作系统。本专利技术通过几项硬件级别的安全措施存储器、保险丝(FUSE)和芯片安全模式,以及几项软件级别的安全措施哈希值和数字签名,可以保证嵌入式系统从上电的瞬间开始,直到嵌入式操作系统完全运行,全程运行的代码都是经过验证的合法代码;从而从源头上保证了没有恶意代码可以替换或者篡改启动程序文件和操作系统。【附图说明】为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种嵌入式系统启动方法及嵌入式装置的结构流程图;图2为本专利技术实施例提供的一种嵌入式系统启动方法及嵌入式装置的结构示意图;图3为图2中第一验证模块的内部结构示意图;图4为图2中第二验证模块的内部结构示意图;图5为图1所示系统提供的一种验证启动程序文件有效性的方法流程图;图6为图1所示系统提供的一种验证操作系统有效性的方法流程图。【具体实施方式】为了使本
的人员更好地理解本申请中的技术方案,下面将结合附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出任何创造性劳动前提下所获得的其他实施例,都应当属于本申请保护的范围。图1了本专利技术实施例提供的嵌入式系统的启动方法及嵌入式设备的结构流程图。如图1所示,嵌入式系统启动方法步骤:步骤10:在嵌入式系统上电之后,进入安全模式(ARM secure mode);在本专利技术实施例中,安全模式(ARM secure mode)需要满足的软硬件条件为:首先,整个操作系统必须拥有一个可信赖的源头,这个源头由芯片厂商来保证安全;可以选择系统内部的ROM (Read-Only Memory)作为可信赖的源头,在芯片设计的过程中,把ROM (Read-0n 1 y Memory)放当前第1页1 2 3 本文档来自技高网
...

【技术保护点】
一种嵌入式系统的启动方法,其特征在于,包括以下步骤:在所述嵌入式系统上电之后,进入安全模式;在安全模式下,所述嵌入式系统执行存储于存储器中的初始化指令,以初始化所述嵌入式系统;所述存储器加载启动程序文件,并用第一证书验证所述启动程序文件的有效性;当所述启动程序文件有效时,执行所述启动程序文件;所述启动程序文件加载操作系统,并用第二证书验证所述操作系统的有效性;当所述操作系统有效时,执行所述操作系统。

【技术特征摘要】

【专利技术属性】
技术研发人员:卜弋天庹凌云
申请(专利权)人:致象尔微电子科技上海有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1