Diffie-Hellman/Schannel Provider Algorithms

The purpose of the Diffie-Hellman algorithm is to make it possible for two or more hosts to create and share an identical, secret encryption key, by simply sharing information over an insecure network. The information that gets shared over the network is in the form of a couple of constant values, and a D-H public key.

The following table shows the algorithm list supported by the Microsoft Diffie-Hellman/Schannel Cryptographic Provider:

Algorithm ID Description Comments
CALG_DH_SF Diffie-Hellman store and forward key exchange algorithm Key length: settable, 384 bits to 512 bits in 8 bit increments. Default key length: 512 bits.
CALG_MD5 MD5 hashing algorithm. Provided only for hashing.
CALG_DH_EPHEM Ephemeral D-H key exchange. Key length: settable, 384 bits to 512 bits in 8 bit increments.

Default key length: 512 bits.

CALG_SHA SHA hashing algorithm. Must be used for DSS signatures.
CALG_RC2 RC2 block encryption algorithm Key length 40 to 88 bits.
CALG_RC4 RC4 stream encryption algorithm Key length: 40 to 88 bits.
CALG_CYLINK_
MEK
DES variant encryption algorithm Key length: 40 bits.