Sample code for 30+ languages & platforms
Chilkat2-Python

Hash Binary Data (SHA256 and other hash algorithms)

Demonstrates how to hash binary bytes using SHA256, SHA384, SHA512, MD2, MD5, HAVAL, RIPEMD, etc.

Chilkat Chilkat2-Python Downloads

Chilkat2-Python
import sys
import chilkat2

success = False

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# Let's load a binary file to get the bytes..
jpgData = chilkat2.BinData()
success = jpgData.LoadFile("qa_data/jpg/starfish.jpg")
if (success != True):
    print("Failed to load file.")
    sys.exit()

# jpgBytes is a memoryview
jpgBytes = jpgData.GetBinary()

crypt = chilkat2.Crypt2()

# Choose the hash algorithm.
# Can be  "sha1", "sha256", "sha384", "sha512", "md2", "md5", "haval", "ripemd128", "ripemd160","ripemd256", or "ripemd320".
crypt.HashAlgorithm = "sha256"

# hashBytes is a memoryview
hashBytes = crypt.HashBytes(jpgBytes)

# Let's examine the hash as a hex string.
sb = chilkat2.StringBuilder()
sb.AppendEncoded(hashBytes,"hex")
print("SHA256 hash = " + sb.GetAsString())

# We could alternatively hash the bytes and receive the hex result directly:
crypt.EncodingMode = "hex"
hashHexStr = crypt.HashBytesENC(jpgBytes)
print("SHA256 hash = " + hashHexStr)