ID: 27746
Updated by: [EMAIL PROTECTED]
Reported By: taomyn at myway dot com
-Status: Open
+Status: Assigned
Bug Type: mcrypt related
Operating System: Windows Server 2003
PHP Version: 4.3.6RC1
-Assigned To:
+Assigned To: derick
New Comment:
Assigned to the maintainer. :)
Previous Comments:
------------------------------------------------------------------------
[2004-03-29 15:30:34] taomyn at myway dot com
<?
$password = "muppets";
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
$key = mhash(MHASH_MD5,substr("dimwits", 0,
mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)));
print "EP===".$password."===\n";
print "EK===".$key."===\n";
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$enc_pwd = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key,
$password,MCRYPT_MODE_ECB, $iv);
print "EE===".$enc_pwd."===\n";
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
$key = mhash(MHASH_MD5,substr("dimwits", 0,
mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)));
print "DP===".$password."===\n";
print "DK===".$key."===\n";
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$dec_pwd = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $enc_pwd,
MCRYPT_MODE_ECB, $iv);
print "DD===".trim(chop($dec_pwd))."===\n";
?>
Under v4.3.4
EP===muppets===
EK===(�^⌂►�A�░z�│zE|─===
EE===♣�╦ ↨�6(Z╣╣k◄F�`===
DP===muppets===
DK===(�^⌂►�A�░z�│zE|─===
DD===muppets===
Under v4.3.5
EP===muppets===
EK===(�^⌂►�A�░z�│zE|─===
EE===♣�╦ ↨�6(Z╣╣k◄F�`===
DP===muppets===
DK===(�^⌂►�A�░z�│zE|─===
DD===♣�╦ ↨�6(Z╣╣k◄F�`===
I.E. IT DOESN'T DECRYPT - HAPPY?
------------------------------------------------------------------------
[2004-03-29 03:30:57] taomyn at myway dot com
Description:
------------
My decrypting routines now fail to decrypt and in fact seem to return
the encrypted value.
Reproduce code:
---------------
function encrypt_pwd($password)
{
/* Return encrypted password */
global $config;
$password = trim($password);
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
$key = mhash(MHASH_MD5,substr($config['pass_phrase'], 0,
mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)));
error_log("EP===".$password."===");
error_log("EK===".$key."===");
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$enc_pwd = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $password,
MCRYPT_MODE_ECB, $iv);
error_log("EE===".$enc_pwd."===");
return $enc_pwd;
}
function decrypt_pwd($password)
{
/* Return decrypted password */
global $config;
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
$key = mhash(MHASH_MD5,substr($config['pass_phrase'], 0,
mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)));
error_log("DP===".$password."===");
error_log("DK===".$key."===");
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
$dec_pwd = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $password,
MCRYPT_MODE_ECB, $iv);
error_log("DD===".trim(chop($dec_pwd))."===");
return trim(chop($dec_pwd));
}
Expected result:
----------------
[29-Mar-2004 09:35:31] EP===bubbles10===
[29-Mar-2004 09:35:31] EK===-� �WqG9�\6�===
[29-Mar-2004 09:35:31] EE===u!��+�_Yi��O�t===
[29-Mar-2004 09:35:50] DP===u!��+�_Yi��O�t===
[29-Mar-2004 09:35:50] DK===-� �WqG9�\6�===
[29-Mar-2004 09:35:50] DD===bubbles10===
Actual result:
--------------
[29-Mar-2004 09:35:31] EP===bubbles10===
[29-Mar-2004 09:35:31] EK===-� �WqG9�\6�===
[29-Mar-2004 09:35:31] EE===u!��+�_Yi��O�t===
[29-Mar-2004 09:35:50] DP===u!��+�_Yi��O�t===
[29-Mar-2004 09:35:50] DK===-� �WqG9�\6�===
[29-Mar-2004 09:35:50] DD===u!��+�_Yi��O�t===
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=27746&edit=1