Clone of liggcrypt from http://www.gnu.org/software/libgcrypt/