终端设备及其启动方法技术

技术编号:15650191 阅读:228 留言:0更新日期:2017-06-17 03:08
一种终端设备及其启动方法,所述方法包括:运行第一安全代码,验证基本安全内容;当所述基本安全内容验证通过时,运行第二安全代码,验证引导程序;当所述引导程序验证通过时,运行所述引导程序;其中,所述基本安全内容和所述引导程序存储于非易失性的第一存储器中,所述第一安全代码和所述第二安全代码存储于只读的第二存储器中。上述方案可以提高智能终端启动的安全性,并且验证代码的可靠性较高。

【技术实现步骤摘要】
终端设备及其启动方法
本专利技术涉及智能终端领域,特别是涉及一种终端设备及其启动方法。
技术介绍
随着移动终端智能化程度的发展,智能终端操作系统已经可以提供各类应用软件内的运行环境,智能终端的普及和移动互联网应用的繁荣使得越来越多的用户借助智能终端处理各类安全敏感业务,从而使得移动终端面临着各种安全威胁。所有对智能终端领域的入侵都需要更改系统内容,几乎所有的入侵都需要更改关键的系统文件,因此对系统进行完整性和一致性验证非常有必要,对系统的完整性和一致性的验证在智能终端启动时进行,从而保证智能终端安全启动。请参照图1所示的智能终端芯片的典型结构,芯片主要由负责控制、运算功能的处理器及配套片内只读存储器(ReadOnlyMemory,ROM)、随机存取存储器(RadomAccessMemory,RAM)、联合测试工作组制定的测试接口标准(JointTestActionGroup,JTAG)接口和通用输入输出口(GeneralPurposeInput/Out,GPIO)和其他功能模块组成。由于受到片内存储器容量的限制,智能终端的主要程序都放在外部的非易失性存储器(Non-VolatileMemory,NVM)中。外部RAM是芯片运行期间主要系统的正常启动过程为:1、从片内ROM开始启动;2、将引导程序从NVM移到处理器的内部RAM中去;3、运行引导程序,初始化外部RAM,将代码从NVM拷贝至外部RAM4、程序指针指向外部RAM,开始执行外部RAM中的程序。上述过程没有对代码进行校验,代码可以随意被更改和破解,无法保障智能终端的安全,比如锁网锁卡很容易被破解,所以需要一种机制来确保代码的完整性和一致性,以提高智能终端启动的安全性。
技术实现思路
本专利技术解决的技术问题是提供一种终端设备及其启动方法,保证智能终端启动过程的安全性。为解决上述技术问题,本专利技术实施例提供一种终端设备的启动方法,包括:运行第一安全代码,验证基本安全内容;当所述基本安全内容验证通过时,运行第二安全代码,验证引导程序;当所述引导程序验证通过时,运行所述引导程序;其中,所述基本安全内容和所述引导程序存储于非易失性的第一存储器中,所述第一安全代码和所述第二安全代码存储于只读的第二存储器中。可选地,所述运行第一安全代码,验证基本安全内容,包括:运行所述第一安全代码,以计算出所述基本安全内容的第一哈希摘要;当所述第一哈希摘要与预先保存的哈希摘要相同时,验证所述基本安全内容通过;其中,所述预先保存的哈希摘要存储于一次性可编程的第三存储器中。可选地,所述运行第二安全代码,验证引导程序,包括:运行所述第二安全代码,使用公开密钥算法验证所述引导程序。可选地,所述运行所述第二安全代码,使用公开密钥算法验证所述引导程序,包括:运行第二安全代码,以使用所述基本安全内容中的公钥对所述引导程序中的第二哈希摘要的暗文进行解密得到所述第二哈希摘要的明文,并计算所述引导程序中需要验证部分的实际哈希摘要;当所述引导程序中需要验证部分的实际哈希摘要与解密得到的所述第二哈希摘要的明文相同,则验证引导程序通过其中,所述第二哈希摘要的暗文预先被第一私钥进行加密,所述第一私钥与所述基本安全内容中的公钥构成一组密钥对。可选地,所述公开密钥算法为RSA算法或椭圆曲线算法。可选地,所述基本安全内容还包括以下一个或多个:国际移动设备识别码、产品号、地区码和语言码。可选地,所述第二存储器与处理器在同一个晶粒或集成在同一个物理芯片上,所述第一存储器与所述物理芯片片外耦合。可选地,所述终端设备的启动方法还包括:当验证所述引导程序通过时,运行所述引导程序,验证映像文件;其中,所述映像文件存储于非易失性的第一存储器中。可选地,所述运行所述引导程序,验证映像文件,包括:运行所述引导程序,以使所述引导程序中的公钥对所述映像文件中的第三哈希摘要的暗文进行解密得到所述第三哈希摘要的明文,并计算所述映像文件中需要验证部分的实际哈希摘要;当所述映像文件中需要验证部分的实际哈希摘要与解密得到的所述第三哈希摘要的明文相同,则验证所述映像文件通过;其中,所述第三哈希摘要的暗文预先被第二私钥进行加密,所述第二私钥与所述引导程序中的公钥构成一组密钥对。本专利技术实施例还提供一种终端设备,包括:处理器、非易失性的第一存储器、只读的第二存储器和一次性可编程的第三存储器;所述处理器,适于运行第一安全代码,验证基本安全内容;当验证所述基本安全内容通过时,运行第二安全代码,验证引导程序;当验证所述引导程序通过时,运行所述引导程序;所述非易失性的第一存储器,适于存储所述基本安全内容和所述引导程序;所述只读的第二存储器,适于存储所述第一安全代码和所述第二安全代码;所述一次性可编程的第三存储器,适于存储预先保存的哈希摘要。可选地,所述处理器适于:运行所述第一安全代码,以计算出所述基本安全内容的第一哈希摘要;当所述第一哈希摘要与预先保存的哈希摘要相同时,验证所述基本安全内容通过。可选地,所述处理器适于运行所述第二安全代码,使用公开密钥算法验证所述引导程序。可选地,所述处理器适于:运行第二安全代码,以使用所述基本安全内容中的公钥对所述引导程序中的第二哈希摘要的暗文进行解密得到所述第二哈希摘要的明文,并计算所述引导程序中需要验证部分的实际哈希摘要;当所述引导程序中需要验证部分的实际哈希摘要与解密得到的所述第二哈希摘要的明文相同,则验证引导程序通过;其中,所述第二哈希摘要的暗文预先被第一私钥进行加密,所述第一私钥与所述基本安全内容中的公钥构成一组密钥对。可选地,所述公开密钥算法为RSA算法或椭圆曲线算法。可选地,所述基本安全内容还包括以下一个或多个:国际移动设备识别码、产品号、地区码和语言码。可选地,所述第二存储器与处理器在同一个晶粒或集成在同一个物理芯片上,所述第一存储器与所述物理芯片片外耦合。可选地,所述处理器还适于:当验证所述引导程序通过时,运行所述引导程序,验证映像文件;其中,所述映像文件存储于非易失性的第一存储器中。可选地,所述处理器还适于:运行所述引导程序,以使用所述引导程序中的公钥对所述映像文件中的第三哈希摘要的暗文进行解密得到所述第三哈希摘要的明文,并计算所述映像文件中需要验证部分的实际哈希摘要;当所述映像文件中需要验证部分的实际哈希摘要与解密得到的所述第三哈希摘要的明文相同,则验证所述映像文件通过;其中,所述第三哈希摘要的暗文预先被第二私钥进行加密,所述第二私钥与所述引导程序中的公钥构成一组密钥对。与现有技术相比,本专利技术实施例的技术方案具有以下有益效果:本专利技术实施例通过运行第一安全代码,验证基本安全内容,当所述基本安全内容验证通过时,运行第二安全代码,验证引导程序,当所述引导程序验证通过时,运行所述引导程序,其中,所述基本安全内容和所述引导程序存储于非易失性的第一存储器中,所述第一安全代码和所述第二安全代码存储于只读的第二存储器中,从而保证基本安全内容和引导程序的完整性和一致性。在此基础上,本专利技术实施例通过引导程序验证映像文件的完整性和一致性。因此,本专利技术实施例的技术方案通过建立自下而上的信任链验证了启动代码的完整性和一致性,进而确保智能终端的安全启动。进一步地,由于本专利技术实施例中验证引导程序的第二安全代码存储于只读的本文档来自技高网
...
终端设备及其启动方法

