keytool找不到别名

时间:2013-03-08 18:39:51

标签: ssl alias keytool

我有一个我需要通过别名引用的pfx证书。问题是keytool无法找到该别名,即使它显示在列表中。

keytool -list -keystore temp.pfx -storetype pkcs12

给了我这个:

...
0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c, 08/03/2013, PrivateKeyEntry,
...

但每当我尝试使用keytool对该别名做任何事情(即导出,重命名)时,它都会给我一个错误:

keytool error: java.lang.Exception: Alias <0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c> does not exist

有什么想法吗?

1 个答案:

答案 0 :(得分:12)

事实证明,在检查了vim上keytool -list的输出后,我在别名的末尾找到了一个空字符(不会打印到控制台)。一旦我将它添加到引用别名的命令,它就可以工作:

keytool -keyclone -changealias -v -dest "new_alias" -new newpass -keystore temp.pfx -storetype pkcs12 -alias 0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c$'\x00'

最终真正重要的是:$'\x00'代表bash中的空字符。请记住,这与外壳有关。