Android - 从密钥库导出单个 key/alias
Android - export single key/alias from keystore
我有一个密钥库 (JKS),里面有很多不同应用程序的密钥条目/别名。
现在一个应用程序将被转移到另一个开发人员,我想为他导出/提取单个密钥/别名。
> 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
的密钥。如果可能,可以将其导入另一个密钥库。
谢谢!
这比导出证书(可以用 -exportcert
导出)稍微简单一点,因为您需要使用 -importkeystore
并使用您想要的密钥创建新的密钥库 "export" , 即
keytool -importkeystore -srckeystore keystore.jks -destkeystore
keystore.p12 -deststoretype PKCS12 -srcalias ALIAS -deststorepass PASS
-destkeypass PASS
或者,您可以只复制当前的密钥库文件,然后从中删除所有密钥,但要导出的密钥除外。
您还可以检查 Keystore Explorer 工具
我有一个密钥库 (JKS),里面有很多不同应用程序的密钥条目/别名。 现在一个应用程序将被转移到另一个开发人员,我想为他导出/提取单个密钥/别名。
> 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
的密钥。如果可能,可以将其导入另一个密钥库。
谢谢!
这比导出证书(可以用 -exportcert
导出)稍微简单一点,因为您需要使用 -importkeystore
并使用您想要的密钥创建新的密钥库 "export" , 即
keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12 -srcalias ALIAS -deststorepass PASS -destkeypass PASS
或者,您可以只复制当前的密钥库文件,然后从中删除所有密钥,但要导出的密钥除外。
您还可以检查 Keystore Explorer 工具