![]() |
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
(DataFlex) Get a Certificate's Key SizeDemonstrates how to get the RSA key size of a certificate (for example, 1024-bit, 2048-bit, etc.) Note: This example requires Chilkat v11.0.0 or greater.
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoSbCertBase64 Handle hoCert Variant vPubKey Handle hoPubKey Integer iNumBits Handle hoXml Handle hoBinDat String sTemp1 Integer iTemp1 Move False To iSuccess // For this example, I have a certificate in raw base64 format (not PEM), // that looks like this: "MIIGkDCCBHigAwIBAgIUMDA ... s/iqLsLA==" Get Create (RefClass(cComChilkatStringBuilder)) To hoSbCertBase64 If (Not(IsComObjectCreated(hoSbCertBase64))) Begin Send CreateComObject of hoSbCertBase64 End Get ComLoadFile Of hoSbCertBase64 "qa_data/certs/base64Cert.txt" "utf-8" To iSuccess Get Create (RefClass(cComChilkatCert)) To hoCert If (Not(IsComObjectCreated(hoCert))) Begin Send CreateComObject of hoCert End Get ComGetAsString Of hoSbCertBase64 To sTemp1 Get ComLoadFromBase64 Of hoCert sTemp1 To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoCert To sTemp1 Showln sTemp1 Procedure_Return End // Get the public key. Get Create (RefClass(cComChilkatPublicKey)) To hoPubKey If (Not(IsComObjectCreated(hoPubKey))) Begin Send CreateComObject of hoPubKey End Get pvComObject of hoPubKey to vPubKey Get ComGetPublicKey Of hoCert vPubKey To iSuccess Get ComKeySize Of hoPubKey To iNumBits Showln "Number of bits = " iNumBits // If using an older version of Chilkat, the key size can be obtained like this: Get Create (RefClass(cComChilkatXml)) To hoXml If (Not(IsComObjectCreated(hoXml))) Begin Send CreateComObject of hoXml End Get ComGetXml Of hoPubKey To sTemp1 Get ComLoadXml Of hoXml sTemp1 To iSuccess Get Create (RefClass(cComChilkatBinData)) To hoBinDat If (Not(IsComObjectCreated(hoBinDat))) Begin Send CreateComObject of hoBinDat End Get ComGetChildContent Of hoXml "Modulus" To sTemp1 Get ComAppendEncoded Of hoBinDat sTemp1 "base64" To iSuccess Get ComNumBytes Of hoBinDat To iTemp1 Move (8 * iTemp1) To iNumBits Showln "Number of bits = " iNumBits End_Procedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.