DataFlex
DataFlex
DKIM Signature using Windows Current User Certificate Store
See more DKIM / DomainKey Examples
This is a Windows-specific example to load a certificate from the Current User (registry-based) certificate store, and then use the certificate's associated private key for a DKIM signature.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoCert
Variant vPrivKey
Handle hoPrivKey
Handle hoDkim
String sTemp1
Boolean bTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatCert)) To hoCert
If (Not(IsComObjectCreated(hoCert))) Begin
Send CreateComObject of hoCert
End
// The LoadByCommonName method searches the Windows Local Machine and Current User
// registry-based certificate stores for a certificate having the common name specified.
// If found, the certificate is loaded and ready for use.
Get ComLoadByCommonName Of hoCert "My Certificate ABC" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert To sTemp1
Showln sTemp1
Procedure_Return
End
// The certificate must have an associated private key installed, and it must be a
// private key that has been marked "exportable" when it was originally installed.
Get ComHasPrivateKey Of hoCert To bTemp1
If (Not bTemp1) Begin
Showln "This certificate does not have a private key available."
Procedure_Return
End
Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey
If (Not(IsComObjectCreated(hoPrivKey))) Begin
Send CreateComObject of hoPrivKey
End
Get pvComObject of hoPrivKey to vPrivKey
Get ComGetPrivateKey Of hoCert vPrivKey To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatDkim)) To hoDkim
If (Not(IsComObjectCreated(hoDkim))) Begin
Send CreateComObject of hoDkim
End
// Load the private key into the DKIM object:
Get pvComObject of hoPrivKey to vPrivKey
Get ComSetDkimPrivateKey Of hoDkim vPrivKey To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoDkim To sTemp1
Showln sTemp1
Procedure_Return
End
// The private key has been loaded into the DKIM object. See the other DKIM
// examples for guidance on how to create a DKIM signature...
End_Procedure