(Unicode C++) Hash the Contents of a String (SHA256 and other hash algorithms)
Demonstrates how to hash the contents of a string using SHA256, SHA384, SHA512, MD2, MD5, HAVAL, RIPEMD, etc.
#include <CkCrypt2W.h>
#include <CkByteData.h>
#include <CkStringBuilderW.h>
void ChilkatSample(void)
{
// This example requires the Chilkat Crypt API to have been previously unlocked.
// See Unlock Chilkat Crypt for sample code.
CkCrypt2W crypt;
// Choose the hash algorithm.
// Can be "sha1", "sha256", "sha384", "sha512", "md2", "md5", "haval", "ripemd128", "ripemd160","ripemd256", or "ripemd320".
crypt.put_HashAlgorithm(L"sha256");
// The byte representation of the string matters when hashing.
// Tell Chilkat that we want to use the utf-8 byte representation.
crypt.put_Charset(L"utf-8");
CkByteData hashBytes;
success = crypt.HashString(L"They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.",hashBytes);
// Let's examine the hash as a hex string.
CkStringBuilderW sb;
sb.AppendEncoded(hashBytes,L"hex");
wprintf(L"SHA256 hash = %s\n",sb.getAsString());
}
|