Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
Export Private Key to PKCS8, PEM, DER, XMLDemonstrates how to export a digital certificate's private key to RSA PEM or DER, PKCS8 PEM or DER, or XML.
// 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-2008 Chilkat Software, Inc. All Rights Reserved.