Android签名证书一般为jks和keystore格式,
jks是在android studio里面生成的签名证书
keystore是eclipse,Creator里面生成的。 两者在使用方式上没有什么区别,但是在算法上有一点点区别。
环境
需要JDK环境,配置好环境变量后,输入keytool

签名文件 .keystore转换 .jks
- 首先转换成pkcs12
1 | keytool -importkeystore -srckeystore keystore文件路径 -destkeystore 输出文件路径 -deststoretype pkcs12 |
例如:
1 | keytool -importkeystore -srckeystore /Users/logan/Downloads/keyDir/wuhanins.keystore -destkeystore /Users/logan/Downloads/keyDir/wuhanins.p12 -deststoretype pkcs12 |
回车后输入p12证书密码,确认p12证书密码,keystore证书密码后即可生成p12证书

- 将pkcs12转换为 jks文件
1 | keytool -v -importkeystore -srckeystore P12证书路径 -srcstoretype PKCS12 -destkeystore 输出jks证书路径 -deststoretype JKS |
例如:
1 | keytool -v -importkeystore -srckeystore /Users/logan/Downloads/keyDir/wuhanins.p12 -srcstoretype PKCS12 -destkeystore /Users/logan/Downloads/keyDir/wuhanins.jks -deststoretype JKS |
回车后依次输入新的jks证书密码,确认jks证书密码,p12证书密码即可

至此,keystore证书已经转换为jks证书
签名文件 .jks 转换 .keystore
- 直接转换
1 | keytool -importkeystore -srckeystore jks文件路径 -srcstoretype JKS -deststoretype PKCS12 -destkeystore 输出keystore文件路径 |
例如:
1 | keytool -importkeystore -srckeystore /Users/logan/Downloads/keyDir/pyh.jks -srcstoretype JKS -deststoretype PKCS12 -destkeystore /Users/logan/Downloads/keyDir/pyh.keystore |
回车后依次输入新keystore证书密码,确认keystore证书密码,原始jks证书密码即可

至此直接从jks转换为keysotre完成
- jks转换为p12,再从p12转换为keysotre
1 | keytool -importkeystore -srckeystore jks文件路径 -srcstoretype JKS -deststoretype PKCS12 -destkeystore p12文件路径 |
例如:
1 | keytool -importkeystore -srckeystore /Users/logan/Downloads/keyDir/pyh.jks -srcstoretype JKS -deststoretype PKCS12 -destkeystore /Users/logan/Downloads/keyDir/pyh.p12 |
回车后依次输入p12证书密码,确认p12证书密码,jks证书密码即可

1 | keytool -v -importkeystore -srckeystore p12文件路径 -srcstoretype PKCS12 -destkeystore .keystore文件路径 -deststoretype JKS |
例如:
1 | keytool -v -importkeystore -srckeystore /Users/logan/Downloads/keyDir/pyh.p12 -srcstoretype PKCS12 -destkeystore /Users/logan/Downloads/keyDir/pyh.keystore -deststoretype JKS |
回车后依次输入新的keystore证书密码,确认keystore证书密码,p12证书密码即可

至此,keystore证书转换完毕
