证书是否应该始终导入到密钥库中?

Should certificates be always imported in keystores?

我在 Java 做一些密码学,我想知道证书存储的最佳和常见做法是什么。

证书可以从文件中加载还是应该始终在 keystore/truststore 中导入?


编辑: 我的用例是加载私钥和证书以便能够加密和解密数据。

问题是:私钥和证书应该都在密钥库中还是证书可以放在文件中?

我强烈建议至少将证书存储在密钥库中。如果您的密钥库和文件具有大致相同的访问权限,则安全性并没有太大区别 - 尽管密码确实增加了一个保护级别(默认情况下它不会被称为 "changeit")。

然而,

Java 和 Java 密钥存储非常专注于基于 X.509 的 PKI,如果没有证书,您甚至可能无法成功存储私钥。因此,最好的做法是将证书或证书链存储在密钥库中。