DataFlex
DataFlex
Example: Crypt2.ClearEncryptCerts method
Demonstrates how to call the ClearEncryptCerts method.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoCrypt
Variant vCert1
Handle hoCert1
Variant vCert2
Handle hoCert2
Variant vCert3
Handle hoCert3
Variant vBd
Handle hoBd
Variant vCert4
Handle hoCert4
Variant vCert5
Handle hoCert5
Move False To iSuccess
Get Create (RefClass(cComChilkatCrypt2)) To hoCrypt
If (Not(IsComObjectCreated(hoCrypt))) Begin
Send CreateComObject of hoCrypt
End
// Tell the crypt object to use 3 certificates.
// Do this by calling AddEncryptCert for each certificate.
Get Create (RefClass(cComChilkatCert)) To hoCert1
If (Not(IsComObjectCreated(hoCert1))) Begin
Send CreateComObject of hoCert1
End
// ...
// Load the cert from a source such as a .pfx/.p12 file, smart card, USB token, Apple keychain, Windows certificate store, etc.
// ...
Get pvComObject of hoCert1 to vCert1
Send ComAddEncryptCert To hoCrypt vCert1
Get Create (RefClass(cComChilkatCert)) To hoCert2
If (Not(IsComObjectCreated(hoCert2))) Begin
Send CreateComObject of hoCert2
End
// ...
Get pvComObject of hoCert2 to vCert2
Send ComAddEncryptCert To hoCrypt vCert2
Get Create (RefClass(cComChilkatCert)) To hoCert3
If (Not(IsComObjectCreated(hoCert3))) Begin
Send CreateComObject of hoCert3
End
// ...
Get pvComObject of hoCert3 to vCert3
Send ComAddEncryptCert To hoCrypt vCert3
// Params for public-key encryption to create PKCS7 enveloped-data
Set ComCryptAlgorithm Of hoCrypt To "pki"
Set ComPkcs7CryptAlg Of hoCrypt To "aes"
Set ComKeyLength Of hoCrypt To 256
Set ComOaepHash Of hoCrypt To "sha256"
Set ComOaepPadding Of hoCrypt To True
Get Create (RefClass(cComChilkatBinData)) To hoBd
If (Not(IsComObjectCreated(hoBd))) Begin
Send CreateComObject of hoBd
End
// ...
Get pvComObject of hoBd to vBd
Get ComEncryptBd Of hoCrypt vBd To iSuccess
// Let's say we now want to encrypt something else with different certs..
// First clear the encryption certs.
Send ComClearEncryptCerts To hoCrypt
Get Create (RefClass(cComChilkatCert)) To hoCert4
If (Not(IsComObjectCreated(hoCert4))) Begin
Send CreateComObject of hoCert4
End
// ...
Get pvComObject of hoCert4 to vCert4
Send ComAddEncryptCert To hoCrypt vCert4
Get Create (RefClass(cComChilkatCert)) To hoCert5
If (Not(IsComObjectCreated(hoCert5))) Begin
Send CreateComObject of hoCert5
End
// ...
Get pvComObject of hoCert5 to vCert5
Send ComAddEncryptCert To hoCrypt vCert5
// ...
// ...
// Encrypt using cert4 and cert5.
Get pvComObject of hoBd to vBd
Get ComEncryptBd Of hoCrypt vBd To iSuccess
End_Procedure