在对app进行签名,然后上传到某应用市场时,有如下报错
<center>错误提示</center>
签名方式如下
jarsigner -verbose -keystore xxx.keystore -signedjar signed.apk unsigned.apk yyy.keystore
原来是jarsigner默认采用了SHA256withRSA的签名算法,导致在部分4.2以下的Android手机上不能安装。那么只需要指定签名算法即可。重新签名,指令如下
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore xxx.keystore -signedjar signed.apk unsigned.apk yyy.keystore
<center>记录一下自己踩的坑,也希望能帮到碰到同样问题的人。</center>
MD5 SHA1 SHA256 SHA512 SHA1WithRSA 的区别
MD5 SHA1 SHA256 SHA512 这4种本质都是摘要函数,不通在于长度:
MD5 是 128 位,
SHA1 是 160 位 ,
SHA256 是 256 位,
SHA512 是512 位。
SHA1WithRSA 他的 核心算法是 先用sha1 去摘要,然后使用 RSA 加密。但是 他在 sha1 的过程中 加入了一些 关于算法的东西。
作用特点:
SHA1:公钥后处理回传,SHA1是不可逆的、防冲
MD5:防篡改
MD5和SHA1是2种加密算法,用于计算出一段不可逆向计算的数值,以此来验证该文件是否被修改的.
AES:更快,兼容设备,安全级别高;
DES:本地数据,安全级别低
RSA:非对称加密,有公钥和私钥
网友评论