Class RequesterCertificate

java.lang.Object
org.bouncycastle.asn1.ASN1Object
org.bouncycastle.asn1.cms.RequesterCertificate
All Implemented Interfaces:
org.bouncycastle.asn1.ASN1Encodable, org.bouncycastle.util.Encodable

public class RequesterCertificate extends org.bouncycastle.asn1.ASN1Object
RFC 9763 sec. 4 RequesterCertificate CSR attribute value carrying the id-aa-relatedCertRequest request.
RequesterCertificate ::= SEQUENCE {
    certID        IssuerAndSerialNumber,
    requestTime   BinaryTime,
    locationInfo  UniformResourceIdentifiers,
    signature     BIT STRING }

UniformResourceIdentifiers ::= SEQUENCE SIZE (1..MAX) OF URI
URI ::= IA5String
The signature field carries a digital signature, computed with the private key associated with the certificate identified by certID, over the concatenation of the DER-encoded certID and the DER-encoded requestTime (RFC 9763 sec. 4.1, "concatenation of DER-encoded IssuerAndSerialNumber and BinaryTime" — NOT a SEQUENCE wrapper). The locations in locationInfo are HTTP(S) URIs or data: URIs (RFC 2397) from which the CA can retrieve the related certificate.

No AlgorithmIdentifier field accompanies the signature; the verifier must derive the signature algorithm from the related certificate itself (its SubjectPublicKeyInfo plus any policy the CA applies).

Identified by PKCSObjectIdentifiers.id_aa_relatedCertRequest (OID 1.2.840.113549.1.9.16.2.60); it is the value of that PKCS#9 attribute in a CertificationRequestInfo.

  • Constructor Details

  • Method Details

    • getInstance

      public static RequesterCertificate getInstance(Object obj)
    • getCertID

      public IssuerAndSerialNumber getCertID()
    • getRequestTime

      public BinaryTime getRequestTime()
    • getLocationInfo

      public String[] getLocationInfo()
      Returns:
      the URIs from which the related certificate can be retrieved, in the encoded order. Per RFC 9763 sec. 4 these are typically HTTP/HTTPS URLs or data: URIs (RFC 2397).
    • getSignature

      public org.bouncycastle.asn1.ASN1BitString getSignature()
    • toASN1Primitive

      public org.bouncycastle.asn1.ASN1Primitive toASN1Primitive()
      Specified by:
      toASN1Primitive in interface org.bouncycastle.asn1.ASN1Encodable
      Specified by:
      toASN1Primitive in class org.bouncycastle.asn1.ASN1Object