00001 #ifndef CRYPTOPP_MD5_H 00002 #define CRYPTOPP_MD5_H 00003 00004 #include "iterhash.h" 00005 00006 NAMESPACE_BEGIN(CryptoPP) 00007 00008 //! <a href="http://www.weidai.com/scan-mirror/md.html#MD5">MD5</a> 00009 /*! \warning MD5 is considered insecure, and should not be used 00010 unless you absolutely need it for compatibility. */ 00011 class MD5 : public IteratedHashWithStaticTransform<word32, LittleEndian, 64, 16, MD5> 00012 { 00013 public: 00014 static void InitState(HashWordType *state); 00015 static void Transform(word32 *digest, const word32 *data); 00016 static const char * StaticAlgorithmName() {return "MD5";} 00017 }; 00018 00019 NAMESPACE_END 00020 00021 #endif