我有一堆.keystore文件,需要找到一个具有特定CN和别名的文件。有办法做到这一点与keytool, jarsigner或其他工具?我找到了一种方法来检查特定的密钥存储库是否用于对特定的apk进行签名,但是我还需要获得每个文件中的别名和证书名称。


当前回答

为了得到所有的细节,我不得不在romaintaz的答案中添加-v选项:

keytool -v -list -keystore <FileName>.keystore

其他回答

cmd:

keytool -list -keystore 'keystoreName'

然后按回车键 然后CMD将提示您输入密钥库密码

CMD在输入时不会在屏幕上显示密码 所以只要输入正确的密码——小心点——然后再按回车。

或者你可以用:

keytool -list -keystore 'keystoreName' -storepass 'type your keystore passwd'

对于Keys的完整信息,只需添加-v:

keytool -v -list -keystore 'keystoreName' -storepass 'type your keystore passwd'

您可以运行以下命令来列出您的密钥存储库文件的内容(以及别名):

keytool -v -list -keystore .keystore

如果你正在寻找一个特定的别名,你也可以在命令中指定它:

keytool -list -keystore .keystore -alias foo

如果没有找到别名,它将显示一个异常:

keytool错误:java.lang.Exception: Alias不存在

KeyStore Explorer开源可视化工具,用于管理密钥库。

如果你得到警告

警告:使用-cacerts选项访问cacerts密钥存储库

然后可以使用该命令

.\keytool.exe -list -cacerts

keytool -v -list -cacerts -alias cert1

这适用于我,当我检查证书添加到jdk-11的别名,并检查它是否添加在windows机器上