Sample code for 30+ languages & platforms
Perl

Generate an ECDSA Key

See more ECC Examples

Demonstrates how to generate an ECDSA key.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# This requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# Create a Fortuna PRNG and seed it with system entropy.
# This will be our source of random data for generating the ECC private key.
$fortuna = chilkat::CkPrng->new();
$entropy = $fortuna->getEntropy(32,"base64");
$success = $fortuna->AddEntropy($entropy,"base64");

$ecc = chilkat::CkEcc->new();

# Generate a random ECC private key on the secp256r1 curve.
# Chilkat also supports other curves, such as secp384r1, secp521r1, and secp256k1.

$privKey = chilkat::CkPrivateKey->new();
$success = $ecc->GenKey("secp256r1",$fortuna,$privKey);
if ($success == 0) {
    print $ecc->lastErrorText() . "\r\n";
    exit;
}

print $privKey->getXml() . "\r\n";

# Save the private key to PKCS8 encrypted PEM
# (The private key can be saved in a variety of different formats. See the online reference documentation.)
$success = $privKey->SavePkcs8EncryptedPemFile("pemPassword","myPemFiles/eccKey123.pem");
if ($success != 1) {
    print $privKey->lastErrorText() . "\r\n";
}

print "finished." . "\r\n";