window环境.pk8和.pem合成android系统签名

首先说下遇到的问题:

1.keytool 错误: java.io.IOException: keystore password was incorrect
原因:用的keytool有问题,我是用studio自带的jdk环境里面的keytool,路径在“…/android-studio\jre\bin”。后重新安装jdk1.8,配置好环境变量,使用jdk1.8里面的keytool就正常了。

2.keytool 错误: java.io.IOException: Keystore was tampered with, or password was incorrect
原因:该.jks签名已存在,且密码和输入的密码不一致;

再说下合成的方法:

1.下载安装openssl,并配置好环境变量,有jdk环境变量的可以直接使用keytool;
2.管理员权限打开cmd命令行,切换到platform.pk8和platform.x509.pem所在的目录,输入下面命令:

openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out platform.priv.pem -nocrypt
openssl pkcs12 -export -in platform.x509.pem -inkey platform.priv.pem -out platform.pk12 -name {alias}

此处后会提醒输入密码,假设为:123456

keytool -importkeystore -destkeystore platform.jks -srckeystore platform.pk12 -srcstoretype PKCS12 -srcstorepass {上面输入的123456密码} -alias {alias}

最后会再输入密码确认
完整记录如下:



C:\Users\Desktop>openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out platform.priv.pem -nocrypt

C:\Users\Desktop>openssl pkcs12 -export -in platform.x509.pem -inkey platform.priv.pem -out platform.pk12 -name android
Enter Export Password:
Verifying - Enter Export Password:

C:\Users\Desktop>keytool -importkeystore -destkeystore platform.jks -srckeystore platform.pk12 -srcstoretype PKCS12 -srcstorepass 123456 -alias android
正在将密钥库 platform.pk12 导入到 platform.jks...
输入目标密钥库口令:
再次输入新口令:

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore platform.jks -destkeystore platform.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值