将 pkcs12 导入密钥库时如何自动填充源密钥库密码

Ste*_*app 3 java bash keytool

我可以将 p12 密钥库导入到密钥库。通过 storepass,我可以预先填写目标密钥库的密码。

keytool -importkeystore -srckeystore kafka.server.keystore.p12 -srcstoretype pkcs12 -destkeystore kafka.server.keystore.jks -storepass $PWD
Run Code Online (Sandbox Code Playgroud)

但是,仍然要求我提供源密钥库密码:

Enter source keystore password:
Run Code Online (Sandbox Code Playgroud)

我该如何防止这种情况发生?

dav*_*085 5

使用-srcstorepass。也更好地使用-deststorepass(已记录)而不是-storepass(恰好在代码中起作用)。看keytool -importkeystore -help

请注意,如果 p12 包含私钥和证书(通常如此)并且您使 dest=JKS storepass 与 src=P12 组合存储和密钥通行证不同,则 JKS 中的私钥仍然具有其密钥(条目)通行证与p12相同。这意味着任何想要使用 JKS 私钥的程序都必须支持不同的 storepass 和 keypass 值,而有些程序则不支持。