Crypto

Delphi and C++ Builder cryptography library.
  • uses standard Windows Cryptography API: Next Generation (CNG)
  • available for Delphi/C++ Builder 7 - 12 and Lazarus 2.2.6
  • supports Windows 32 and Windows 64
  • source code included in registered version
  • royalty free distribution in applications

Crypto library code doesn't contain implementation of any crypto algorithm.

Order Crypto license $160 USD (license for one developer)
Order Crypto multi-license $480 USD (license for all developers in company)

FAQ

How can I use AES encryption and decryption?
const SecretKey = TBytes.Create($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $A, $B, $C, $D, $E, $F);
const InitializationVector = TBytes.Create($F, $E, $D, $C, $B, $A, $9, $8, $7, $6, $5, $4, $3, $2, $1, $0);

var CipherText: TBytes;

// AES encryption
with TSymmetricKey.Create(TSymmetricKeyAlgorithm.skAES, TChainingMode.cmCBC, SecretKey) do
try
  IV := InitializationVector;
  CipherText := Encrypt('Hello, world!');
finally
  Free;
end;

// AES decryption
with TSymmetricKey.Create(TSymmetricKeyAlgorithm.skAES, TChainingMode.cmCBC, SecretKey) do
try
  IV := InitializationVector;
  const PlainBytes = Decrypt(CipherText);
  const PlainText = TEncoding.UTF8.GetString(PlainBytes);
  ShowMessage(PlainText);
finally
  Free;
end;