PKCS #10 Attributes

Attributes are included in a PKCS #10 certificate request by adding them to the CertificationRequestInfo structure shown in the following ASN.1 syntax example. For more information about how you can add attributes to a request, see the Attribute Architecture topic.

CertificationRequestInfo ::= SEQUENCE 
{
   version                 CertificationRequestInfoVersion,
   subject                 ANY,
   subjectPublicKeyInfo    SubjectPublicKeyInfo,
   attributes              [0] IMPLICIT Attributes
}

Attributes ::= SET OF Attribute

Attribute ::= SEQUENCE 
{
   type       EncodedObjectID,
   values     AttributeSetValue
}

The attribute most commonly added to a PKCS #10 request is a collection of version 3 extensions defined by an IX509AttributeExtensions object. Because a PKCS #10 request does not contain a field to which the extensions can be directly added, they must be added as an attribute. The ClientId, CspProvider, OSVersion, and RenewalCertificate attributes can also be added to a PKCS ) topic.

Supported Attributes