MDC2, MDC2_Init, MDC2_Update, MDC2_Final - MDC2 hash function
unsigned char *MDC2(
const unsigned char *d, unsigned long n,
unsigned char *md ); void MDC2_Init(
MDC2_CTX *c ); void MDC2_Update(
MDC2_CTX *c, const unsigned char *data,
unsigned long len ); void MDC2_Final(
unsigned char *md, MDC2_CTX *c );
DESCRIPTIONMDC2 is a method to construct hash functions with 128 bit output from
block ciphers. These functions are an implementation of MDC2 with DES.
The MDC2() function computes the MDC2 message digest of the n bytes at
d and places it in md (which must have space for MDC2_DIGEST_LENGTH ==
16 bytes of output). If md is NULL, the digest is placed in a static
The following functions can be used if the message is not completely
stored in memory:
The MDC2_Init() function initializes a MDC2_CTX structure.
The MDC2_Update() function can be called repeatedly with chunks of the
message to be hashed (len bytes at data).
The MDC2_Final() function places the message digest in md, which must
have space for MDC2_DIGEST_LENGTH == 16 bytes of output, and erases the
Applications should use the higher level functions, such as EVP_Diges‐
tInit(), instead of calling the hash functions directly.
MDC2 conforms to ISO/IEC 10118-2, with DES.
The MDC2() function returns a pointer to the hash value.
The MDC2_Init(), MDC2_Update(), and MDC2_Final() functions do not
The MDC2(), MDC2_Init(), MDC2_Update(), and MDC2_Final() functions are
available since SSLeay 0.8.
Functions: sha(3), EVP_DigestInit(3)MDC2(3)