/* sha1.h - header of ============ SHA-1 in C++ ============ 100% Public Domain. Original C Code -- Steve Reid Small changes to fit into bglibs -- Bruce Guenter Translation to simpler C++ Code -- Volker Grabsch Safety fixes -- Eugene Hopkinson */ #pragma once #include #include #include class SHA1 { public: SHA1(); void update(const std::string &s); void update(std::istream &is); std::string final(); static std::string GetHash(const std::string &filename); static std::string GetHash(std::istream &stream); static std::string GetHash(vector &data); private: uint32_t digest[5]; std::string buffer; uint64_t transforms; };