2016-06-01 73 views
1

我有一个单独的密钥存储(JKS),其中包含许多用于不同应用的密钥条目/别名。 现在一个应用程序将被移动到另一个开发人员,我想为他导出/提取单个密钥/别名。Android - 从密钥库导出单个密钥/别名

> keytool.exe -list -keystore Keystorefile 

Keystore-type: JKS 
Keystore-provider: SUN 

Keystore contains 6 entries 

Appname1, 01.07.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 
Appname2, 29.05.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 
Appname3, 30.09.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 
Appname4, 18.02.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 
Appname5, 09.08.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 
Appname6, 11.02.20XX, PrivateKeyEntry, 
certificate-Fingerprint (SHA1): AA:BB:CC:DD:EE:FF:GG:HH:II:JJ:KK:LL:MM:NN:OO:PP:Q 
Q:RR:SS:TT 

这是我的密钥库的输出,现在我只想导出密钥为Appname2。如果可能的话,这可以在另一个密钥库中导入。

谢谢!

回答

4

这一点比导出证书strigforward少(可以用-exportcert出口),你需要使用-importkeystore,并创建要“出口”的关键新的密钥库,即

密钥工具-importkeystore -srckeystore keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12 -srcalias ALIAS -deststorepass PASS -destkeypass PASS

或者你可以复制当前的密钥存储文件,然后删除所有关键从它,但你想出口的人。

您还可以检查Keystore Explorer工具

+0

如何使用Android Studio? – Nabin

+0

怎么样? –

+1

谢谢,它的工作原理 – Oli