Sample code for 30+ languages & platforms
Perl

RSA Sign using Base64 Private Key

See more RSA Examples

Signs a string using a non-encrypted RSA private key in base64 encoding. Returns the RSA signature as a base64 string.

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.

$privKey = chilkat::CkPrivateKey->new();

$sbPem = chilkat::CkStringBuilder->new();
$sbPem->AppendLine("-----BEGIN RSA PRIVATE KEY-----",1);
$sbPem->AppendLine("MIIC .... j5A==",1);
$sbPem->AppendLine("-----END RSA PRIVATE KEY-----",1);

$success = $privKey->LoadPem($sbPem->getAsString());
if ($success == 0) {
    print $privKey->lastErrorText() . "\r\n";
    exit;
}

$rsa = chilkat::CkRsa->new();

$success = $rsa->UsePrivateKey($privKey);
if ($success == 0) {
    print $rsa->lastErrorText() . "\r\n";
    exit;
}

$bd = chilkat::CkBinData->new();
$bd->AppendString("12345678","utf-8");

$success = $rsa->SignRawBd($bd);
if ($success == 0) {
    print $rsa->lastErrorText() . "\r\n";
    exit;
}

# Get the base64 RSA signature.
print $bd->getEncoded("base64") . "\r\n";

$success = $rsa->VerifyRawBd($bd);
if ($success == 0) {
    print $rsa->lastErrorText() . "\r\n";
    exit;
}

$strOriginal = $bd->getString("utf-8");
print $strOriginal . "\r\n";