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.