IX509CertificateRequestCmc interface

The IX509CertificateRequestCmc interface represents a CMC (Certificate Management Message over CMS) certificate request. A CMC request is always wrapped by a PKCS #7 certificate message syntax (CMS) object. Therefore, the IX509CertificateRequestCmc interface inherits from the IX509CertificateRequestPkcs7 interface.

A CMC request contains sequences of TaggedAttribute, TaggedRequest, and TaggedContentInfo ASN.1 structures. The TaggedOtherMsg structure identified in the RFC is not supported.


CmcData ::= SEQUENCE 
{
   controlSequence         ControlSequence,
   reqSequence             ReqSequence,
   cmsSequence             CmsSequence,
   otherMsgSequence        OtherMsgSequence
}


ControlSequence  ::=    SEQUENCE OF TaggedAttribute
ReqSequence      ::=    SEQUENCE OF TaggedRequest
CmsSequence      ::=    SEQUENCE OF TaggedContentInfo
OtherMsgSequence ::=    SEQUENCE OF TaggedOtherMsg

TaggedAttribute ::= SEQUENCE 
{
   bodyPartID              BodyPartID,
   type                    EncodedObjectID,
   values                  AttributeSetValue
}

TaggedRequest ::= CHOICE 
{
   tcr                     [0] IMPLICIT TaggedCertificationRequest
}

TaggedContentInfo ::= SEQUENCE 
{
   bodyPartID              BodyPartID,
   contentInfo             ANY
}

BodyPartID ::= INTEGER (0..4294967295)
EncodedObjectID ::= OBJECT IDENTIFIER
AttributeSetValue ::= SET OF ANY

A CMC request can contain a PKCS #10 request in the TaggedRequest sequence or another CMC request object in the TaggedContentInfo sequence. There is no theoretical limit to the possible number of nesting levels, but certification authorities typically place a physical limit on the request size.

The TaggedAttribute sequence contains extensions and optional attributes. For more information, see CMC Extensions and CMC Attributes.

Members

The IX509CertificateRequestCmc interface inherits from IX509CertificateRequestPkcs7. IX509CertificateRequestCmc also has these types of members:

Methods

The IX509CertificateRequestCmc interface has these methods.

MethodDescription
InitializeFromInnerRequestTemplateName

Initializes the certificate request from an inner request object and a template.

 

Properties

The IX509CertificateRequestCmc interface has these properties.

PropertyDescription

ArchivePrivateKey

Specifies or retrieves a Boolean value that indicates whether to archive a private key on the certification authority (CA).

CriticalExtensions

Retrieves an IObjectIds collection that identifies the version 3 certificate extensions marked as critical.

CryptAttributes

Retrieves an ICryptAttributes collection of optional certificate attributes.

EncryptedKeyHash

Retrieves a hash of the private key to be archived.

EncryptionAlgorithm

Specifies or retrieves an object identifier of the algorithm used to encrypt the private key to be archived.

[WebEnabled]

EncryptionStrength

Specifies or retrieves the relative encryption level applied to the private key to be archived.

KeyArchivalCertificate

Specifies or retrieves a certification authority (CA) encryption certificate.

[WebEnabled]

NameValuePairs

Retrieves a collection of name-value pairs that can be associated with a certificate request.

NullSigned

Retrieves a Boolean value that specifies whether the primary signature on the certificate request is null-signed.

SenderNonce

Specifies or retrieves a byte array that contains a nonce.

SignatureInformation

Retrieves the IX509SignatureInformation object that contains information about the primary signature used to sign the certificate request.

[WebEnabled]

SignerCertificates

Retrieves a collection of certificates used to sign the request.

SuppressOids

Retrieves a collection of extension or attribute object identifiers to be suppressed from the certificate during the encoding process.

TemplateObjectId

Retrieves the object identifier of the template used to create the certificate request.

TransactionId

Specifies or retrieves a transaction identifier that can be used to track a certificate request or response.

X509Extensions

Retrieves a collection of the extensions included in the certificate request.

 

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

CertEnroll.h

DLL

CertEnroll.dll

See also

CertEnroll Interfaces
IX509CertificateRequest

 

 

Community Additions

ADD
Show:
© 2014 Microsoft