我有一堆.keystore文件,需要找到一个具有特定CN和别名的文件。有办法做到这一点与keytool, jarsigner或其他工具?我找到了一种方法来检查特定的密钥存储库是否用于对特定的apk进行签名,但是我还需要获得每个文件中的别名和证书名称。
当前回答
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'
其他回答
在Windows上:
Keytool -v -list -keystore my_keystore | findstr my_string
参考:
CMD搜索目录以查找文件中的字符串
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'
为了得到所有的细节,我不得不在romaintaz的答案中添加-v选项:
keytool -v -list -keystore <FileName>.keystore
KeyStore Explorer开源可视化工具,用于管理密钥库。
在类似bash的环境中,您可以使用:
keytool -list -v -keystore cacerts.jks | grep 'Alias name:' | grep -i foo
该命令由三部分组成。如上所述,第一部分将列出所有受信任的证书和所有详细信息,这就是为什么第二部分只过滤这些详细信息中的别名信息。最后在第三部分,你可以搜索一个特定的别名(或它的一部分)。-i打开不区分大小写模式。因此,给定的命令将产生包含'foo'、f.e. foo、123_FOO、fooBar等模式的所有别名。获取更多信息man grep。
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 碎片中的onCreateOptionsMenu
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数
- c#和Java中的泛型有什么不同?和模板在c++ ?