【技术实现步骤摘要】
一种运行引导程序的方法及装置
本专利技术涉及计算机控制
,尤其涉及一种运行引导程序的方法及装置。
技术介绍
目前,嵌入式系统中,设备一般从外部存储设备中读取引导程序BOOT程序,启动引导程序。直接焊接在设备中的外部存储设备,若外部存储设备中的程序不加任何防护,黑客可以利用系统的漏洞,获取到BOOT程序,亦可焊下存储设备FLASH,通过其他设备暴力读取FLASH中的BOOT程序,反汇编分析BOOT程序并修改BOOT程序,再次写入FLASH。为保护BOOT程序不被损坏,现有技术往往对BOOT程序进行加密处理,处理器启动时,需先对BOOT程序进行解密,再运行BOOT程序。对BOOT程序进行加密处理,需要额外的存储设备用来存储解密的密钥,势必需要额外增加设备成本。
技术实现思路
本专利技术要解决的技术问题是提供一种运行引导程序的方法,利用此方法实现BOOT程序加密密钥在不需要额外存储器的情况下的加密存储,进一步降低设备成本、提高设备性能。本专利技术提供的技术方案如下:一种运行引导程序的方法,所述方法包括:从外部存储器中第一存储区域读取加密过的第一密钥;利用与所述第一密钥对应的第二密钥对所述加密过的第一密钥进行解密,得到所述第一密钥;从所述外部存储器中第二存储区域读取加密过的引导程序的版本头;利用所述第一密钥对所述加密过的引导程序的版本头进行解密,得到所述引导程序的版本头;从所述外部存储器中第三存储区域存储的引导程序中读取部分数据,并计算所述部分数据的第一校验值;如果所述部分数据的第一校验值与所述版本头中第一预定位置的第二校验值相同,则根据所述版本头中第二预定位置 ...
【技术保护点】
1.一种运行引导程序的方法,其特征在于,所述方法包括:从外部存储器中第一存储区域读取加密过的第一密钥;利用与所述第一密钥对应的第二密钥对所述加密过的第一密钥进行解密,得到所述第一密钥;从所述外部存储器中第二存储区域读取加密过的引导程序的版本头;利用所述第一密钥对所述加密过的引导程序的版本头进行解密,得到所述引导程序的版本头;从所述外部存储器中第三存储区域存储的引导程序中读取部分数据,并计算所述部分数据的第一校验值;如果所述部分数据的第一校验值与所述版本头中第一预定位置的第二校验值相同,则根据所述版本头中第二预定位置的第三密钥对所述引导程序的部分数据进行解密;运行所述引导程序的部分数据。
【技术特征摘要】
1.一种运行引导程序的方法,其特征在于,所述方法包括:从外部存储器中第一存储区域读取加密过的第一密钥;利用与所述第一密钥对应的第二密钥对所述加密过的第一密钥进行解密,得到所述第一密钥;从所述外部存储器中第二存储区域读取加密过的引导程序的版本头;利用所述第一密钥对所述加密过的引导程序的版本头进行解密,得到所述引导程序的版本头;从所述外部存储器中第三存储区域存储的引导程序中读取部分数据,并计算所述部分数据的第一校验值;如果所述部分数据的第一校验值与所述版本头中第一预定位置的第二校验值相同,则根据所述版本头中第二预定位置的第三密钥对所述引导程序的部分数据进行解密;运行所述引导程序的部分数据。2.根据权利要求1所述运行引导程序的方法,其特征在于,所述从所述外部存储器中第三存储区域存储的引导程序中读取部分数据,并计算所述部分数据的第一校验值的步骤之前,所述方法还包括:根据所述版本头的第三预定位置的第三校验值,和/或所述版本头的第四预定位置的第四校验值,判断所述版本头是否有效;如果所述第三校验值与第一预定值相同,和/或所述第四校验值与第二预定值相同,则判断结果为所述版本头有效。3.根据权利要求1所述运行引导程序的方法,其特征在于,所述根据所述版本头中第二预定位置的第三密钥对所述引导程序的部分数据进行解密包括:根据所述版本头的第五预定位置的第五校验值,判断所述外部存储器中第三存储区域存储的引导程序是否加密;如果所述外部存储器中第三存储区域存储的引导程序加密,根据所述版本头中第二预定位置的第三密钥对所述引导程序的部分数据进行解密。4.根据权利要求1所述运行引导程序的方法,其特征在于,所述方法还包括:从所述外部存储器中第三存储区域存储的引导程序中读取引导程序数据,并计算所述引导程序数据的第六校验值;如果所述引导程序数据的第六校验值与所述版本头中第六预定位置的第七校验值相同,进一步判断所述外部存储器中第三存储区域存储的所述引导程序是否加密;如果所述外部存储器中第三存储区域存储的引导程序未加密,运行所述引导程序;如果所述外部存储器中第三存储区域存储的引导程序加密,根据所述版本头中第二预定位置的第三密钥对所述引导程序进行解密后,运行所述引导程序。5.根据权利要求1-4任一项所述运行引导程序的方法,其特征在于,所述加密过的引导程序的版本头包括:存放于第一预定位置的第二校验值;存放于第二预定位置的第三密钥;存放于第三预定位置的第三校验值;存放于第四预定位置的第四校验值;存放于第五预定位置的第五校验值;以及,存放于第六预定位置的第七校验值。6.一种运行引导程序的装置,其特征在于,所述装置包括:第一读取模块,用于从外部存储器中第一存储区域读取加密过...
【专利技术属性】
技术研发人员:鲍小云,江坤,刘怀霖,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。