Sample code for 30+ languages & platforms
Tcl

Hash (Digest) a String

Hash the bytes of a string.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set sb [new_CkStringBuilder]

CkStringBuilder_Append $sb "Hello World"

# Hashing algorithms (i.e. digest algorithms) operate on raw bytes.
# Therefore, we must specify the character encoding (utf-8, utf-16, iso-8859-1, etc.) to be used when hashing.

# Get the SHA256 hash in hex
set sha256_hex [CkStringBuilder_getHash $sb "sha256" "hex" "utf-8"]
puts "SHA256: $sha256_hex"

# Get the SHA384 hash in hex lowercase
set sha384_hex [CkStringBuilder_getHash $sb "sha384" "hex_lower" "utf-8"]
puts "SHA384: $sha384_hex"

# Get the SHA512 hash in base64
set sha512_base64 [CkStringBuilder_getHash $sb "sha512" "base64" "utf-8"]
puts "SHA512: $sha512_base64"

# Get the SHA1 hash in hex lowercase
set sha1_hex [CkStringBuilder_getHash $sb "sha1" "hex_lower" "utf-8"]
puts "SHA1: $sha1_hex"

# Get the CRC8 digest in decimal
set crc8_decimal [CkStringBuilder_getHash $sb "crc8" "decimal" "utf-8"]
puts "CRC8: $crc8_decimal"

delete_CkStringBuilder $sb