Sample code for 30+ languages & platforms
PowerShell

Example: Hash Text in Chunks

Shows how to generate a final hash, like SHA-256, for a large text by processing it in chunks.

Chilkat PowerShell Downloads

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

$success = $false

$crypt = New-Object Chilkat.Crypt2
$crypt.HashAlgorithm = "sha256"
$crypt.Charset = "utf-8"

$bd = New-Object Chilkat.BinData

$s = "The quick brown fox jumped over the lazy dog.`r`n"

# Accumulate the text in a StringBuilder.  We'll demonstrate hashing the text in chunks,
# and then also hashing the entire text at once to show the results are the same.

$bd.AppendString($s,"utf-8")
$success = $crypt.HashBeginString($s)

$i = 0
while ($i -lt 200) {
    $bd.AppendString($s,"utf-8")
    $crypt.HashMoreString($s)
    $i = $i + 1
}

# Get the hash in base64 format.
$crypt.EncodingMode = "base64"

$encodedHash = $crypt.HashFinalENC()
$("Hash computed in chunks: " + $encodedHash)

# Let's alternatively compute the hash of the entire amount of data at once,
# to show the hash computation is the same:
$encodedHash = $crypt.HashBdENC($bd)
$("Hash computed in 1 step: " + $encodedHash)

# Output:

# Hash computed in chunks: unwkVff61k40roRIJizaknreScHaL6frWe37kydXbZQ=
# Hash computed in 1 step: unwkVff61k40roRIJizaknreScHaL6frWe37kydXbZQ=