![]() |
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
(DataFlex) RSA Encrypt and Decrypt StringsSee more RSA ExamplesDataFlex sample code to RSA public-key encrypt and decrypt strings using public and private keys.Note: This example requires Chilkat v11.0.0 or greater.
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoRsa Variant vPrivKey Handle hoPrivKey Variant vPubKey Handle hoPubKey String sPlainText Encryptor Handle hoRsaEncryptor Boolean iUsePrivateKey String sEncryptedStr Handle hoRsaDecryptor String sDecryptedStr String sTemp1 Move False To iSuccess // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatRsa)) To hoRsa If (Not(IsComObjectCreated(hoRsa))) Begin Send CreateComObject of hoRsa End // This example also generates the public and private // keys to be used in the RSA encryption. // Normally, you would generate a key pair once, // and distribute the public key to your partner. // Anything encrypted with the public key can be // decrypted with the private key. The reverse is // also true: anything encrypted using the private // key can be decrypted using the public key. // Generate a 2048-bit key. Chilkat RSA supports // key sizes ranging from 512 bits to 4096 bits. Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey If (Not(IsComObjectCreated(hoPrivKey))) Begin Send CreateComObject of hoPrivKey End Get pvComObject of hoPrivKey to vPrivKey Get ComGenKey Of hoRsa 2048 vPrivKey To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoRsa To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatPublicKey)) To hoPubKey If (Not(IsComObjectCreated(hoPubKey))) Begin Send CreateComObject of hoPubKey End Get pvComObject of hoPubKey to vPubKey Get ComToPublicKey Of hoPrivKey vPubKey To iSuccess Move "Encrypting and decrypting should be easy!" To sPlainText // Start with a new RSA object to demonstrate that all we // need are the keys previously exported: Get Create (RefClass(cComChilkatRsa)) To hoRsaEncryptor If (Not(IsComObjectCreated(hoRsaEncryptor))) Begin Send CreateComObject of hoRsaEncryptor End // Encrypted output is always binary. In this case, we want // to encode the encrypted bytes in a printable string. // Our choices are "hex", "base64", "url", "quoted-printable". Set ComEncodingMode Of hoRsaEncryptor To "hex" // We'll encrypt with the public key and decrypt with the private // key. Get pvComObject of hoPubKey to vPubKey Get ComUsePublicKey Of hoRsaEncryptor vPubKey To iSuccess Move False To iUsePrivateKey Get ComEncryptStringENC Of hoRsaEncryptor sPlainText iUsePrivateKey To sEncryptedStr Showln sEncryptedStr // Now decrypt: Get Create (RefClass(cComChilkatRsa)) To hoRsaDecryptor If (Not(IsComObjectCreated(hoRsaDecryptor))) Begin Send CreateComObject of hoRsaDecryptor End Set ComEncodingMode Of hoRsaDecryptor To "hex" Get pvComObject of hoPrivKey to vPrivKey Get ComUsePrivateKey Of hoRsaDecryptor vPrivKey To iSuccess Move True To iUsePrivateKey Get ComDecryptStringENC Of hoRsaDecryptor sEncryptedStr iUsePrivateKey To sDecryptedStr Showln sDecryptedStr End_Procedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.