Sample code for 30+ languages & platforms
VBScript

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 VBScript Downloads

VBScript
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)

success = 0

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

set pem = CreateObject("Chilkat.Pem")

' Load the PEM from a file.
' If the PEM is encrypted, provide a password.  Otherwise pass an empty string for the password.
password = "myPassword"
success = pem.LoadPemFile("../myPemFiles/myPem.pem",password)
If (success = 0) Then
    outFile.WriteLine(pem.LastErrorText)
    WScript.Quit
End If

' Note: If the app already has the PEM pre-loaded in a string variable, then load it 
' by calling LoadPem instead.  
pemContent = "... the PEM contents ..."
success = pem.LoadPem(pemContent,password)
' Check for success as before..

' Iterate over the private keys.
numPrivateKeys = pem.NumPrivateKeys
i = 0

set privKey = CreateObject("Chilkat.PrivateKey")
Do While i < numPrivateKeys
    success = pem.PrivateKeyAt(i,privKey)
    outFile.WriteLine("Private Key " & i & " is " & privKey.BitLength & " in length")
    i = i + 1
Loop

' Iterate over the certificates.
set cert = CreateObject("Chilkat.Cert")
numCerts = pem.NumCerts
i = 0
Do While i < numCerts
    success = pem.CertAt(i,cert)
    outFile.WriteLine("Certificate " & i & " : " & cert.SubjectDN)
    i = i + 1
Loop

outFile.Close