JavaのBouncycastleを使用して証明書にprivateKeyUsage拡張機能を追加するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/3085675

質問

拡張機能を追加したいX509Certificateがあります... PrivateKeyUsage拡張機能を追加したいのですが、PrivateKeyUsageオブジェクトを作成する方法やそれを提供する方法を知りません&Notafter値...ありがとう

役に立ちましたか?

解決

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);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top