DataFlex
DataFlex
Example: Crypt2.ClearSigningCerts method
Demonstrates how to call the ClearSigningCerts 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
Move False To iSuccess
// Tell the crypt object to use 3 certificates.
// Do this by calling AddSigningCert 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
Get ComAddSigningCert Of hoCrypt vCert1 To iSuccess
Get Create (RefClass(cComChilkatCert)) To hoCert2
If (Not(IsComObjectCreated(hoCert2))) Begin
Send CreateComObject of hoCert2
End
// ...
Get pvComObject of hoCert2 to vCert2
Get ComAddSigningCert Of hoCrypt vCert2 To iSuccess
Get Create (RefClass(cComChilkatCert)) To hoCert3
If (Not(IsComObjectCreated(hoCert3))) Begin
Send CreateComObject of hoCert3
End
// ...
Get pvComObject of hoCert3 to vCert3
Get ComAddSigningCert Of hoCrypt vCert3 To iSuccess
Get Create (RefClass(cComChilkatBinData)) To hoBd
If (Not(IsComObjectCreated(hoBd))) Begin
Send CreateComObject of hoBd
End
// ...
Get pvComObject of hoBd to vBd
Get ComOpaqueSignBd Of hoCrypt vBd To iSuccess
// Let's say we now want to sign something else with different certs..
// First clear the signing certs.
Send ComClearSigningCerts To hoCrypt
Get Create (RefClass(cComChilkatCert)) To hoCert4
If (Not(IsComObjectCreated(hoCert4))) Begin
Send CreateComObject of hoCert4
End
// ...
Get pvComObject of hoCert4 to vCert4
Get ComAddSigningCert Of hoCrypt vCert4 To iSuccess
Get Create (RefClass(cComChilkatCert)) To hoCert5
If (Not(IsComObjectCreated(hoCert5))) Begin
Send CreateComObject of hoCert5
End
// ...
Get pvComObject of hoCert5 to vCert5
Get ComAddSigningCert Of hoCrypt vCert5 To iSuccess
// ...
// ...
// Sign using cert4 and cert5.
Get pvComObject of hoBd to vBd
Get ComOpaqueSignBd Of hoCrypt vBd To iSuccess
End_Procedure