Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Lianja) RSA Sign Binary Data and Verify (Recover the Original Data)Demonstrates how to RSA sign binary data and then verify/recover the original data. Note: This example uses methods introduced in Chilkat v9.5.0.77.
// 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. loPrivKey = createobject("CkPrivateKey") llSuccess = loPrivKey.LoadEncryptedPemFile("qa_data/pem/rsa_passwd.pem","passwd") if (llSuccess <> .T.) then ? loPrivKey.LastErrorText release loPrivKey return endif loRsa = createobject("CkRsa") loRsa.ImportPrivateKeyObj(loPrivKey) // We have some binary data (in hex) to sign lcOriginalData = "0102030405060708090A" loBd = createobject("CkBinData") loBd.AppendEncoded(lcOriginalData,"hex") // If successful, the contents of bd are replaced with the RSA signature. llSuccess = loRsa.OpenSslSignBd(loBd) if (llSuccess <> .T.) then ? loRsa.LastErrorText release loPrivKey release loRsa release loBd return endif // Show the RSA signature in base64 ? loBd.GetEncoded("base64") // ------------------------------------------ // Get the public key from the private key loPubKey = loPrivKey.GetPublicKey() // Verify the signature and extract the original data. loRsa2 = createobject("CkRsa") loRsa2.ImportPublicKeyObj(loPubKey) llBVerified = loRsa2.OpenSslVerifyBd(loBd) ? "signature verified: " + str(llBVerified) // Show the original data: ? "original data: " + loBd.GetEncoded("hex") release loPubKey release loPrivKey release loRsa release loBd release loRsa2 |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.