AES_DECRYPT
Синтаксис
AES_DECRYPT(crypt_str,key_str)
AES_ENCRYPT(crypt_str, key_str, [, iv [, mode]])
Описание
Эта функция позволяет дешифровать данные с помощью официального алгоритма AES (Advanced Encryption Standard). Для получения дополнительной информации см. описание функции AES_ENCRYPT().
Начиная с MariaDB 11.2, функция поддерживает вектор инициализации и управление режимом блочного шифрования. По умолчанию режим задаётся переменной block_encryption_mode, которую можно изменить при вызове функции с указанием режима. mode - это aes-{128,192,256}-{ecb,cbc,ctr}, например: "AES-128-cbc".
Для режимов, которые этого требуют, вектор инициализации iv должен иметь длину 16 байт (он может быть длиннее, но дополнительные байты игнорируются). Более короткий iv, когда он необходим, приводит к тому, что функция возвращает NULL. Вызов RANDOM_BYTES(16) сгенерирует случайную последовательность байтов, которые можно использовать для iv.
Примеры
От MariaDB 11.2.0:
SELECT HEX(AES_ENCRYPT('foo', 'bar', '0123456789abcdef', 'aes-128-ctr')) AS x;
+--------+
| x |
+--------+
| C57C4B |
+--------+
SELECT AES_DECRYPT(x'C57C4B', 'bar', '0123456789abcdef', 'aes-128-ctr');
+------------------------------------------------------------------+
| AES_DECRYPT(x'C57C4B', 'bar', '0123456789abcdef', 'aes-128-ctr') |
+------------------------------------------------------------------+
| foo |
+------------------------------------------------------------------+
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/aes_decrypt/