我有一个我需要通过别名引用的pfx证书.问题是keytool无法找到该别名,即使它显示在列表中.
keytool -list -keystore temp.pfx -storetype pkcs12
Run Code Online (Sandbox Code Playgroud)
给我这个:
...
0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c, 08/03/2013, PrivateKeyEntry,
...
Run Code Online (Sandbox Code Playgroud)
但每当我尝试使用keytool对该别名做任何事情(即导出,重命名)时,它都会给我一个错误:
keytool error: java.lang.Exception: Alias <0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c> does not exist
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
And*_*dre 12
事实证明,在检查了keytool -listvim 的输出之后,我在别名的末尾找到了一个空字符(它没有打印到控制台).一旦我将它添加到引用别名的命令,它就起作用了:
keytool -keyclone -changealias -v -dest "new_alias" -new newpass -keystore temp.pfx -storetype pkcs12 -alias 0c5fc7cef279ca390acd2d6bac9ffcf8_ba0cbbb3-323d-4394-8e76-47838adb2a9c$'\x00'
Run Code Online (Sandbox Code Playgroud)
最终结果才是真正重要的:$'\x00'在bash中代表空字符.请记住,这非常依赖于shell.
| 归档时间: |
|
| 查看次数: |
21065 次 |
| 最近记录: |