Sample code for 30+ languages & platforms
DataFlex

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

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoPrivKey
    String sPemText
    String sTemp1

    Move False To iSuccess

    //  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.

    Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey
    If (Not(IsComObjectCreated(hoPrivKey))) Begin
        Send CreateComObject of hoPrivKey
    End

    //  The PEM text of an unencrypted private key.
    Move "-----BEGIN PRIVATE KEY-----" + (character(10)) + "MIIEvAIBADANBgkq..." + (character(10)) + "-----END PRIVATE KEY-----" To sPemText

    Get ComLoadPem Of hoPrivKey sPemText To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoPrivKey To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComKeyType Of hoPrivKey To sTemp1
    Showln "Loaded a " sTemp1 " private key."


End_Procedure