1、定义:Android证书是用于识别开发者身份、确保应用完整性和防止应用被改动的数字凭证,通常以.keystore
文件形式存在。
2、作用:对应用进行签名,保证应用的来源可靠性,防止反面改动;实现应用更新机制;支持跨应用通信安全;防止反面软件侵入。
1、生成密钥库文件:
使用keytool命令:在终端或命令行窗口输入keytool -genkeypair -v -keystore mykeystore.keystore -alias myalias -keyalg RSA -keysize 2048 -validity 10000
,其中mykeystore.keystore
是生成的密钥库文件名,myalias
是别名,可自定义,执行命令时需输入密码、姓名、组织等信息。
使用Android Studio:选择“Build”->“Generate Signed Bundle/APK”,点击“Create new…”按钮,填写相关信息后点击“OK”完成生成。
2、生成证书签名文件:
使用keytool命令:继续在终端或命令行窗口中输入keytool -export -v -keystore mykeystore.keystore -alias myalias -file mycertificate.crt
,其中mycertificate.crt
是生成的证书签名文件名。
使用Android Studio:在“Generate Signed Bundle/APK”对话框中,选择之前生成的密钥库文件和相应信息,点击“Next”,在下一步的签名证书信息页面点击“Finish”即可生成证书签名文件。
目录 | 说明 |
system/etc/security/cacerts | 存放Android系统的根证书库,其中的根证书用于所有应用。 |
system/etc/security/cacerts_google | 主要用于system/update_engine 、external/libbrillo 和system/core/crash_reporter 等模块。 |
1、问题:如果Android证书到期了怎么办?
解答:需要在证书到期前重新生成新的证书,并对应用进行重新签名,否则,应用可能无法正常更新或在某些设备上无法安装。
2、问题:如何备份和恢复Android证书?
解答:备份证书就是备份生成的.keystore
文件(包含私钥)和相关的密码,恢复时,将备份的.keystore
文件放在指定位置,并在构建应用时使用相同的密码和别名等信息进行签名配置即可。