一种嵌入式设备的高安验证方法及装置制造方法及图纸

技术编号:9463073 阅读:81 留言:1更新日期:2013-12-19 00:37
本发明专利技术属于嵌入式设备技术领域,尤其涉及一种嵌入式设备的高安验证方法及装置。本发明专利技术所述的方法用安全芯片的BootRom程序来验证Bootloader程序自身的合法性,在Bootloader程序自身被验证合法之后,Bootloader程序读取分区表以确定需要启动的应用程序分区,Bootloader程序对所述需要启动的应用程序分区进行独立验证。本发明专利技术通过两道合法性验证保证了嵌入式设备的安全性,对应用程序分区进行独立验证提高了验证的效率,分区表为数据升级提供了更为灵活的机制。

【技术实现步骤摘要】
【专利摘要】本专利技术属于嵌入式设备
,尤其涉及一种嵌入式设备的高安验证方法及装置。本专利技术所述的方法用安全芯片的BootRom程序来验证Bootloader程序自身的合法性,在Bootloader程序自身被验证合法之后,Bootloader程序读取分区表以确定需要启动的应用程序分区,Bootloader程序对所述需要启动的应用程序分区进行独立验证。本专利技术通过两道合法性验证保证了嵌入式设备的安全性,对应用程序分区进行独立验证提高了验证的效率,分区表为数据升级提供了更为灵活的机制。【专利说明】一种嵌入式设备的高安验证方法及装置
本专利技术属于嵌入式设备
,尤其涉及一种嵌入式设备的高安验证方法及装置。
技术介绍
嵌入式设备的操作系统为嵌入式系统,嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它是集软硬件于一体的可独立工作的“器件”。嵌入式处理器主要由一个单片机或微控制器(MCU)组成。相关支撑硬件包括显示卡、存储介质(ROM和RAM等)、通讯设备、IC卡或信用卡的读取设备等。嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用闪存(Flash Memory)作为存储介质。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行的一段引导加载程序,其可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。BootLoader程序的主要运行任务就是将内核映象从硬盘读到RAM中,然后跳转到内核的入口点去运行,也即开始启动操作系统。系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。目前,大部分嵌入式设备没有安全BootLoader,一小部分芯片可能有安全BootLoader,但是这些BootLoader对flash的业务应用数据都是整片验证,或者高级一点的是分区是固定的,BootLoader对固定的分区验证,BootLoader需要了解部分业务逻辑,对业务应用有一定的限制,不利于升级。
技术实现思路
鉴于此,本专利技术提供一种嵌入式设备的高安验证方法及装置。本专利技术所述的方法用安全芯片的BootRom程序来验证Bootloader程序自身的合法性,在Bootloader程序自身被验证合法之后,Bootloader程序读取分区表以确定需要启动的应用程序分区,Bootloader程序对所述需要启动的应用程序分区进行独立验证。本专利技术通过两道合法性验证保证了嵌入式设备的安全性,对应用程序分区进行独立验证提高了验证的效率,分区表为数据升级提供了更为灵活的机制。本专利技术技术方案:—种嵌入式设备的高安验证方法,所述方法包括:安全芯片的BootRom程序验证Bootloader程序并启动Bootloader程序;Bootloader程序读取分区表,根据所述分区表确定需要启动的应用程序分区;Bootloader程序对所述需要启动的应用程序分区进行独立验证。进一步地,所述Bootloader程序和应用程序以分区形式存储在flash闪存。进一步地,所述flash闪存包括的分区有=Bootloader分区、分区表分区、分区表备份分区和应用程序分区,其中Bootloader分区用于存储Bootloader程序,分区表分区用于存储分区表,分区表备份分区用于存储备份分区表,应用程序分区用于存储应用程序,包括可启动分区和不可启动分区。进一步地,所述Bootloader程序读取分区表,根据所述分区表确定需要启动的应用程序分区,包括:Bootloader程序读取分区表,找到需要启动的可启动分区;Bootloader程序根据所述需要启动的可启动分区的镜像格式,找到与所述需要启动的可启动分区相关联的所有应用程序分区;所述需要启动的可启动分区和与所述需要启动的可启动分区相关联的所有应用程序分区为需要启动的应用程序分区。进一步地,所述Bootloader程序读取分区表,找到需要启动的可启动分区包括:Bootloader程序读取分区表,顺序查找可启动分区;判断有无查找到可启动分区,如果有,则标记查找到的第一个可启动分区并按顺序筛选出所有可启动分区;在所述按顺序筛选出的所有可启动分区中,顺序查找首选启动分区,如果查找到首选启动分区,则该查找到的首选启动分区为需要启动的可启动分区,并结束查找;否则,所述标记的第一个可启动分区为需要启动的可启动分区。一种嵌入式设备的高安验证装置,所述装置包括:第一验证单元,用于安全芯片的BootRom程序验证Bootloader程序并启动Bootloader 程序;需要启动的应用程序分区确定单元,用于Bootloader程序读取分区表,根据所述分区表确定需要启动的应用程序分区;第二验证单元,用于Bootloader程序对所述需要启动的应用程序分区进行独立验证。进一步地,所述Bootloader程序和应用程序以分区形式存储在flash闪存。进一步地,所述flash闪存包括的分区有=Bootloader分区、分区表分区、分区表备份分区和应用程序分区,其中Bootloader分区用于存储Bootloader程序,分区表分区用于存储分区表,分区表备份分区用于存储备份分区表,应用程序分区用于存储应用程序、包括可启动分区和不可启动分区。进一步地,所述需要启动的应用程序分区确定单元还包括:第一寻找单元,用于Bootloader程序读取分区表,找到需要启动的可启动分区;第二寻找单元,用于Bootloader程序根据所述需要启动的可启动分区的镜像格式,找到与所述需要启动的可启动分区相关联的所有应用程序分区;确定单元,所述需要启动的可启动分区和与所述需要启动的可启动分区相关联的所有应用程序分区为需要启动的应用程序分区。进一步地,所述第一寻找单元还包括:第一查找单元,用于Bootloader程序读取分区表,顺序查找可启动分区;判断单元,用于判断有无查找到可启动分区,如果有,则标记查找到的第一个可启动分区并按顺序筛选出所有可启动分区;第二查找单元,用于在所述按顺序筛选出的所有可启动分区中,顺序查找首选启动分区,如果查找到首选启动分区,则该查找到的首选启动分区为需要启动的可启动分区,并结束查找;否则,所述标记的第一个可启动分区为需要启动的可启动分区。本专利技术有益效果:本专利技术所述的方法包括:安全芯片的BootRom程序验证Bootloader程序并启动Bootloader程序;Bootloader程序读取分区表,根据所述分区表确定需要启动的应用程序分区Jootloader程序对所述需要启动的应用程序分区进行独立验证。本专利技术通过两道合法性验证保证了嵌入式设备的安全性,对应用程序分区进行独立验证提高了验证的效率,分区表为数据升级提供了更为灵活的机制。【专利附图】【附图说明】图1是本专利技术一种嵌入式设备的高安验证方法的一流程图;图2是本专利技术一种嵌入式设备的高安验证方法中flash分区存储示意图;图3是本专利技术一种嵌入式设备的高安验证方法中分区表的本文档来自技高网
...

【技术保护点】
一种嵌入式设备的高安验证方法,其特征在于,所述方法包括:安全芯片的BootRom程序验证Bootloader程序并启动Bootloader程序;Bootloader程序读取分区表,根据所述分区表确定需要启动的应用程序分区;Bootloader程序对所述需要启动的应用程序分区进行独立验证。

【技术特征摘要】

【专利技术属性】
技术研发人员:赵化军王天星王文军李伟东李红艳
申请(专利权)人:北京视博数字电视科技有限公司
类型:发明
国别省市:

网友询问留言 已有1条评论
  • 来自[北京市电信互联网数据中心] 2015年03月31日 06:42
    高安,位于江西省会南昌西部,距南昌35公里,国土面积2439.33平方公里,人口100万,1993年撤县设市,下辖20个乡镇、2个街道办事处、1个风景名胜区管委会,是全国粮食生产先进县市[1]、全国生猪调出大县、全国无公害蔬菜生产基地、全国汽运大市[2]、中国建筑陶瓷产业基地、中国书法之乡[3],境内华林山—上游湖风景区被评为国家AAA级景区。
    0
1