Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerBuilder) Verify an RSA Signature Against the Signed HashSee more Apple Keychain ExamplesDemonstrates how to validate an RSA Signature against the hash that was signed.
integer li_rc oleobject loo_Bd integer i string ls_Sha256_base64 string ls_Base64_rsa_sig oleobject loo_PubKey integer li_Success oleobject loo_Rsa loo_Bd = create oleobject // Use "Chilkat_9_5_0.BinData" for versions of Chilkat < 10.0.0 li_rc = loo_Bd.ConnectToNewObject("Chilkat.BinData") if li_rc < 0 then destroy loo_Bd MessageBox("Error","Connecting to COM object failed") return end if for i = 0 to 100 loo_Bd.AppendEncoded("000102030405060708090A0B0C0D0E0F","hex") next ls_Sha256_base64 = loo_Bd.GetHash("sha256","base64") Write-Debug "sha256 hash in base64 format: " + ls_Sha256_base64 ls_Base64_rsa_sig = "AwF2BbOvL6jA5DwmMAc9n6J2Cc8PI6Rj5W079+aKJcIEtPWRzHor0Bvc3aftGM3Jbgj6SXlIC3M3RYS7UZOnfiHKFNZgbxaNT5WwsWooK42ZkC8DBZl0p7OunBUKd5SciUo+TKilioeUkriN3L1Zl9hwi3HVDVqgVo3XXskwIftSqLSFlepTLTmOWj9Y93dp8J4D9RyLtNgFQBc0WB22tyJTsuY56mLcWe1AMF3LizB9OrbwjynF2u16xWlrJdugccz795fJBUV9aQSD+8S3KeqwQhoi8RK1uhD68aGCyaSpBq0NZ8COAkn7MXaF4POxrAAt8udfHM+PRfSOptcH/w==" // Get the public key to be used for signature verification. loo_PubKey = create oleobject // Use "Chilkat_9_5_0.PublicKey" for versions of Chilkat < 10.0.0 li_rc = loo_PubKey.ConnectToNewObject("Chilkat.PublicKey") li_Success = loo_PubKey.LoadFromFile("rsaKeys/chilkat-rsa-2048.pem") if li_Success = 0 then Write-Debug loo_PubKey.LastErrorText destroy loo_Bd destroy loo_PubKey return end if loo_Rsa = create oleobject // Use "Chilkat_9_5_0.Rsa" for versions of Chilkat < 10.0.0 li_rc = loo_Rsa.ConnectToNewObject("Chilkat.Rsa") loo_Rsa.ImportPublicKeyObj(loo_PubKey) // Verify the hash against the signature. loo_Rsa.EncodingMode = "base64" li_Success = loo_Rsa.VerifyHashENC(ls_Sha256_base64,"sha256",ls_Base64_rsa_sig) if li_Success = 0 then Write-Debug loo_Rsa.LastErrorText Write-Debug "Signature invalid." else Write-Debug "Signature valid." end if destroy loo_Bd destroy loo_PubKey destroy loo_Rsa |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.