0

如何通过 bouncy casle 创建密钥使用离线 CRL 签名?我知道如何创建预定义的 keyCertSign 或其他使用常量...

import org.bouncycastle.asn1.x509.KeyUsage;
KeyUsage keyUsage = new KeyUsage(KeyUsage.keyCertSign | KeyUsage.cRLSign);
4

1 回答 1

1

KeyUsage.cRLSign 应该涵盖 CRL 签名和离线 CRL 签名。根据 X.509 规范RFC 5280,只有 9 种基本密钥用法。

      KeyUsage ::= BIT STRING {
       digitalSignature        (0),
       nonRepudiation          (1), -- recent editions of X.509 have
                            -- renamed this bit to contentCommitment
       keyEncipherment         (2),
       dataEncipherment        (3),
       keyAgreement            (4),
       keyCertSign             (5),
       cRLSign                 (6),
       encipherOnly            (7),
       decipherOnly            (8) }

如果设置了 cRLSign 位,并且您在 IE 中打开证书,您将看到“离线 CRL 签名,CRL 签名”。其他证书查看者可能只会说“CRL 签名”。

于 2013-05-07T06:35:12.897 回答