Android Apk 签名机制

META-INF/CERT.RSA 是 apk 文件的证书

  • 检查 apk 文件中 META-INF/CERT.RSA 证书的指纹信息

keytool -printcert -file xxxx

  • 查看 CERT.RSA 信息(即 x.509 证书格式,其中包含了公钥等)

openssl pkcs7 -inform DER -in xxxx/META-INF/CERT.RSA -noout -print_certs -text

  • 查看公钥

将 CERT.RSA 转为 pem ,在从 pem 中获取公钥

1
2
3
openssl pkcs7 -in CERT.RSA -inform DER -print_certs -out cert.pem

openssl x509 -in cert.pem -pubkey -noout

其中,最底下的签名是通过私钥计算对 CERT.SF 进行计算得出的.

在安装时候,需要通过公钥对该签名进行解密,将得到的信息和 CERT.SF 进行对比,如果相同,则证明是由改公钥的私钥拥有者签发的,如果不同,则视为验证失败

  • 获取 Android Studio 默认签名信息

    keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

作者

PPTing

发布于

2023-04-21

更新于

2024-05-24

许可协议

评论