![]() |
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
(Visual FoxPro) Generate RSA Key and Sign a StringSee more RSA ExamplesDemonstrates how to generate a new RSA public/private key pair and use it to generate a signature for a string. The (binary) digital signature is returned as a hexidecimalized string.Note: This example requires Chilkat v11.0.0 or greater.
LOCAL lnSuccess LOCAL loRsa LOCAL loPrivKey LOCAL lcStrData LOCAL lcHexSig LOCAL loPubKey lnSuccess = 0 * This example assumes the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. loRsa = CreateObject('Chilkat.Rsa') * Generate a 2048-bit RSA key. loPrivKey = CreateObject('Chilkat.PrivateKey') lnSuccess = loRsa.GenKey(2048,loPrivKey) loRsa.UsePrivateKey(loPrivKey) * Return the signature in hex. loRsa.EncodingMode = "hex" lcStrData = "This is the string to be signed." * Sign the SHA256 hash of the string. lcHexSig = loRsa.SignStringENC(lcStrData,"sha256") ? lcHexSig * Now verify the signature: loPubKey = CreateObject('Chilkat.PublicKey') loPrivKey.ToPublicKey(loPubKey) loRsa.UsePublicKey(loPubKey) lnSuccess = loRsa.VerifyStringENC(lcStrData,"sha256",lcHexSig) IF (lnSuccess = 1) THEN ? "Signature verified!" ELSE ? loRsa.LastErrorText ENDIF * Try it with an invalid signature: lnSuccess = loRsa.VerifyStringENC(lcStrData,"sha256","not a valid sig") IF (lnSuccess = 1) THEN ? "Signature verified!" ELSE ? "Signature validation failed!" ENDIF * Try it with invalid data: lnSuccess = loRsa.VerifyStringENC("Not the original data","sha256",lcHexSig) IF (lnSuccess = 1) THEN ? "Signature verified!" ELSE ? "Signature validation failed!" ENDIF RELEASE loRsa RELEASE loPrivKey RELEASE loPubKey |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.