Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... 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.)
Use ChilkatAx-win32.pkg Procedure Test Handle hoSbCertBase64 Boolean iSuccess Handle hoCert Variant vPubKey Handle hoPubKey Integer iNumBits Handle hoXml Handle hoBinDat String sTemp1 Integer iTemp1 Boolean bTemp1 // 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 <> True) Begin Get ComLastErrorText Of hoCert To sTemp1 Showln sTemp1 Procedure_Return End // Get the public key. Get ComExportPublicKey Of hoCert To vPubKey If (IsComObject(vPubKey)) Begin Get Create (RefClass(cComChilkatPublicKey)) To hoPubKey Set pvComObject Of hoPubKey To vPubKey End Get ComLastMethodSuccess Of hoCert To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoCert To sTemp1 Showln sTemp1 Procedure_Return End // In Chilkat version v9.5.0.67, the KeySize property was added. 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 Send Destroy of hoPubKey End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.