Sample code for 30+ languages & platforms
PowerShell

Hash Binary Data (SHA256 and other hash algorithms)

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

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$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 = New-Object Chilkat.BinData
$success = $jpgData.LoadFile("qa_data/jpg/starfish.jpg")
if ($success -ne $true) {
    $("Failed to load file.")
    exit
}

$jpgBytes = $jpgData.GetBinary()

$crypt = New-Object Chilkat.Crypt2

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

$hashBytes = $crypt.HashBytes($jpgBytes)

# Let's examine the hash as a hex string.
$sb = New-Object Chilkat.StringBuilder
$sb.AppendEncoded($hashBytes,"hex")
$("SHA256 hash = " + $sb.GetAsString())

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