繁体   English   中英

密钥库和cacert之间的别名是否相同,密钥相同? 或者,如何在密钥库/证书之间导出/导入密钥?

[英]same alias different key OK between keystore and cacerts? Or, how to export/import key between keystore/cacerts?

在具有Java 1.7的Linux Centos系统上,可以在keystore.jks中使用别名为xyz123的密钥,而在cacerts.jks中使用具有相同别名的另一个密钥吗? 还是会破裂?

我在keystore.jks文件中删除了别名为'xyz123'的密钥(因为它是1024位),然后使用以下方式为密钥库创建了别名为'xyz123'的新密钥(针对2048位):

keytool -keysize 2048 -genkey -alias xyz123 -keyalg RSA 
-dname "CN=mydomain.com,OU=GF,O=MyCorp,
L=MyCity,ST=MyState,C=US" -validity 7300 -keypass 
mypwd -storepass mypwd -keystore keystore.jks

但是现在我注意到xyz123也存在别名xyz123 (用于旧密钥)。 因此,现在,相同的别名指向密钥库和cacerts之间的不同密钥。 恐怕如果我重复上面的代码(但对于cacerts),则尽管将新密钥放入cacerts.jks中,但仍然会存在相同的情况(例如,相同的别名指向密钥库和cacerts之间的不同密钥)。

有没有一种方法可以执行上述代码,但又以某种方式将密钥库和cacerts都包含为行参数?

或者,也许我需要知道的是如何以某种方式将密钥生成为单独的文件,然后如何导入每个密钥库和cacerts。

您可以使用-importkeystore选项将新生成的密钥对导入到cacerts.jks密钥库中。

但是,cacerts.jks不应包含私钥。 它是“信任锚”的集合,可用于验证其他证书。 我建议仅从 keystore.jks 导出新证书,然后导入 cacerts.jks,而不是完整的密钥对。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM