#pragma once class CMD5 { typedef struct { UINT state[4]; // state (ABCD) UINT count[2]; // number of bits, modulo 2^64 (lsb first) BYTE buffer[64]; // input buffer } MD5_CTX; public: CMD5(); virtual ~CMD5(); static void GetHash(LPSTR pszStr, LPSTR pszHash); protected: static void MD5Init(MD5_CTX* ctx); static void MD5Update(MD5_CTX* ctx, BYTE* input, UINT inputlen); static void MD5Final(BYTE* digest, MD5_CTX* ctx); };