![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Export Digital Certificate's Public KeyThe ExportPublicKey method can be called to get a certificate's public key. It can then be saved to any of a number of formats: (1) OpenSSL DER, (2) OpenSSL PEM, (3) RSA DER, (4) XML. Note: This example requires Chilkat v11.0.0 or greater.
IncludeFile "CkPublicKey.pb" IncludeFile "CkCert.pb" Procedure ChilkatExample() success.i = 0 cert.i = CkCert::ckCreate() If cert.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; LoadFromFile will load virtually any certificate format file. ; It will auto-recognize the format and load appropiately. success = CkCert::ckLoadFromFile(cert,"/Users/chilkat/testData/cer/chilkat.cer") If success = 0 Debug CkCert::ckLastErrorText(cert) CkCert::ckDispose(cert) ProcedureReturn EndIf ; Get the public key: pubkey.i = CkPublicKey::ckCreate() If pubkey.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkCert::ckGetPublicKey(cert,pubkey) ; Save to various formats: success = CkPublicKey::ckSaveDerFile(pubkey,0,"/Users/chilkat/testData/pubkeys/chilkat_pkcs8.der") If success <> 1 Debug CkPublicKey::ckLastErrorText(pubkey) CkCert::ckDispose(cert) CkPublicKey::ckDispose(pubkey) ProcedureReturn EndIf success = CkPublicKey::ckSavePemFile(pubkey,0,"/Users/chilkat/testData/pubkeys/chilkat.pem") If success <> 1 Debug CkPublicKey::ckLastErrorText(pubkey) CkCert::ckDispose(cert) CkPublicKey::ckDispose(pubkey) ProcedureReturn EndIf success = CkPublicKey::ckSaveDerFile(pubkey,1,"/Users/chilkat/testData/pubkeys/chilkat_pkcs1.der") If success <> 1 Debug CkPublicKey::ckLastErrorText(pubkey) CkCert::ckDispose(cert) CkPublicKey::ckDispose(pubkey) ProcedureReturn EndIf success = CkPublicKey::ckSaveXmlFile(pubkey,"/Users/chilkat/testData/pubkeys/chilkat.xml") If success <> 1 Debug CkPublicKey::ckLastErrorText(pubkey) CkCert::ckDispose(cert) CkPublicKey::ckDispose(pubkey) ProcedureReturn EndIf Debug "Public key exported to all file formats." CkCert::ckDispose(cert) CkPublicKey::ckDispose(pubkey) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.