Sample code for 30+ languages & platforms
Perl Requires Chilkat v11.0.0+

Workaround for the deprecated Crypt2.SignBytes method

Shows how to replace the deprecated SignBytes method. (Chilkat is moving away from the use of CkByteData.)

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$crypt = chilkat::CkCrypt2->new();

$cert = chilkat::CkCert->new();
#  ...
#  Load the cert from a source such as a .pfx/.p12 file, smart card, USB token, Apple keychain, Windows certificate store, etc.
#  
$success = $crypt->SetSigningCert($cert);

$crypt->put_HashAlgorithm("sha256");

$path = "c:/someDir/example.dat";

#  ------------------------------------------------------------------------
#  The SignBytes method is deprecated:

$inData = chilkat::CkByteData->new();
$inData->loadFile($path);

$outData = chilkat::CkByteData->new();

$success = $crypt->SignBytes($inData,$outData);

#  ------------------------------------------------------------------------
#  Workaround.
#  (Chilkat is moving away from using CkByteData)

$bdIn = chilkat::CkBinData->new();
$bdIn->LoadFile($path);

$crypt->put_EncodingMode("base64");
$base64_sig = $crypt->signBdENC($bdIn);

#  If you want to access the bytes...
$bdSig = chilkat::CkBinData->new();
$bdSig->AppendEncoded($base64_sig,"base64");