【发布时间】:2010-06-21 14:47:36
【问题描述】:
我有一个 X509Certificate 我想添加扩展...我想添加 PrivateKeyUsage 扩展,但我不知道如何创建 PrivateKeyUsage 对象或如何给它 notBefore & notAfter 值...谢谢
【问题讨论】:
标签: java x509certificate bouncycastle pki private-key
我有一个 X509Certificate 我想添加扩展...我想添加 PrivateKeyUsage 扩展,但我不知道如何创建 PrivateKeyUsage 对象或如何给它 notBefore & notAfter 值...谢谢
【问题讨论】:
标签: java x509certificate bouncycastle pki private-key
Date from = new Date();
Date to = new Date(System.currentTimeMillis()+ 30*1000*60*60l);
ASN1EncodableVector v = new ASN1EncodableVector();
DERGeneralizedTime fromTime = new DERGeneralizedTime(from);
v.add(new DERTaggedObject(false, 0, fromTime));
DERGeneralizedTime toTime = new DERGeneralizedTime(to);
v.add(new DERTaggedObject(false, 1, toTime));
DERObject o = new DERSequence(v);
PrivateKeyUsagePeriod pkup = PrivateKeyUsagePeriod.getInstance(o);
v3CertGen.addExtension(x509Extensions.PrivateKeyUsagePeriod, false, pkup);
【讨论】:
你可以这样做,
Date notBeforeDate = new Date();
Date notAfterDate = new Date(System.currentMillis() + 24L*3600*365*1000);
PrivateKeyUsagePeriod pkup = new PrivateKeyUsagePeriod(notBeforeDate,
notAfterDate);
V3Extension[] v3 = {pkup};
cert = CertificateFactory.createCertificate(subject, kp.getPublic(), issuer,
kp.getPrivate(), algorithm, 1, v3);
【讨论】: