Perl
Perl
Workaround for the deprecated Crypt2.OpaqueSignBytesENC method
Shows how to replace the deprecated OpaqueSignBytesENC method. (Chilkat is moving away from the use of CkByteData.)Chilkat Perl Downloads
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);
$path = "c:/someDir/example.dat";
# ------------------------------------------------------------------------
# The OpaqueSignBytesENC method is deprecated:
$inData = chilkat::CkByteData->new();
$inData->loadFile($path);
$crypt->put_EncodingMode("base64");
$base64_sig = $crypt->opaqueSignBytesENC($inData);
# ------------------------------------------------------------------------
# Workaround.
# (Chilkat is moving away from using CkByteData)
$bd = chilkat::CkBinData->new();
$bd->LoadFile($path);
# The contents of bd are replaced with the opaque signature.
$success = $crypt->OpaqueSignBd($bd);
$base64_sig = $bd->getEncoded("base64");