ICspAlgorithm interface (certenroll.h)

The ICspAlgorithm interface represents an algorithm implemented by a cryptographic provider. Providers are separate modules that implement encryption, hashing, signing, and key exchange (archival) algorithms. Similar providers are grouped together in a type. For example, the PROV_RSA_FULL type identifies providers that typically support the following algorithms. An individual provider can, however, choose to support fewer or more algorithms than those listed.

  • Encryption: RC2, RC4
  • Hashing: MD5, SHA
  • Key Exchange: RSA
  • Signature: RSA
For more information, see Microsoft Cryptographic Service Providers.

A collection of ICspAlgorithm objects can be retrieved from an ICspInformation object. The ICspInformation object can be initialized from a provider name or type.

Inheritance

The ICspAlgorithm interface inherits from the IDispatch interface. ICspAlgorithm also has these types of members:

Methods

The ICspAlgorithm interface has these methods.

 
ICspAlgorithm::get_DefaultLength

Retrieves the default length of a key.
ICspAlgorithm::get_IncrementLength

Retrieves a value, in bits, that can be used to determine valid incremental key lengths for algorithms that support multiple key sizes.
ICspAlgorithm::get_LongName

Retrieves the full name of the algorithm.
ICspAlgorithm::get_MaxLength

Retrieves the maximum permitted length for a key.
ICspAlgorithm::get_MinLength

Retrieves the minimum permitted length for a key.
ICspAlgorithm::get_Name

Retrieves the abbreviated algorithm name.
ICspAlgorithm::get_Operations

Retrieves the operations that can be performed by the algorithm.
ICspAlgorithm::get_Type

Retrieves the algorithm type.
ICspAlgorithm::get_Valid

Retrieves a Boolean value that specifies whether the algorithm object is valid.
ICspAlgorithm::GetAlgorithmOid

Retrieves the algorithm object identifier (OID). This method is web enabled.

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

See also

CertEnroll Interfaces

Cryptographic Service Providers

IDispatch