- hash_hmac: documentation ( source)
- base64_encode: documentation ( source)
- pack: documentation ( source)
<?php
$signData = 'asfl;sdkg;dlk;43t3k4ntj3n4tk34tb3jht3jktb3hj4bt34khgkj34;g34gkjd';
$hmacKey = '346456455675674674674683451324124124324';
$merchantSig = base64_encode(hash_hmac('sha256',$signData,pack("H*" , $hmacKey),true));
echo "PHP with Packing\n";
echo $merchantSig . "\n";
echo "==========\n";
$merchantSig = base64_encode(hash_hmac('sha256',$signData,$hmacKey,true));
echo "PHP without Packing\n";
echo $merchantSig . "\n";