![]() |
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
(PureBasic) PBES2 Password-Based EncryptionSee more Encryption ExamplesDemonstrates PBES2 encryptionFor more information, see https://www.chilkatsoft.com/explaining_pbes2_encryption.asp
IncludeFile "CkCrypt2.pb" Procedure ChilkatExample() ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. crypt.i = CkCrypt2::ckCreate() If crypt.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Set properties for PBES2 encryption: ; When the encryption algorithm is set to "pbes2", ; Chilkat will automatically derive the actual secret key using PBKDF2 and ; the specified paramters: password, salt, iteration count, hash function, and desired key length. CkCrypt2::setCkCryptAlgorithm(crypt, "pbes2") CkCrypt2::setCkPbesPassword(crypt, "mySecretPassword") ; Set the underlying PBE algorithm (and key length): CkCrypt2::setCkPbesAlgorithm(crypt, "aes") CkCrypt2::setCkKeyLength(crypt, 256) CkCrypt2::ckSetEncodedIV(crypt,"000102030405060708090A0B0C0D0E0F","hex") ; Give it some salt: CkCrypt2::ckSetEncodedSalt(crypt,"0102030405060708","hex") ; A higher iteration count makes the algorithm more ; computationally expensive and therefore exhaustive ; searches (for breaking the encryption) is more difficult: CkCrypt2::setCkIterationCount(crypt, 1024) ; A hash algorithm needs to be set for PBES2: CkCrypt2::setCkHashAlgorithm(crypt, "sha256") ; Indicate that the encrypted bytes should be returned ; as a hex string: CkCrypt2::setCkEncodingMode(crypt, "hex") plainText.s = "To be encrypted." encryptedText.s = CkCrypt2::ckEncryptStringENC(crypt,plainText) Debug encryptedText ; Now decrypt: decryptedText.s = CkCrypt2::ckDecryptStringENC(crypt,encryptedText) Debug decryptedText CkCrypt2::ckDispose(crypt) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.