X509ProviderType enumeration (certenroll.h)

The X509ProviderType enumeration specifies the type of cryptographic provider. Providers implement cryptographic standards and algorithms in software and hardware. This enumeration is used by the ICspInformation and IX509PrivateKey interfaces.

Syntax

typedef enum X509ProviderType {
  XCN_PROV_NONE,
  XCN_PROV_RSA_FULL,
  XCN_PROV_RSA_SIG,
  XCN_PROV_DSS,
  XCN_PROV_FORTEZZA,
  XCN_PROV_MS_EXCHANGE,
  XCN_PROV_SSL,
  XCN_PROV_RSA_SCHANNEL,
  XCN_PROV_DSS_DH,
  XCN_PROV_EC_ECDSA_SIG,
  XCN_PROV_EC_ECNRA_SIG,
  XCN_PROV_EC_ECDSA_FULL,
  XCN_PROV_EC_ECNRA_FULL,
  XCN_PROV_DH_SCHANNEL,
  XCN_PROV_SPYRUS_LYNKS,
  XCN_PROV_RNG,
  XCN_PROV_INTEL_SEC,
  XCN_PROV_REPLACE_OWF,
  XCN_PROV_RSA_AES
} ;

Constants

Name Description
XCN_PROV_NONE No provider is identified.
XCN_PROV_RSA_FULL Supports the following algorithms:


  • Encryption: RC2 and RC4

  • Hashing: MD5 and SHA

  • Key Exchange: RSA

  • Signatures: RSA

XCN_PROV_RSA_SIG Supports the following algorithms:


  • Hashing: MD5 and SHA

  • Signatures: RSA

XCN_PROV_DSS Supports the following algorithms. This is a subset of the XCN_PROV_DSS_DH provider type.

XCN_PROV_FORTEZZA Supports the Fortezza cryptographic card developed by NSA. This includes support for the following algorithms:


  • Encryption: Skipjack

  • Hashing: SHA

  • Key Exchange: KEA

  • Signatures: DSS

XCN_PROV_MS_EXCHANGE Supports cryptographic algorithms used by the Microsoft Exchange mail application and other applications compatible with Microsoft Mail.
This includes the following:


  • Encryption: CAST

  • Hashing: MD5

  • Key Exchange: RSA

  • Signatures: RSA

XCN_PROV_SSL Supports the Secure Sockets Layer protocol. This includes the following algorithms:


  • Encryption: variable

  • Hashing: variable

  • Key Exchange: RSA

  • Signatures: RSA

XCN_PROV_RSA_SCHANNEL Supports RSA and Schannel protocols. This includes the following algorithms:

XCN_PROV_DSS_DH Supports the following algorithms:

XCN_PROV_EC_ECDSA_SIG Microsoft currently does not provide a CSP of this type.
XCN_PROV_EC_ECNRA_SIG Microsoft currently does not provide a CSP of this type.
XCN_PROV_EC_ECDSA_FULL Microsoft currently does not provide a CSP of this type.
XCN_PROV_EC_ECNRA_FULL Microsoft currently does not provide a CSP of this type.
XCN_PROV_DH_SCHANNEL Supports the Diffie-Hellman and Schannel protocols. This includes the following algorithms:


  • Encryption: DES, 3DES

  • Hashing: MD5, SHA

  • Key Exchange: Diffie-Hellman algorithm

  • Signatures: DSS

XCN_PROV_SPYRUS_LYNKS Microsoft currently does not provide a CSP of this type.
XCN_PROV_RNG Microsoft currently does not provide a CSP of this type.
XCN_PROV_INTEL_SEC Microsoft currently does not provide a CSP of this type.
XCN_PROV_REPLACE_OWF Microsoft currently does not provide a CSP of this type.
XCN_PROV_RSA_AES Supports the following algorithms:


  • Encryption: RC2, RC4, AES

  • Hashing: MD5, SHA

  • Key Exchange: RSA

  • Signatures: RSA

Requirements

   
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Header certenroll.h

See also

CertEnroll Enumerations

CertEnroll Interfaces

ICspInformation

IX509PrivateKey