diff options
Diffstat (limited to 'src/hash.h')
-rw-r--r-- | src/hash.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/hash.h b/src/hash.h new file mode 100644 index 0000000..3c7b9c9 --- /dev/null +++ b/src/hash.h @@ -0,0 +1,37 @@ +#ifndef _HASH_H_ +#define _HASH_H_ + +#include <string> + +#include "ed2k.h" + +#include <openssl/md4.h> +#include <openssl/md5.h> +#include <openssl/sha.h> + +class Hash { + private: + bool finished; + + int crc32_ctx; + std::string crc32_str; + + Ed2k ed2k_ctx; + std::string ed2k_str; + + MD5_CTX md5_ctx; + std::string md5_str; + + SHA_CTX sha1_ctx; + std::string sha1_str; + + public: + Hash(); + void update(std::string data); + std::string crc32(); + std::string ed2k(); + std::string md5(); + std::string sha1(); +}; + +#endif // _HASH_H_ |