【技术实现步骤摘要】
一种升级包的签名及验签方法、存储介质
本专利技术涉及软件升级
,尤其涉及一种升级包的签名及验签方法、存储介质。
技术介绍
在日常生活中,签名通常被作为个人身份的凭证。当一份文件上有某个人的签名时,便相信此份文件确实已由此人审阅。与之类似,在数字安全领域中,数字签名也起着类似的作用。首先,数字签名证实了一份数字信息确实来自于某个实体。因为基于非对称加密的原理,用私钥加密的消息只能用对应的公钥解密,反之亦然。签名是由该实体的私钥生成,而私钥只由签名方持有,也只能用签名方的公钥对签名进行解密。而当解密成功时,便可相信是签名方生成了此消息。其次,数字签名可以确保消息在传递过程中未被篡改。在做OTA升级功能时,Android升级策略多在进入recovery之后,对Android的SOC的升级包进行签名验证,这样的弊端是只有当进入了recovery升级模式之后,才知道升级包有没有被篡改,并且只能针对SOC的升级包进行签名验证工作,如果是带MCU的升级包,升级MCU之前没有做签名及验签,相当于整个升级包没有做签名,无 ...
【技术保护点】
1.一种升级包的签名方法,其特征在于,包括步骤:/nS1.对源升级包中每个文件生成摘要,得到第一签名文件;/nS2.对所述第一签名文件生成摘要,得到第二签名文件;/nS3.使用私钥对所述第二签名文件进行签名,将签名结果与公钥、证书一起打包,生成第三签名文件;/nS4.将所述第一签名文件、所述第二签名文件、所述第三签名文件添入所述源升级包中的同一目录下,得到新升级包。/n
【技术特征摘要】
1.一种升级包的签名方法,其特征在于,包括步骤:
S1.对源升级包中每个文件生成摘要,得到第一签名文件;
S2.对所述第一签名文件生成摘要,得到第二签名文件;
S3.使用私钥对所述第二签名文件进行签名,将签名结果与公钥、证书一起打包,生成第三签名文件;
S4.将所述第一签名文件、所述第二签名文件、所述第三签名文件添入所述源升级包中的同一目录下,得到新升级包。
2.如权利要求1所述的一种升级包的签名方法,其特征在于,所述步骤S1具体为:
遍历所述升级包中的所有条目,对于条目中的文件用消息摘要算法提取出文件的摘要再采用编码算法进行编码后,作为属性值写入到第一签名文件中的一个块中。
3.如权利要求2所述的一种升级包的签名方法,其特征在于:所述步骤S2具体为:
对所述第一签名文件头部的块用所述消息摘要算法提取出文件的摘要采用所述编码算法进行编码后,作为属性值写入第二签名文件中;对整个所述第一签名文件用所述消息摘要算法提取出文件的摘要再采用所述编码算法进行编码后,作为属性值写入所述第二签名文件中;对所述第一签名文件的各个条目用所述消息摘要算法提取出文件的摘要再采用所述编码算法进行编码后,作为属性值写入所述第二签名文件中。
4.如权利要求3所述的一种升级包的签名方法,其特征在于:所述消息摘要算法采用SHA1或SHA256算法,所述编码算法采用Base64算法。
...
【专利技术属性】
技术研发人员:李益明,
申请(专利权)人:惠州市德赛西威汽车电子股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。