Xojo Plugin
Xojo Plugin
RSA Hash Binary Data and Sign (and Verify)
See more RSA Examples
Demonstrates how to sign the hash of binary data. Also demonstrates how to verify the RSA signature.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Load an RSA private key for signing.
Dim privKey As New Chilkat.PrivateKey
success = privKey.LoadEncryptedPemFile("qa_data/pem/rsa_passwd.pem","passwd")
If (success = False) Then
System.DebugLog(privKey.LastErrorText)
Return
End If
Dim rsa As New Chilkat.Rsa
success = rsa.UsePrivateKey(privKey)
// We have some binary data (in hex) to sign
Dim originalData As String
originalData = "0102030405060708090A"
Dim bdData As New Chilkat.BinData
success = bdData.AppendEncoded(originalData,"hex")
// Hash (SHA-256) and sign the hash:
Dim bdSignature As New Chilkat.BinData
success = rsa.SignBd(bdData,"sha256",bdSignature)
If (success = False) Then
System.DebugLog(rsa.LastErrorText)
Return
End If
// Show the RSA signature in base64
System.DebugLog(bdSignature.GetEncoded("base64"))
// ------------------------------------------
// Get the public key from the private key
Dim pubKey As New Chilkat.PublicKey
success = privKey.ToPublicKey(pubKey)
// Verify the signature..
Dim rsa2 As New Chilkat.Rsa
success = rsa2.UsePublicKey(pubKey)
Dim bVerified As Boolean
bVerified = rsa2.VerifyBd(bdData,"sha256",bdSignature)
System.DebugLog("signature verified: " + Str(bVerified))