Sample code for 30+ languages & platforms
Classic ASP

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 Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

set bd = Server.CreateObject("Chilkat.BinData")

For i = 0 To 100
    success = bd.AppendEncoded("000102030405060708090A0B0C0D0E0F","hex")
Next
sha256_base64 = bd.GetHash("sha256","base64")
Response.Write "<pre>" & Server.HTMLEncode( "sha256 hash in base64 format: " & sha256_base64) & "</pre>"

base64_rsa_sig = "AwF2BbOvL6jA5DwmMAc9n6J2Cc8PI6Rj5W079+aKJcIEtPWRzHor0Bvc3aftGM3Jbgj6SXlIC3M3RYS7UZOnfiHKFNZgbxaNT5WwsWooK42ZkC8DBZl0p7OunBUKd5SciUo+TKilioeUkriN3L1Zl9hwi3HVDVqgVo3XXskwIftSqLSFlepTLTmOWj9Y93dp8J4D9RyLtNgFQBc0WB22tyJTsuY56mLcWe1AMF3LizB9OrbwjynF2u16xWlrJdugccz795fJBUV9aQSD+8S3KeqwQhoi8RK1uhD68aGCyaSpBq0NZ8COAkn7MXaF4POxrAAt8udfHM+PRfSOptcH/w=="

' Get the public key to be used for signature verification.
set pubKey = Server.CreateObject("Chilkat.PublicKey")
success = pubKey.LoadFromFile("rsaKeys/chilkat-rsa-2048.pem")
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( pubKey.LastErrorText) & "</pre>"
    Response.End
End If

set rsa = Server.CreateObject("Chilkat.Rsa")
success = rsa.UsePublicKey(pubKey)
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( rsa.LastErrorText) & "</pre>"
    Response.End
End If

' Verify the hash against the signature.
rsa.EncodingMode = "base64"
success = rsa.VerifyHashENC(sha256_base64,"sha256",base64_rsa_sig)

If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( rsa.LastErrorText) & "</pre>"
    Response.Write "<pre>" & Server.HTMLEncode( "Signature invalid.") & "</pre>"
Else
    Response.Write "<pre>" & Server.HTMLEncode( "Signature valid.") & "</pre>"
End If


%>
</body>
</html>