PHP中的MySQL AES_DECRYPT似乎不起作用

时间:2014-10-01 23:41:59

标签: php mysql aes crud

使用xcrud data manipulation,更具体地说,使用{Database instanse在所有外部文件中你可以使用xcrud database instanse:“,我使用$xcrud = Xcrud::get_instance()->table('users');显示我的表。

现在问题是我的所有数据都使用AES_ENCRYPT$salt进行加密。我需要做AES_DECRYPT,但不确定我可以使用xcrud方法在哪里或如何使用它。

我是否可以仅使用PHP中的AES_DECRYPT函数而只使用functions.php中的回调?

编辑:我在PHP中尝试过这种方法,但它显示了奇怪的字符( , ŝA , At nz M F)......

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 decrypt_info($value)
{
    $key = mysql_aes_key('mysalt');
    $value = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $value, MCRYPT_MODE_ECB, mcrypt_create_iv( mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB), MCRYPT_DEV_URANDOM));
    return rtrim($value, "0..10");
}

function decrypt_name($value)
{
    $decrypted = decrypt_info($value);
    return $decrypted;
}

0 个答案:

没有答案