AutoIt Requires Chilkat v11.0.0+
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
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