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

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 PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

$crypt = new CkCrypt2();

//  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 = new CkByteData();
$inData->loadFile($path);

$hmac_hex = $crypt->macBytesENC($inData);
print $hmac_hex . "\n";

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

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

$hmac_hex = $crypt->macBdENC($bdIn);
print $hmac_hex . "\n";

?>