当别名具有异常字符时,从信任库中删除证书(?)

时间:2017-12-01 22:39:03

标签: keytool

在命令行中使用keytool,我向商店添加了新的证书。但是,我发现自己目前陷入困境的引起愤怒的窗口管理器设法在剪切和粘贴时失败,并用一个?替换别名中的一个字符?字符。如何更改或删除该别名?

keytool -list -keystore truststore
Enter keystore password:  

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 4 entries

hail.ucc.nau.edu:8636-cert-1?, Dec 1, 2017, trustedCertEntry,

.....

keytool -delete -keystore truststore -alias 'hail.ucc.nau.edu:8636-cert-1?'
Enter keystore password:  
keytool error: java.lang.Exception: Alias <hail.ucc.nau.edu:8636-cert-1?> does not exist

.....

keytool -delete -keystore truststore -alias 'hail.ucc.nau.edu:8636-cert-1\?'
Enter keystore password:  
keytool error: java.lang.Exception: Alias <hail.ucc.nau.edu:8636-cert-1\?> does not exist

.....

keytool -delete -keystore truststore -alias 'hail.ucc.nau.edu:8636-cert-1'
Enter keystore password:  
keytool error: java.lang.Exception: Alias <hail.ucc.nau.edu:8636-cert-1> does not exist

感谢您的帮助,

 - rob.

1 个答案:

答案 0 :(得分:1)

您看到的特殊字符可能不是@Pavel Lechev在评论中建议的实际字符。如果keytool删除无效,您可以使用KeyStore Explorer软件执行此操作。它有很好的GUI,提供所有keytool功能。

或者您可以使用KeyStore api编写一个小工具/类来删除不需要的别名。您可以列出所有别名,识别它并删除它(为了识别别名,您可以startsWith())。