Sample code for 30+ languages & platforms
Perl

Export Digital Certificate's Public Key

See more Certificates Examples

The ExportPublicKey method can be called to get a certificate's public key. It can then be saved to any of a number of formats: (1) OpenSSL DER, (2) OpenSSL PEM, (3) RSA DER, (4) XML.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$cert = chilkat::CkCert->new();

# LoadFromFile will load virtually any certificate format file.
# It will auto-recognize the format and load appropiately.
$success = $cert->LoadFromFile("/Users/chilkat/testData/cer/chilkat.cer");
if ($success == 0) {
    print $cert->lastErrorText() . "\r\n";
    exit;
}

# Get the public key:
$pubkey = chilkat::CkPublicKey->new();
$cert->GetPublicKey($pubkey);

# Save to various formats:
$success = $pubkey->SaveDerFile(0,"/Users/chilkat/testData/pubkeys/chilkat_pkcs8.der");
if ($success != 1) {
    print $pubkey->lastErrorText() . "\r\n";
    exit;
}

$success = $pubkey->SavePemFile(0,"/Users/chilkat/testData/pubkeys/chilkat.pem");
if ($success != 1) {
    print $pubkey->lastErrorText() . "\r\n";
    exit;
}

$success = $pubkey->SaveDerFile(1,"/Users/chilkat/testData/pubkeys/chilkat_pkcs1.der");
if ($success != 1) {
    print $pubkey->lastErrorText() . "\r\n";
    exit;
}

$success = $pubkey->SaveXmlFile("/Users/chilkat/testData/pubkeys/chilkat.xml");
if ($success != 1) {
    print $pubkey->lastErrorText() . "\r\n";
    exit;
}

print "Public key exported to all file formats." . "\r\n";