1.一种modem文件安全保护方法,其特征在于,包括步骤:
A、将原始modem文件的原始块地址、原始Hash以及签名信息组成验证表,并追加到系统分区文件中;
B、在Bootloader启动过程中,采用预设的公钥与签名信息进行匹配,若匹配正确,则获取验证表中原始modem文件的原始块地址,进入到步骤C;若匹配不正确,则判定原始modem文件发生改变;
C、根据原始modem文件的原始块地址计算当前系统分区modem文件的实时Hash,将实时Hash与原始Hash进行对比,若一致,则判定原始modem文件安全;若不一致,则判定原始modem文件发生改变;
所述步骤A之前还包括:
A0、在编译系统文件的过程中,生成记录系统分区所有文件以及相对应的块地址的map文件;所述map文件中记录有系统分区文件名称、块地址,以及系统文件名称与块地址之间的对应关系;
所述步骤B具体包括:
B1、采用预设的公钥对签名信息进行解密,得到解密信息;
B2、读取当前系统分区modem文件的当前块地址和当前Hash,并计算所述当前块地址和当前Hash的内容Hash;
B3、将所述解密信息与所述内容Hash进行对比,若一致,则判定验证表的内容没有被串改;若不一致,则判定验证表的内容被串改;
计算所述原始块地址的原始Hash采用openssl库中提供的EVP系列函数来计算这段地址的SHA256哈希值,如果这段地址的内容大,则采用以4K为单位分段读取内容,输入到EVP函数中,最终输出一个SHA256哈希值。
2.根据权利要求1所述的modem文件安全保护方法,其特征在于,所述步骤A之后还包括:S、将预设的公钥以数组的形式编译到Bootloader,以使得在启动Bootloader时采用所述公钥解密所述签名信息。
3.一种modem文件安全保护系统,其特征在于,包括:
组成模块,用于将原始modem文件的原始块地址、原始Hash以及签名信息组成验证表,并追加到系统分区文件中;
第一验证模块,用于在Bootloader启动过程中,采用预设的公钥与签名信息进行匹配,若匹配正确,则获取验证表中原始modem文件的原始块地址,进入到第二验证模块;若匹配不正确,则判定原始modem文件发生改变;
第二验证模块,用于根据原始modem文件的原始块地址计算当前系统分区modem文件的实时Hash,将实时Hash与原始Hash进行对比,若一致,则判定原始modem文件安全;若不一致,则判定原始modem文件发生改变;
组成模块还包括:
map文件生成单元,用于在编译系统文件的过程中,生成记录系统分区所有文件以及相对应的块地址的map文件;所述map文件中记录有系统分区文件名称、块地址,以及系统文件名称与块地址之间的对应关系;
所述第一验证模块具体包括:
解密单元,用于采用预设的公钥对签名信息进行解密,得到解密信息;
计算单元,用于读取当前系统分区modem文件的当前块地址和当前Hash,并计算所述当前块地址和当前Hash的内容Hash;
对比单元,用于将所述解密信息与所述内容Hash进行对比,若一致,则判定验证表的内容没有被串改;若不一致,则判定验证表的内容被串改;
计算所述原始块地址的原始Hash采用openssl库中提供的EVP系列函数来计算这段地址的SHA256哈希值,如果这段地址的内容大,则采用以4K为单位分段读取内容,输入到EVP函数中,最终输出一个SHA256哈希值。
4.根据权利要求3所述的modem文件安全保护系统,其特征在于,还包括:编译模块,用于将预设的公钥以数组的形式编译到Bootloader,以使得在启动Bootloader时采用所述公钥解密所述签名信息。