【技术保护点】
一种终端设备的启动方法,其特征在于,包括:运行第一安全代码,验证基本安全内容;当所述基本安全内容验证通过时,运行第二安全代码,验证引导程序;当所述引导程序验证通过时,运行所述引导程序;其中,所述基本安全内容和所述引导程序存储于非易失性的第一存储器中,所述第一安全代码和所述第二安全代码存储于只读的第二存储器中。

【技术特征摘要】
1.一种终端设备的启动方法,其特征在于,包括:运行第一安全代码,验证基本安全内容;当所述基本安全内容验证通过时,运行第二安全代码,验证引导程序;当所述引导程序验证通过时,运行所述引导程序;其中,所述基本安全内容和所述引导程序存储于非易失性的第一存储器中,所述第一安全代码和所述第二安全代码存储于只读的第二存储器中。2.根据权利要求1所述的终端设备的启动方法,其特征在于,所述运行第一安全代码,验证基本安全内容,包括:运行所述第一安全代码,以计算出所述基本安全内容的第一哈希摘要;当所述第一哈希摘要与预先保存的哈希摘要相同时,验证所述基本安全内容通过;其中,所述预先保存的哈希摘要存储于一次性可编程的第三存储器中。3.根据权利要求1所述的终端设备的启动方法,其特征在于,所述运行第二安全代码,验证引导程序,包括:运行所述第二安全代码,使用公开密钥算法验证所述引导程序。4.根据权利要求3所述的终端设备的启动方法,其特征在于,所述运行所述第二安全代码,使用公开密钥算法验证所述引导程序,包括:运行第二安全代码,以使用所述基本安全内容中的公钥对所述引导程序中的第二哈希摘要的暗文进行解密得到所述第二哈希摘要的明文,并计算所述引导程序中需要验证部分的实际哈希摘要;当所述引导程序中需要验证部分的实际哈希摘要与解密得到的所述第二哈希摘要的明文相同,则验证引导程序通过;其中,所述第二哈希摘要的暗文预先被第一私钥进行加密,所述第一私钥与所述基本安全内容中的公钥构成一组密钥对。5.根据权利要求3所述的终端设备的启动方法,其特征在于,所述公开密钥算法为RSA算法或椭圆曲线算法。6.根据权利要求1-5任一项所述的终端设备的启动方法,其特征在于,所述基本安全内容还包括以下一个或多个:国际移动设备识别码、产品号、地区码和语言码。7.根据权利要求6所述的终端设备的启动方法,其特征在于,所述第二存储器与处理器在同一个晶粒或集成在同一个物理芯片上,所述第一存储器与所述物理芯片片外耦合。8.根据权利要求1所述的终端设备的启动方法,其特征在于,还包括:当验证所述引导程序通过时,运行所述引导程序,验证映像文件;其中,所述映像文件存储于非易失性的第一存储器中。9.根据权利要求8所述的终端设备的启动方法,其特征在于,所述运行所述引导程序,验证映像文件,包括:运行所述引导程序,以使所述引导程序中的公钥对所述映像文件中的第三哈希摘要的暗文进行解密得到所述第三哈希摘要的明文,并计算所述映像文件中需要验证部分的实际哈希摘要;当所述映像文件中需要验证部分的实际哈希摘要与解密得到的所述第三哈希摘要的明文相同,则验证所述映像文件通过;其中,所述第三哈希摘要的暗文预先被第二私钥进行加密,所述第二...

【专利技术属性】
技术研发人员:虞华伟
申请(专利权)人:展讯通信上海有限公司
类型:发明
国别省市:上海,31

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

1