Sample code for 30+ languages & platforms
Lianja

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 Lianja Downloads

Lianja
llSuccess = .F.

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loCert = createobject("CkCert")

// 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.
llSuccess = loCert.LoadByCommonName("My Certificate ABC")
if (llSuccess = .F.) then
    ? loCert.LastErrorText
    release loCert
    return
endif

// 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.
if (not loCert.HasPrivateKey()) then
    ? "This certificate does not have a private key available."
    release loCert
    return
endif

loPrivKey = createobject("CkPrivateKey")
llSuccess = loCert.GetPrivateKey(loPrivKey)
if (llSuccess = .F.) then
    ? loCert.LastErrorText
    release loCert
    release loPrivKey
    return
endif

loDkim = createobject("CkDkim")

// Load the private key into the DKIM object:
llSuccess = loDkim.SetDkimPrivateKey(loPrivKey)
if (llSuccess = .F.) then
    ? loDkim.LastErrorText
    release loCert
    release loPrivKey
    release loDkim
    return
endif

// The private key has been loaded into the DKIM object.  See the other DKIM
// examples for guidance on how to create a DKIM signature...


release loCert
release loPrivKey
release loDkim