This is a C++ implementation of the MD5 Message-Disgest algorithm. It is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm (RFC 1321).

There is a zillion of other MD5 implementations out there. I wrote this one because those that I was able to find quickly on the Net were using an array of two 32-bit values to represent a 64 bit value. Although this is exactly what the original RFC implementation does I thought that nowdays when the 64-bit support is widely available this makes much less sense than in 1992.

So the caveat is this implementation dependes on the int64_t availability.

md5.h - C++ header file - C++ source file