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) Load Java KeyStore and Access ContentsLoads a Java keystore file and iterates over the contents. A Java keystore (.jks) file can contain one or more trusted root certificate entries and/or one or more private key entries. Each private key entry includes an associated certificate chain.
Use ChilkatAx-win32.pkg Procedure Test Handle hoJks Boolean iSuccess Integer iNumTrustedCerts Integer iNumPrivateKeys Variant vCert Handle hoCert String sAlias Integer i Variant vPrivKey Handle hoPrivKey Variant vCertChain Handle hoCertChain String sTemp1 String sTemp2 // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatJavaKeyStore)) To hoJks If (Not(IsComObjectCreated(hoJks))) Begin Send CreateComObject of hoJks End // Load the Java keystore from a file. The JKS file password is used // to verify the keyed digest that is found at the very end of the keystore. // It verifies there has been no tampering with the file. Get ComLoadFile Of hoJks "jksFilePassword" "/someDir/keyStore.jks" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoJks To sTemp1 Showln sTemp1 Procedure_Return End // Find out how many of each type of entry: Get ComNumTrustedCerts Of hoJks To iNumTrustedCerts Get ComNumPrivateKeys Of hoJks To iNumPrivateKeys // For each trusted certificate, access it by getting // it as a cert object. Also get the alias associated with the certificate. Showln "Trusted Certs:" Move 0 To i While (i < iNumTrustedCerts) Get ComGetTrustedCert Of hoJks i To vCert If (IsComObject(vCert)) Begin Get Create (RefClass(cComChilkatCert)) To hoCert Set pvComObject Of hoCert To vCert End Get ComGetTrustedCertAlias Of hoJks i To sTemp1 Get ComSubjectDN Of hoCert To sTemp2 Showln sTemp1 ": " sTemp2 Send Destroy of hoCert Move (i + 1) To i Loop // For each private key entry, get the private key and // the associated certificate chain. // Each private key is password protected. Usually it is the same // password as used for the keyed digest of the entire JKS. // However, this does not have to be. The password is passed // here to handle the possibility of each private key requiring // a different password. Showln "Private Keys:" Move 0 To i While (i < iNumPrivateKeys) Get ComGetPrivateKey Of hoJks "jksFilePassword" i To vPrivKey If (IsComObject(vPrivKey)) Begin Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey Set pvComObject Of hoPrivKey To vPrivKey End Get ComGetPrivateKeyAlias Of hoJks i To sTemp1 Showln sTemp1 Get ComGetCertChain Of hoJks i To vCertChain If (IsComObject(vCertChain)) Begin Get Create (RefClass(cComChilkatCertChain)) To hoCertChain Set pvComObject Of hoCertChain To vCertChain End // The 1st certificate in the chain is the one associated with the private key. Get ComGetCert Of hoCertChain 0 To vCert If (IsComObject(vCert)) Begin Get Create (RefClass(cComChilkatCert)) To hoCert Set pvComObject Of hoCert To vCert End Get ComSubjectDN Of hoCert To sTemp1 Showln sTemp1 Send Destroy of hoCert Send Destroy of hoCertChain Send Destroy of hoPrivKey Move (i + 1) To i Loop End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.