Delphi DLL
Delphi DLL
Encrypt / Decrypt Secure Strings
See more Encryption Examples
Demonstrates how to use the EncryptSecureENC and DecryptSecureENC methods to encrypt/decrypt secure strings. These methods were added in Chilkat v9.5.0.71 (released January 2018).Chilkat Delphi DLL Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Crypt2, SecureString;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
secStr1: HCkSecureString;
crypt: HCkCrypt2;
encryptedStr: PWideChar;
secStr2: HCkSecureString;
begin
success := False;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Load the secure string with some text.
secStr1 := CkSecureString_Create();
success := CkSecureString_LoadFile(secStr1,'qa_data/txt/helloWorld.txt','utf-8');
if (success <> True) then
begin
Memo1.Lines.Add('Failed to load helloWorld.txt');
Exit;
end;
crypt := CkCrypt2_Create();
CkCrypt2_putCryptAlgorithm(crypt,'aes');
CkCrypt2_putCipherMode(crypt,'cbc');
CkCrypt2_putKeyLength(crypt,128);
CkCrypt2_SetEncodedKey(crypt,'000102030405060708090A0B0C0D0E0F','hex');
CkCrypt2_SetEncodedIV(crypt,'000102030405060708090A0B0C0D0E0F','hex');
CkCrypt2_putEncodingMode(crypt,'base64');
// Return the base64 encoded encrypted contents of secStr1.
encryptedStr := CkCrypt2__encryptSecureENC(crypt,secStr1);
Memo1.Lines.Add('Encrypted string: ' + encryptedStr);
// Output:
// Encrypted string: qiq+IFhcjTkEIkZyf31V/g==
// Decrypt to secStr2:
secStr2 := CkSecureString_Create();
CkCrypt2_DecryptSecureENC(crypt,encryptedStr,secStr2);
// Access the contents of secStr2
Memo1.Lines.Add('Decrypted string: ' + CkSecureString__access(secStr2));
// Output:
// Decrypted string: Hello World!
CkSecureString_Dispose(secStr1);
CkCrypt2_Dispose(crypt);
CkSecureString_Dispose(secStr2);
end;