Java
Java
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 Java Downloads
import com.chilkatsoft.*;
public class ChilkatExample {
static {
try {
System.loadLibrary("chilkat");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load.\n" + e);
System.exit(1);
}
}
public static void main(String argv[])
{
boolean success = false;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkCert cert = new 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.
success = cert.LoadByCommonName("My Certificate ABC");
if (success == false) {
System.out.println(cert.lastErrorText());
return;
}
// 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 (!cert.HasPrivateKey()) {
System.out.println("This certificate does not have a private key available.");
return;
}
CkPrivateKey privKey = new CkPrivateKey();
success = cert.GetPrivateKey(privKey);
if (success == false) {
System.out.println(cert.lastErrorText());
return;
}
CkDkim dkim = new CkDkim();
// Load the private key into the DKIM object:
success = dkim.SetDkimPrivateKey(privKey);
if (success == false) {
System.out.println(dkim.lastErrorText());
return;
}
// The private key has been loaded into the DKIM object. See the other DKIM
// examples for guidance on how to create a DKIM signature...
}
}