Добавьте расширение KeyUsage в запрос сертификата Bouncycastle - PullRequest
1 голос
/ 09 июля 2010

Может ли кто-нибудь опубликовать Java-код для добавления в сертификат PKS10 для bouncycastle запроса расширения относительно KeyUsage (например, KeyUsage.keyEncipherment).

Я не нашел ничего, не могу найти подходящий конструктордля X509 Расширение с KeyUsage.

Спасибо

Ответы [ 2 ]

3 голосов
/ 08 ноября 2010

попробуйте

import org.bouncycastle.asn1.x509.KeyUsage;

KeyUsage keyUsage = new KeyUsage(KeyUsage.keyCertSign | KeyUsage.cRLSign);

X509Extension extension = new X509Extension(true, new DEROctetString(keyUsage));
2 голосов
/ 01 июня 2018

Кажется, это правильный путь.Вы должны добавить атрибут запроса расширения к вашему построителю CSR:

... generate X500Name name and a SubjectPublicKeInfo spki ...
PKCS10CertificationRequestBuilder p10Builder =
        new PKCS10CertificationRequestBuilder(name,spki);
KeyUsage ku = new KeyUsage(KeyUsage.keyCertSign | KeyUsage.cRLSign);
ExtensionsGenerator extgen = new ExtensionsGenerator();
extgen.addExtension(Extension.keyUsage,true,ku);
p10Builder.addAttribute(PKCSObjectIdentifiers.pkcs_9_at_extensionRequest,
                        extgen.generate());
...set up your signer here ...
PKCS10CertificationRequest csr = p10Builder.build(signer);
...