OpenBSD manual page server

Manual Page Search Parameters

MD5(3) Library Functions Manual MD5(3)

MD4, MD5, MD4_Init, MD4_Update, MD4_Final, MD5_Init, MD5_Update, MD5_FinalMD4 and MD5 hash functions

#include <openssl/md4.h>

unsigned char *
MD4(const unsigned char *d, unsigned long n, unsigned char *md);

int
MD4_Init(MD4_CTX *c);

int
MD4_Update(MD4_CTX *c, const void *data, unsigned long len);

int
MD4_Final(unsigned char *md, MD4_CTX *c);

#include <openssl/md5.h>

unsigned char *
MD5(const unsigned char *d, unsigned long n, unsigned char *md);

int
MD5_Init(MD5_CTX *c);

int
MD5_Update(MD5_CTX *c, const void *data, unsigned long len);

int
MD5_Final(unsigned char *md, MD5_CTX *c);

MD4 and MD5 are cryptographic hash functions with a 128-bit output.

() and () compute the MD4 and MD5 message digest of the n bytes at d and place it in md, which must have space for MD4_DIGEST_LENGTH == MD5_DIGEST_LENGTH == 16 bytes of output. If md is NULL, the digest is placed in a static array.

The following functions may be used if the message is not completely stored in memory:

() initializes a MD5_CTX structure.

() can be called repeatedly with chunks of the message to be hashed (len bytes at data).

() places the message digest in md, which must have space for MD5_DIGEST_LENGTH == 16 bytes of output, and erases the MD5_CTX.

(), (), and () are analogous using an MD4_CTX structure.

Applications should use the higher level functions EVP_DigestInit(3) etc. instead of calling these hash functions directly.

MD4() and MD5() return pointers to the hash value.

MD4_Init(), MD4_Update(), MD4_Final(), MD5_Init(), MD5_Update(), and MD5_Final() return 1 for success or 0 otherwise.

EVP_DigestInit(3)

RFC 1320, RFC 1321

MD5(), MD5_Init(), MD5_Update(), and MD5_Final() appeared in SSLeay 0.4 or earlier and have been available since OpenBSD 2.4.

MD4(), MD4_Init(), MD4_Update(), and MD4_Final() first appeared in OpenSSL 0.9.6 and have been available since OpenBSD 2.9.

March 27, 2018 OpenBSD-6.7