3

在 mySql 我做,hex(AES_ENCRYPT('mytext','mykeystring')). 这给了我一个带有字符的字符串,而不是一些不可读的东西。

我怎样才能在php中做这样的事情?是否有内置功能可以让我这样做?就像 mySql 有hex并且aes_encrypt有一个password/salt.

我不是在 php 中寻找精确的 aes 加密。任何返回一串字母和数字并且不容易破解的东西都可以(有盐)

4

2 回答 2

5

PHP 等价物是:

// MySQL's AES_ENCRYPT uses Rijndael 128 with ECB mode
$enc_text = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $text, MCRYPT_MODE_ECB);
// HEX() equivalent
echo bin2hex($enc_text);

请注意,ECB 块模式不是很好,最好使用 CFB。我之前的回答更详细地讨论了这个问题。

于 2013-06-14T06:51:43.973 回答
0

使用hash函数http://php.net/manual/en/function.hash.php)。该hash_algos()函数返回一个可用算法的数组。(http://www.php.net/manual/en/function.hash-algos.php

于 2013-06-14T06:35:08.357 回答