Sample code for 30+ languages & platforms
C

Load a Private Key from PEM Text

See more Private Key Examples

Demonstrates the Chilkat PrivateKey.LoadPem method, which loads a private key from PEM text. The only argument is the PEM string. It has no password argument, so it cannot load an encrypted PEM — use LoadEncryptedPem for that.

Background: PEM is the Base64 text format (delimited by -----BEGIN----- lines) that most tooling uses for keys. This method is for the plain, unencrypted case where the key material sits in the clear inside the PEM — convenient, but it means the file itself is the only thing protecting the key. When the PEM is password-protected (a BEGIN ENCRYPTED PRIVATE KEY block or a legacy encrypted header), reach for the Encrypted loader instead.

Chilkat C Downloads

C
#include <C_CkPrivateKey.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkPrivateKey privKey;
    const char *pemText;

    success = FALSE;

    //  Demonstrates the PrivateKey.LoadPem method, which loads a private key from PEM text.  The only
    //  argument is the PEM string.  This method has no password argument, so it cannot load an
    //  encrypted PEM -- use LoadEncryptedPem for that.

    privKey = CkPrivateKey_Create();

    //  The PEM text of an unencrypted private key.
    pemText = "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkq...\n-----END PRIVATE KEY-----";

    success = CkPrivateKey_LoadPem(privKey,pemText);
    if (success == FALSE) {
        printf("%s\n",CkPrivateKey_lastErrorText(privKey));
        CkPrivateKey_Dispose(privKey);
        return;
    }

    printf("Loaded a %s private key.\n",CkPrivateKey_keyType(privKey));


    CkPrivateKey_Dispose(privKey);

    }