Sample code for 30+ languages & platforms
Lianja

Load Certificate (.cer) and Private Key (.pvk) generated from makecert

See more Certificates Examples

Demonstrates how to load a certificate (.cer) and private key (.pvk) from the files produced by makecert, such as in the following command:
makecert -sv mycertificate.pvk -n "CN=My Simple Certificate" mycertificate.cer -sky Exchange

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

// First load the .cer file.
// The certificate file (.cer) contains only the certificate (does not include the private key)
loCert = createobject("CkCert")
llSuccess = loCert.LoadFromFile("qa_data/certs_and_keys/makecert/mycertificate.cer")
if (llSuccess = .F.) then
    ? loCert.LastErrorText
    release loCert
    return
endif

// Next, load the .pvk file.
// Note: The password "secret" is what you entered when makecert displayed the dialog asking for a password..
loPrivKey = createobject("CkPrivateKey")
llSuccess = loPrivKey.LoadPvkFile("qa_data/certs_and_keys/makecert/mycertificate.pvk","secret")
if (llSuccess = .F.) then
    ? loPrivKey.LastErrorText
    release loCert
    release loPrivKey
    return
endif

// Finally, associate the private key with the certificate.
llSuccess = loCert.SetPrivateKey(loPrivKey)
if (llSuccess = .F.) then
    ? loCert.LastErrorText
    release loCert
    release loPrivKey
    return
endif

// At this point, the certificate can be used for signing.  For example..
loPdf = createobject("CkPdf")

// ....
// ....

llSuccess = loPdf.SetSigningCert(loCert)

// ...
// ....

// Some Chilkat classes also provide a method where the cert and private key can be passed separately.
// For example, if SetSigningCert2 is called, then we don't need to explicitly associate the private key with the cert.
llSuccess = loPdf.SetSigningCert2(loCert,loPrivKey)

// ...
// ....


release loCert
release loPrivKey
release loPdf