256 bit = 256/8 = 32
192 bit = 192/8 = 24
128 bit = 128/8 = 16
<?PHP
include("AES.php"); // http://aesencryption.net/
$string = "myawesometext to encrypt!";
$key = "123456789";
$block = 256;
$aes = new AES($string, $key, $block);
$enc = $aes->encrypt();
$aes->setData($enc);
$dec= $aes->decrypt();
echo "After encryption: ".$enc."<br/>";
echo "After decryption: ".$dec."<br/>";
?>
Ошибка: mcrypt_decrypt(): Ключ от размера 25 не поддерживается этим алгоритмом. Только ключи размеров 16, 24 или 32 поддерживаютсяAES mcrypt_encrypt размер ключа
Когда я использую этот сайт: http://aesencryption.net/ шифрования и дешифрования работает отлично. PHP: 5.6.3
изменение размера ключа на самом деле не вариант, видя, как это должно работать.
Почему я использую AES? Я общаюсь между двумя серверами (один из них является сторонним), а информация, передаваемая в сообщении, может быть утечкой безопасности, если она не зашифрована. иначе я бы использовал хеширование. Этим данным требуется, которые могут быть возмещены третьей стороной с ключом.
ВАЖНО:
- Текущая версия PHP: 5.6.3 // не работает
- Последняя версия PHP: 5.5.15 // работает
---- ------------ SOLVED
версия: 5.6.0 "Недопустимые ключи и iv размеры больше не принимаются. mcrypt_encrypt() теперь выдает предупреждение и возвращает FALSE, если входы недействительны. Раньше клавиши и IV были дополнены байтами '\ 0' до следующего допустимого размера. "- http://php.net/manual/en/function.mcrypt-encrypt.php
Что я думаю, что вы неправильно поняли. –
Я вообще не изменил свой вопрос, я просто искоренил код, который трудно читать, и изменил формат. Вопрос в том, почему мое шифрование расшифровывается, несмотря на то, что оно может быть расшифровано на сайт AESencyption.net. –
Пожалуйста, переместите свой ответ в раздел ответа и удалите его из своего вопроса. –