Delphi ActiveX
Delphi ActiveX
Example: Crypt2.ClearEncryptCerts method
Demonstrates how to call the ClearEncryptCerts method.Chilkat Delphi ActiveX Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
crypt: TChilkatCrypt2;
cert1: TChilkatCert;
cert2: TChilkatCert;
cert3: TChilkatCert;
bd: TChilkatBinData;
cert4: TChilkatCert;
cert5: TChilkatCert;
begin
success := 0;
crypt := TChilkatCrypt2.Create(Self);
// Tell the crypt object to use 3 certificates.
// Do this by calling AddEncryptCert for each certificate.
cert1 := TChilkatCert.Create(Self);
// ...
// Load the cert from a source such as a .pfx/.p12 file, smart card, USB token, Apple keychain, Windows certificate store, etc.
// ...
crypt.AddEncryptCert(cert1.ControlInterface);
cert2 := TChilkatCert.Create(Self);
// ...
crypt.AddEncryptCert(cert2.ControlInterface);
cert3 := TChilkatCert.Create(Self);
// ...
crypt.AddEncryptCert(cert3.ControlInterface);
// Params for public-key encryption to create PKCS7 enveloped-data
crypt.CryptAlgorithm := 'pki';
crypt.Pkcs7CryptAlg := 'aes';
crypt.KeyLength := 256;
crypt.OaepHash := 'sha256';
crypt.OaepPadding := 1;
bd := TChilkatBinData.Create(Self);
// ...
success := crypt.EncryptBd(bd.ControlInterface);
// Let's say we now want to encrypt something else with different certs..
// First clear the encryption certs.
crypt.ClearEncryptCerts();
cert4 := TChilkatCert.Create(Self);
// ...
crypt.AddEncryptCert(cert4.ControlInterface);
cert5 := TChilkatCert.Create(Self);
// ...
crypt.AddEncryptCert(cert5.ControlInterface);
// ...
// ...
// Encrypt using cert4 and cert5.
success := crypt.EncryptBd(bd.ControlInterface);
end;