【发布时间】:2015-06-04 08:49:56
【问题描述】:
我在 LDAP 中有一个用户证书字段,它接受 X509 证书。 我按照 bouncy castle wiki 上的用户指南创建了 X509 证书。
证书已成功创建并添加到 LDAP。我的要求是每个用户都有一个加密数据,我需要将其保存到用户证书字段。
如何将此数据添加到用户证书中?
我使用以下代码创建了版本 1 用户证书。
Security.addProvider(new BouncyCastleProvider());
KeyPairGenerator kpGen = KeyPairGenerator.getInstance("RSA", "BC");
kpGen.initialize(1024, new SecureRandom());
KeyPair pair = kpGen.generateKeyPair();
X509v1CertificateBuilder certBldr = new JcaX509v1CertificateBuilder(
new X500Name("CN=User Certificate:"),
BigInteger.valueOf(1),
new Date(System.currentTimeMillis()),
new Date(System.currentTimeMillis() + (5*365*24*60*60*1000)),
new X500Name("CN=User Certificate:"),
pair.getPublic());
ContentSigner signer = new JcaContentSignerBuilder("SHA1withRSA")
.setProvider("BC").build(pair.getPrivate());
cert= new JcaX509CertificateConverter().setProvider("BC")
.getCertificate(certBldr.build(signer));
【问题讨论】:
标签: java ssl ldap certificate