Sample code for 30+ languages & platforms
Node.js

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 Node.js Downloads

Node.js
NODEJS_PRELUDE

function chilkatExample() {

    var success = false;

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

    var pem = new chilkat.Pem();

    // Load the PEM from a file.
    // If the PEM is encrypted, provide a password.  Otherwise pass an empty string for the password.
    var password = "myPassword";
    success = pem.LoadPemFile("../myPemFiles/myPem.pem",password);
    if (success == false) {
        console.log(pem.LastErrorText);
        return;
    }

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

    // Iterate over the private keys.
    var numPrivateKeys = pem.NumPrivateKeys;
    var i = 0;

    var privKey = new chilkat.PrivateKey();
    while (i < numPrivateKeys) {
        pem.PrivateKeyAt(i,privKey);
        console.log("Private Key " + i + " is " + privKey.BitLength + " in length");
        i = i+1;
    }

    // Iterate over the certificates.
    var cert = new chilkat.Cert();
    var numCerts = pem.NumCerts;
    i = 0;
    while (i < numCerts) {
        pem.CertAt(i,cert);
        console.log("Certificate " + i + " : " + cert.SubjectDN);
        i = i+1;
    }


}

chilkatExample();