为了防止APK再传送的过程中被第三方篡改 GOOGLE引入了签名机制
签名过的APK文件比未签名的APK文件多了一个META-AF文件夹 包含了一下三个文件 签名的信息就在这三个文件中
1 对APK文件夹中的文件逐一遍历SHA(或者SHA256)算法计算文件的信息摘要 然后进行BASE64编码后 作为"SHA1-Digest"
属性的值写入到MANIFEST.MF文件中的一个块中 改块有一个"Name"属性 其值就是该文件在APK包中的路径
2 计算这个MANIFEST.MF文件整体的SHA1值 在经过BASE64编码后 记录在CERT.SF主属性块的"SHA1-Digest-Manifest"
属性值下 然后 再逐条计算MANIFEST.MF文件中的每一个块的SHA1 并经过BASE64编码后 记录在CERT.SF中的同名块中
属性名字是"SHA1-Digest"
3把之前生成的CERT.SF文件 用私钥计算出签名 然后将签名以及包含公钥信息的数字证书一同写入CERT.RSA中保存