(Tcl) 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.
load ./chilkat.dll
# This example requires the Chilkat Crypt API to have been previously unlocked.
# See Unlock Chilkat Crypt for sample code.
set crypt [new_CkCrypt2]
# Choose the hash algorithm.
# Can be "sha1", "sha256", "sha384", "sha512", "md2", "md5", "haval", "ripemd128", "ripemd160","ripemd256", or "ripemd320".
CkCrypt2_put_HashAlgorithm $crypt "sha256"
# The byte representation of the string matters when hashing.
# Tell Chilkat that we want to use the utf-8 byte representation.
CkCrypt2_put_Charset $crypt "utf-8"
set hashBytes [new_CkByteData]
set success [CkCrypt2_HashString $crypt "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.
set sb [new_CkStringBuilder]
CkStringBuilder_AppendEncoded $sb $hashBytes "hex"
puts "SHA256 hash = [CkStringBuilder_getAsString $sb]"
delete_CkCrypt2 $crypt
delete_CkByteData $hashBytes
delete_CkStringBuilder $sb
|