Sample code for 30+ languages & platforms
Xojo Plugin

Hash Binary Data (SHA256 and other hash algorithms)

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

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
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..
Dim jpgData As New Chilkat.BinData
success = jpgData.LoadFile("qa_data/jpg/starfish.jpg")
If (success <> True) Then
    System.DebugLog("Failed to load file.")
    Return
End If

Dim jpgBytes As MemoryBlock
jpgBytes = jpgData.GetBinary()

Dim crypt As New Chilkat.Crypt2

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

Dim hashBytes As MemoryBlock
hashBytes = crypt.HashBytes(jpgBytes)

// Let's examine the hash as a hex string.
Dim sb As New Chilkat.StringBuilder
success = sb.AppendEncoded(hashBytes,"hex")
System.DebugLog("SHA256 hash = " + sb.GetAsString())

// We could alternatively hash the bytes and receive the hex result directly:
crypt.EncodingMode = "hex"
Dim hashHexStr As String
hashHexStr = crypt.HashBytesENC(jpgBytes)
System.DebugLog("SHA256 hash = " + hashHexStr)