Sample code for 30+ languages & platforms
PowerBuilder

Write PKCS1 or PKCS8 Public Key PEM

See more PEM Examples

Demonstrates how to write either PKCS1 or PKCS8 format PEM files. PKCS1 public keys have this PEM format:
-----BEGIN RSA PUBLIC KEY-----
BASE64 ENCODED DATA
-----END RSA PUBLIC KEY-----
PKCS8 public keys have this PEM format:
-----BEGIN PUBLIC KEY-----
BASE64 ENCODED DATA
-----END PUBLIC KEY-----

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Pem
integer i
integer li_NumPublicKeys

li_Success = 0

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

li_Success = 0

loo_Pem = create oleobject
li_rc = loo_Pem.ConnectToNewObject("Chilkat.Pem")
if li_rc < 0 then
    destroy loo_Pem
    MessageBox("Error","Connecting to COM object failed")
    return
end if

// Load a public key from a PEM file.
// (Assume the PEM contains at least one public key..)
li_Success = loo_Pem.LoadPemFile("/Users/chilkat/testData/pem/myPublicKey.pem")
if li_Success <> 1 then
    Write-Debug loo_Pem.LastErrorText
    destroy loo_Pem
    return
end if

li_NumPublicKeys = loo_Pem.NumPublicKeys
if li_NumPublicKeys = 0 then
    Write-Debug ("Error: Expected the PEM to contain public keys.")
    destroy loo_Pem
    return
end if

// Get each public key as PEM, first in PKCS1 format, then in PKCS8.
for i = 1 to li_NumPublicKeys

    // First output to PKCS1 PEM format:
    Write-Debug "This is PKCS1 format:"
    loo_Pem.PublicKeyFormat = "pkcs1"
    Write-Debug loo_Pem.ToPem()

    // Now PKCS8 PEM format:
    Write-Debug "This is PKCS8 format:"
    loo_Pem.PublicKeyFormat = "pkcs8"
    Write-Debug loo_Pem.ToPem()

next


destroy loo_Pem