如何使用具有相应别名的java代码仅在密钥库中存储公钥?

时间:2015-08-17 10:36:05

标签: java-security

我创建了密钥库,我只想在密钥库中存储publickey,并且不想存储私钥。因为私钥将在客户端设备中,并且他将使用rest API共享公钥。

另外,我应该如何在一个keystore中使用不同的别名

保留多个公钥

如果某人有示例代码或示例链接,那么对我来说将非常有帮助。

1 个答案:

答案 0 :(得分:5)

它无法完成,至少不能以原始java.security.PublicKey的格式完成。您只能在JKS密钥库中存储3种类型的条目:PrivateKeyEntry(用于非对称私钥),SecretKey(用于对称密钥)和TrustedCertificateEntry(用于" public&# 34;键)。它们都实现了java.security.KeyStore.Entry接口。

底线是:您需要将公钥与您可以创建的证书相关联,然后将证书作为单独的条目存储在密钥库中。

创建证书有点棘手,但可以在此处找到一个示例:Creating an X509 Certificate in Java without BouncyCastle?