AutoIt
AutoIt
Iterate Keys and Certs in PEM
See more PEM Examples
Demonstrates how to access each of the private keys and certs contained within a PEM.Chilkat AutoIt Downloads
Local $bSuccess = False
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oPem = ObjCreate("Chilkat.Pem")
; Load the PEM from a file.
; If the PEM is encrypted, provide a password. Otherwise pass an empty string for the password.
Local $sPassword = "myPassword"
$bSuccess = $oPem.LoadPemFile("../myPemFiles/myPem.pem",$sPassword)
If ($bSuccess = False) Then
ConsoleWrite($oPem.LastErrorText & @CRLF)
Exit
EndIf
; Note: If the app already has the PEM pre-loaded in a string variable, then load it
; by calling LoadPem instead.
Local $sPemContent = "... the PEM contents ..."
$bSuccess = $oPem.LoadPem($sPemContent,$sPassword)
; Check for success as before..
; Iterate over the private keys.
Local $iNumPrivateKeys = $oPem.NumPrivateKeys
Local $i = 0
$oPrivKey = ObjCreate("Chilkat.PrivateKey")
While $i < $iNumPrivateKeys
$oPem.PrivateKeyAt($i,$oPrivKey)
ConsoleWrite("Private Key " & $i & " is " & $oPrivKey.BitLength & " in length" & @CRLF)
$i = $i + 1
Wend
; Iterate over the certificates.
$oCert = ObjCreate("Chilkat.Cert")
Local $iNumCerts = $oPem.NumCerts
$i = 0
While $i < $iNumCerts
$oPem.CertAt($i,$oCert)
ConsoleWrite("Certificate " & $i & " : " & $oCert.SubjectDN & @CRLF)
$i = $i + 1
Wend