Class CertificationRequestInfo

  • All Implemented Interfaces:
    ASN1Encodable, Encodable

    public class CertificationRequestInfo
    extends ASN1Object
    PKCS10 CertificationRequestInfo object.
      CertificationRequestInfo ::= SEQUENCE {
       version             INTEGER { v1(0) } (v1,...),
       subject             Name,
       subjectPKInfo   SubjectPublicKeyInfo{{ PKInfoAlgorithms }},
       attributes          [0] Attributes{{ CRIAttributes }}
      }
    
      Attributes { ATTRIBUTE:IOSet } ::= SET OF Attribute{{ IOSet }}
    
      Attribute { ATTRIBUTE:IOSet } ::= SEQUENCE {
        type    ATTRIBUTE.&id({IOSet}),
        values  SET SIZE(1..MAX) OF ATTRIBUTE.&Type({IOSet}{\@type})
      }
     
    • Constructor Detail

      • CertificationRequestInfo

        public CertificationRequestInfo​(X500Name subject,
                                        SubjectPublicKeyInfo pkInfo,
                                        ASN1Set attributes)
        Basic constructor.

        Note: Early on a lot of CAs would only accept messages with attributes missing. As the ASN.1 def shows the attributes field is not optional so should always at least contain an empty set. If a fully compliant request is required, pass in an empty set, the class will otherwise interpret a null as it should encode the request with the field missing.

        Parameters:
        subject - subject to be associated with the public key
        pkInfo - public key to be associated with subject
        attributes - any attributes to be associated with the request.
      • CertificationRequestInfo

        public CertificationRequestInfo​(ASN1Sequence seq)
        Deprecated.
        use getInstance().