我创建了密钥库,我只想在密钥库中存储publickey,并且不想存储私钥。因为私钥将在客户端设备中,并且他将使用rest API共享公钥。
另外,我应该如何在一个keystore中使用不同的别名
保留多个公钥如果某人有示例代码或示例链接,那么对我来说将非常有帮助。
答案 0 :(得分:5)
它无法完成,至少不能以原始java.security.PublicKey
的格式完成。您只能在JKS密钥库中存储3种类型的条目:PrivateKeyEntry
(用于非对称私钥),SecretKey
(用于对称密钥)和TrustedCertificateEntry
(用于" public&# 34;键)。它们都实现了java.security.KeyStore.Entry
接口。
底线是:您需要将公钥与您可以创建的证书相关联,然后将证书作为单独的条目存储在密钥库中。
创建证书有点棘手,但可以在此处找到一个示例:Creating an X509 Certificate in Java without BouncyCastle?