This short article explains how to create a cryptographic checksum (a hash) with the help of the hashlib++ library. hashlib++ is a simple and very easy to use library to create a cryptographic checksum called "hash". The library is written in plain C++, and should work with every compiler and platform. hashlib++ is released under the BSD-license and is therefore free software.
Using the Code
hashlib++ provides the so called "wrappers" for each supported hash function which simplifies the creation of the relevant hash. Instead of implementing the full algorithm for the hash function, you only have to instantiate a desired wrapper and call a member function like
After downloading the small library from the project's website (http://hashlib2plus.sourceforge.net), you have to include the base class "hashwrapper.h" and the header file of the wrapper you want to use:
After that, you can create wrapper objects:
hashwrapper *md5 = new md5wrapper();
hashwrapper *sha1 = new sha1wrapper();
Once a wrapper has been instantiated, you can basically call the member functions
getHashFromString() to create a hash from a file or string.
std::string mytexthash = md5->getHashFromString("Hello World");
std::string myfilehash = md5->getHashFromFile("README.TXT");
And that's all!
Now you can add the corresponding *.cpp files (for MD5, for example: md5.cpp and md5wrapper.cpp) to your project and start compiling.
I have attached libtest.cpp, which is a full example of how to use hashlib++.