Bootstrap

debug.keystore的制作

一、 背景

开发platform签名的app过程中,用eclipse生成apk后,1)把apk放到服务器,2)调用signapk xxx.apk来签名,3) 拉签名apk到本地安装,过程太复杂。想通过eclipse导入签名后,实现点运行、签名、安装一步搞定。由于eclipse只识别keystore的格式,所以需要将platform.pk8和platform.x509.pem转成keystore格式;

二、 制作源文件

源文件:newbee/build/security/platform.pk8 和platform.x509.pem

密码:xxxxx

三、 具体步骤

(1) 把pkcs8格式的私钥转换为priv.pem格式,生成platform10.priv.pem(以下命令在linux下进行)
openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out platform10.priv.pem

输入密码platform.pk8的密码:xxxxx,如果没有密码的话,则加上 -nocrypt

(2) 生成pkcs12格式的密钥文件
openssl pkcs12 -export -in platform.x509.pem -inkey platform10.priv.pem -out platform10.pk12 -name androiddebugkey
(注:此过程中需要输入密码,用于第三步 srcstorepass使用,下面命令中也使用xxxxx其实可自己定一个)

(3) 生成keystore:

keytool -importkeystore -deststorepass android -destkeypass android -destkeystore debug.keystore -srckeystore platform10.pk12 -srcstoretype PKCS12 -srcstorepass xxxxx -alias androiddebugkey

四、 注意事项

生成的debug.keystore在名称、密码上必须遵循一定的规则,eclipse才能识别(参看上面命令中的红字):

keyname:androiddebugkey

keypass: android

storepass: android

五、 导入keystore

在eclipse中,打开菜单 Window->Preferences->Android->Build->Custom debug keystore,选择制作的debug.keystore;



获取签名的公钥信息:

从APK中解出Meta-INF/cert.rsa,然后执行下述命令。

keytool -printcert -file CERT.RSA

 

;