Sample code for 30+ languages & platforms
AutoIt

Verify an RSA Signature Against the Signed Hash

See more Apple Keychain Examples

Demonstrates how to validate an RSA Signature against the hash that was signed.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$oBd = ObjCreate("Chilkat.BinData")
Local $i
For $i = 0 To 100
    $oBd.AppendEncoded("000102030405060708090A0B0C0D0E0F","hex")
Next
Local $sha256_base64 = $oBd.GetHash("sha256","base64")
ConsoleWrite("sha256 hash in base64 format: " & $sha256_base64 & @CRLF)

Local $sBase64_rsa_sig = "AwF2BbOvL6jA5DwmMAc9n6J2Cc8PI6Rj5W079+aKJcIEtPWRzHor0Bvc3aftGM3Jbgj6SXlIC3M3RYS7UZOnfiHKFNZgbxaNT5WwsWooK42ZkC8DBZl0p7OunBUKd5SciUo+TKilioeUkriN3L1Zl9hwi3HVDVqgVo3XXskwIftSqLSFlepTLTmOWj9Y93dp8J4D9RyLtNgFQBc0WB22tyJTsuY56mLcWe1AMF3LizB9OrbwjynF2u16xWlrJdugccz795fJBUV9aQSD+8S3KeqwQhoi8RK1uhD68aGCyaSpBq0NZ8COAkn7MXaF4POxrAAt8udfHM+PRfSOptcH/w=="

; Get the public key to be used for signature verification.
$oPubKey = ObjCreate("Chilkat.PublicKey")
$bSuccess = $oPubKey.LoadFromFile("rsaKeys/chilkat-rsa-2048.pem")
If ($bSuccess = False) Then
    ConsoleWrite($oPubKey.LastErrorText & @CRLF)
    Exit
EndIf

$oRsa = ObjCreate("Chilkat.Rsa")
$bSuccess = $oRsa.UsePublicKey($oPubKey)
If ($bSuccess = False) Then
    ConsoleWrite($oRsa.LastErrorText & @CRLF)
    Exit
EndIf

; Verify the hash against the signature.
$oRsa.EncodingMode = "base64"
$bSuccess = $oRsa.VerifyHashENC($sha256_base64,"sha256",$sBase64_rsa_sig)

If ($bSuccess = False) Then
    ConsoleWrite($oRsa.LastErrorText & @CRLF)
    ConsoleWrite("Signature invalid." & @CRLF)
Else
    ConsoleWrite("Signature valid." & @CRLF)
EndIf