Функция AES_DECRYPT ()
Функция MySQL AES_DECRYPT () дешифрует зашифрованную строку, используя алгоритм AES, чтобы вернуть исходную строку. Он возвращает NULL, если обнаруживает недопустимые данные.
AES_DECRYPT (crypt_str, key_str);
Аргументы
Name | Описание |
---|---|
crypt_str | Зашифрованная строка. |
key_str | Строка, используемая для расшифровки crypt_str. |
Синтаксическая диаграмма:
Пример:
Код:
ВЫБРАТЬ AES_DECRYPT (AES_ENCRYPT ('mytext', 'mykeystring'), 'mykeystring');
Приведенный выше оператор MySQL расшифровывает зашифрованную строку mytext с помощью mykeystring и возвращает исходную строку. mytext.
Пример вывода:
mysql> SELECT AES_DECRYPT (AES_ENCRYPT ('mytext', 'mykeystring'), 'mykeystring'); + ------- -------------------------------------------------- ------- + | AES_DECRYPT (AES_ENCRYPT ('mytext', 'mykeystring'), 'mykeystring') | + ------------------------------- --------------------------------- + | mytext | + ------------------------------------------------- --------------- + 1 строка в наборе (0,00 сек)
Пример таблицы: testtable
Код:
Описание SELECT, AES_DECRYPT (description, 'passw') FROM testtable;
Объяснение
Вышеупомянутый оператор MySQL извлекает дешифрованные данные из зашифрованного столбца ‘description’ из ‘testtable’.
Пример вывода:
mysql> SELECT description, AES_DECRYPT (description, 'passw') -> FROM testtable; + ------------------- -------- + ---------------------------------- + | описание | AES_DECRYPT (описание, 'пароль') | + --------------------------- + ------------ ---------------------- + | ^ 5 [@ · ˜, IÜç¦Éý | mytext | | Ô £ ^] Žþª_ ‹м | NULL | | ÿ »(х 2ñ« QèªöjD¸ = ËTú9Ž! | NULL | + --------------------------- + ------- --------------------------- + 3 строки в наборе (0,04 сек)
Сценарий PHP
example-aes_decrypt - php mysql examples | w3resource phpecho" Получить расшифрованные данные из зашифрованного столбца 'description' из 'testtable':
"; echo" "; echo" "; echo" Год и неделя 31 декабря 2007 г. Год и неделя 2008-01-01 "; echo" "; include (" ../dbopen.php "); $ result = mysql_query (" ВЫБРАТЬ описание, AES_DECRYPT (description, 'passw') FROM testtable "); while ($ row = mysql_fetch_array ($ result)) {echo" "; echo" ". $ row ['description']." "; echo" ". $ row [" AES_DECRYPT (description, 'passw') "]." "; echo" " ;} echo "
";?>