MFC Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

MFC Examples

Bounced Mail
Bz2
Certificates/Keys
Charset
CSV
Diffie-Hellman
DKIM / DomainKey
DSA
Email Object
Encryption
FileAccess
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
MIME
NTLM
POP3
RSA
SMTP
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
Tar
Upload
XML
Zip
Amazon S3


 

 

 

 

 

 

 

 

Export Private Key to PKCS8, PEM, DER, XML

Demonstrates how to export a digital certificate's private key to RSA PEM or DER, PKCS8 PEM or DER, or XML.

Downloads:

MS Windows Visual C/C++ Libraries
Linux/CentOS C/C++ Libraries
MAC OS X C/C++ Libraries
Solaris C/C++ Libraries
C++ Builder Libraries
// Needs #include <CkCert.h>
// Needs #include <CkPrivateKey.h>

    CkString strOut;

    CkCert cert;

    //  Th LoadByCommonName method searches the Windows
    //  Current User Certificate Store and Local Machine Certificate
    //  Store for a certificate whose common name (CN) matches
    //  the argument:
    bool success;
    success = cert.LoadByCommonName("Chilkat Software, Inc.");
    if (success == false) {
        strOut.append("Failed to find certificate!\r\n");
    }
    else {

        //  Get the PrivateKey object:
        CkPrivateKey *pkey = 0;

        pkey = cert.ExportPrivateKey();
        if (!(pkey == 0 )) {

            //  Export the private key to an RSA DER file:
            pkey->SaveRsaDerFile("pkey_rsa.der");

            //  Export to a PKCS8 DER file:
            pkey->SavePkcs8File("pkey_pkcs8.der");

            //  Export to an RSA PEM file:
            pkey->SaveRsaPemFile("pkey_rsa.pem");

            //  Export to a PKCS8 PEM file:
            pkey->SavePkcs8PemFile("pkey_pkcs8.pem");

            //  Export to XML:
            pkey->SaveXmlFile("pkey.xml");

            //  Get PKCS8 PEM string:
            strOut.append("PKCS8 PEM Private Key:");
            strOut.append("\r\n");
            strOut.append(pkey->GetPkcs8Pem());
            strOut.append("\r\n");

            //  Get RSA PEM string:
            strOut.append("RSA PEM Private Key:");
            strOut.append("\r\n");
            strOut.append(pkey->GetRsaPem());
            strOut.append("\r\n");

        }
        else {
            strOut.append("No private key found!\r\n");
        }

    }

    //  The Chilkat Certificate, Certificate Store, Private Key,
    //  Public Key, and Key Container classes / objects are freeware.

    //  They are used by and included with the Chilkat Email,
    //  Crypt, S/MIME, and other commercial Chilkat components.


    SetDlgItemText(IDC_EDIT1,strOut.getUnicode());

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.