Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The IX509SignatureInformation interface represents information used to sign a certificate request. This includes signature, hash, and public key algorithms, and public key parameters. The signature process consists of digesting the certificate request by using a hash algorithm, encoding the digest and the hash algorithm identifier by using Distinguished Encoding Rules (DER), and signing (encrypting) the result.
The algorithms used in this process can be either discrete or combined. Discrete algorithms are represented by separate object identifiers (OIDs) for the hashing algorithm and the signing algorithm. Discrete algorithms are used when signing a PKCS #7 or CMC request. Examples include the following values.
| Discrete algorithm OID | Description | 
|---|---|
| XCN_OID_NIST_sha256(2.16.840.1.101.3.4.2.1) | National Institute of Standards and Technologies (NIST) 256-bit SHA hashing algorithm. | 
| XCN_OID_OIWSEC_rsaSign(1.3.14.3.2.11) | NIST OSE Implementer Workshop Security (OIWSEC) RSA signing algorithm. | 
Combined algorithms, which can be used to sign PKCS #10 requests, are represented by a single OID that identifies both the hashing and the signing algorithm. Examples include the following values.
| Combined algorithm OID | Description | 
|---|---|
| XCN_OID_RSA_MD2RSA(1.2.840.113549.1.1.2) | MD2 hashing algorithm combined with the RSA encryption algorithm from RSA Laboratories. | 
| XCN_OID_OIWSEC_md5RSA(1.3.14.3.2.3) | OIWSEC MD5 hashing algorithm combined with the RSA encryption algorithm. | 
The object is automatically initialized when an IX509CertificateRequestCmc, IX509CertificateRequestPkcs10, or ISignerCertificate object is initialized.
Inheritance
The IX509SignatureInformation interface inherits from the IDispatch interface. IX509SignatureInformation also has these types of members:
Methods
The IX509SignatureInformation interface has these methods.
| IX509SignatureInformation::get_AlternateSignatureAlgorithm  Specifies and retrieves a Boolean value that specifies whether the GetSignatureAlgorithm method should retrieve a discrete or combined algorithm object identifier (OID) for a PKCS (Get)  | 
| IX509SignatureInformation::get_AlternateSignatureAlgorithmSet  Retrieves a Boolean value that specifies whether the AlternateSignatureAlgorithm property has been explicitly set by a caller.  | 
| IX509SignatureInformation::get_HashAlgorithm  Specifies and retrieves an object identifier (OID) for the hashing algorithm used in the GetSignatureAlgorithm method. (Get)  | 
| IX509SignatureInformation::get_NullSigned  Specifies and retrieves a Boolean value that indicates whether the certificate request is null-signed. (Get)  | 
| IX509SignatureInformation::get_Parameters  Retrieves a byte array that contains the parameters associated with the signature algorithm. (Get)  | 
| IX509SignatureInformation::get_PublicKeyAlgorithm  Specifies and retrieves an object identifier (OID) for the public key algorithm used in the GetSignatureAlgorithm method. (Get)  | 
| IX509SignatureInformation::GetSignatureAlgorithm  Retrieves the signing algorithm object identifier (OID).  | 
| IX509SignatureInformation::put_AlternateSignatureAlgorithm  Specifies and retrieves a Boolean value that specifies whether the GetSignatureAlgorithm method should retrieve a discrete or combined algorithm object identifier (OID) for a PKCS (Put)  | 
| IX509SignatureInformation::put_HashAlgorithm  Specifies and retrieves an object identifier (OID) for the hashing algorithm used in the GetSignatureAlgorithm method. (Put)  | 
| IX509SignatureInformation::put_NullSigned  Specifies and retrieves a Boolean value that indicates whether the certificate request is null-signed. (Put)  | 
| IX509SignatureInformation::put_Parameters  Retrieves a byte array that contains the parameters associated with the signature algorithm. (Put)  | 
| IX509SignatureInformation::put_PublicKeyAlgorithm  Specifies and retrieves an object identifier (OID) for the public key algorithm used in the GetSignatureAlgorithm method. (Put)  | 
| IX509SignatureInformation::SetDefaultValues  Specifies a default hashing algorithm used to create a digest of the certificate request prior to signing.  | 
Requirements
| Requirement | Value | 
|---|---|
| Minimum supported client | Windows Vista [desktop apps only] | 
| Minimum supported server | Windows Server 2008 [desktop apps only] | 
| Target Platform | Windows | 
| Header | certenroll.h |