Perl
Perl
Workaround for the deprecated Crypt2.MacBytesENC method
Shows how to replace the deprecated MacBytesENC method. (Chilkat is moving away from the use of CkByteData.)Chilkat Perl Downloads
use chilkat();
$success = 0;
$crypt = chilkat::CkCrypt2->new();
# Do HMAC using SHA-256.
$crypt->put_MacAlgorithm("hmac");
$crypt->put_HashAlgorithm("sha256");
$keyHex = "000102030405060708090A0B0C0D0E0F";
$success = $crypt->SetMacKeyEncoded($keyHex,"hex");
# Return the HMAC using the lowercase hex encoding.
$crypt->put_EncodingMode("hex_lower");
$path = "c:/someDir/example.dat";
# ------------------------------------------------------------------------
# The MacBytesENC method is deprecated:
$inData = chilkat::CkByteData->new();
$inData->loadFile($path);
$hmac_hex = $crypt->macBytesENC($inData);
print $hmac_hex . "\r\n";
# ------------------------------------------------------------------------
# Workaround.
# (Chilkat is moving away from using CkByteData)
$bdIn = chilkat::CkBinData->new();
$bdIn->LoadFile($path);
$hmac_hex = $crypt->macBdENC($bdIn);
print $hmac_hex . "\r\n";