note 112242 added to function.mcrypt-decrypt
| From: | artaxerxes2 at iname dot com | Date: | Tue, 21 May 2013 16:18:00 +0000 |
| Subject: | note 112242 added to function.mcrypt-decrypt | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-194874@lists.php.net to get a copy of this message | ||
To decrypt data coming from MySQL's AES_ENCRYPT function:
<?php
function mysql_aes_key($key)
{
$new_key = str_repeat(chr(0), 16);
for($i=0,$len=strlen($key);$i<$len;$i++)
{
$new_key[$i%16] = $new_key[$i%16] ^ $key[$i];
}
return $new_key;
}
function aes_decrypt($encrypted,$key)
{
// if $encrypted is HEXed, then return it to binary
$encrypted = pack('H*',$encrypted);
$key = mysql_aes_key($key);
return
rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_128,$key,$encrypted,MCRYPT_MODE_ECB,''),"\x00..\x1F");
}
?>
adapted from the article "Replicating MySQL AES Encryption Methods With PHP" (dated
2012-05-20) found somewhere online.
----
Server IP: 216.235.13.26
Probable Submitter: 209.202.82.139
----
Manual Page -- http://php.net/manual/en/function.mcrypt-decrypt.php
Edit -- https://master.php.net/note/edit/112242
Del: integrated -- https://master.php.net/note/delete/112242/integrated
Del: useless -- https://master.php.net/note/delete/112242/useless
Del: bad code -- https://master.php.net/note/delete/112242/bad+code
Del: spam -- https://master.php.net/note/delete/112242/spam
Del: non-english -- https://master.php.net/note/delete/112242/non-english
Del: in docs -- https://master.php.net/note/delete/112242/in+docs
Del: other reasons-- https://master.php.net/note/delete/112242
Reject -- https://master.php.net/note/reject/112242
Search -- https://master.php.net/manage/user-notes.php