<?php
$tempToken = "bb01d09c-c1a5-4e5a-8a50-d1d020aceb9b06ca2784-29fe-4214-9bd5-d3bcf81daf6b";
$clearText = "AuthToken=bb01d09c-c1a5-4e5a-8a50-d1d020aceb9b06ca2784-29fe-4214-9bd5-d3bcf81daf6b&PayerId=8283117399884257&PaymentProcessType=CreditCard&ProcessMethod=None&PaymentMethodStorageOption=None&ReturnURL=https://il01addproc.propay.com:443/Return.aspx";
// $tempToken = "1f25d31c-e8fe-4d68-be73-f7b439bfa0a329e90de6-4e93-4374-8633-22cef77467f5";
// $clearText = "AuthToken=1f25d31c-e8fe-4d68-be73-f7b439bfa0a329e90de6-4e93-4374-8633-22cef77467f5&PayerID=2833955147881261&Amount=10.00&CurrencyCode=USD&ProcessMethod=Capture&PaymentMethodStorageOption=None&InvoiceNumber=Invoice123&Comment1=comment1&Comment2=comment2&echo=echotest&ReturnURL=https://il01addproc.propay.com:443/Return.aspx&ProfileId=3351&PaymentProcessType=CreditCard&StandardEntryClassCode=&DisplayMessage=True&Protected=False";
// Encode the TempToken string in UTF-8
$encodedTempToken = utf8_encode($tempToken);
// Get the MD5 hash of $encodedTempToken in raw binary format with a length of 16
$md5Hash = md5($encodedTempToken, TRUE);
// Encode the name value string in UTF-8
$encodedNameValueString = utf8_encode($clearText);
// Pad the name value string using pkcs5_pad
$blocksize = mcrypt_get_block_size('rijndael_128', 'cbc');
$pad = $blocksize - (strlen($encodedNameValueString) % $blocksize);
$encodedNameValueString = $encodedNameValueString . str_repeat(chr($pad), $pad);
echo $encodedNameValueString;
echo "\n";
// Use AES-128 encryption to encrypt the name value string with the key and IV both being equal to the MD5 hash of $encodedTempToken
$aes128 = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $md5Hash, $encodedNameValueString, MCRYPT_MODE_CBC, $md5Hash);
echo $aes128;
echo "\n";
// Use Base64 encoding to send the resulting bytes of the encrypted name value string
$settingsCipher = base64_encode($aes128);
echo $settingsCipher;
Deprecated: Function utf8_encode() is deprecated in /in/flmrS on line 13
Deprecated: Function utf8_encode() is deprecated in /in/flmrS on line 19
Fatal error: Uncaught Error: Call to undefined function mcrypt_get_block_size() in /in/flmrS:22
Stack trace:
#0 {main}
thrown in /in/flmrS on line 22
Process exited with code 255.
Fatal error: Uncaught Error: Call to undefined function mcrypt_get_block_size() in /in/flmrS:22
Stack trace:
#0 {main}
thrown in /in/flmrS on line 22
Process exited with code 255.
Fatal error: Call to undefined function mcrypt_get_block_size() in /in/flmrS on line 22
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Warning: Wrong parameter count for md5() in /in/flmrS on line 16
Fatal error: Call to undefined function: mcrypt_get_block_size() in /in/flmrS on line 22
Process exited with code 255.
Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.4
Warning: Wrong parameter count for md5() in /in/flmrS on line 16
Fatal error: Call to undefined function: mcrypt_get_block_size() in /in/flmrS on line 22
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Warning: Wrong parameter count for md5() in /in/flmrS on line 16
Fatal error: Call to undefined function: mcrypt_get_block_size() in /in/flmrS on line 22