app authentication - 从命令行提取公共签名密钥

时间:2017-02-01 20:24:33

标签: ibm-mobilefirst mobilefirst-cli

我的客户端没有安装eclipse的MobileFirst插件,我需要引导他提取应用程序身份验证的公共密钥。 有没有办法从命令行中提取公共密钥?

1 个答案:

答案 0 :(得分:1)

用于保存用于对APK进行签名的密钥的密钥库只是JKS格式的普通Java密钥库,可以使用标准Java“keytool”命令进行操作。您可以通过以下操作提取PEM格式的证书:

keytool -exportcert -keystore keystore_name -alias alias_name -rfc > cert.txt

(其中“keystore_name”是密钥库文件的名称,“alias_name”是用于对APK进行签名的密钥的别名)

然后从您刚创建的“cert.txt”文件中提取公钥,方法如下:

openssl x509 -in cert.txt -pubkey -noout

您需要的公钥将出现在“----- BEGIN PUBLIC KEY -----”和“----- END PUBLIC KEY -----”行之间。

如果您想在一个命令中执行此操作,请执行以下操作:

keytool -exportcert -keystore keystore_name -alias alias_name -storepass keystore_password -rfc | openssl x509 -pubkey -noout | grep -v PUBLIC

只会提取并打印公钥,以便您可以在shell变量或其他内容中捕获它。