Create an abstraction layer in CPP for the hashlib implementation.
libmd not tested, OpenSSL and PolarSSL are.