Шифрование с обратной расшифровкой

MySQL поддерживает шифрование AES (также известный как Rijndael). Особенность этого шифрования в том, что его можно расшифровать, т.е. вернуть заши фрованный текст в изначальный вид.

SELECT HEX(AES_ENCRYPT('MySQL', 'any-key')) /* 1D8B173AF0FD23940D257835064F7E59 */

SELECT AES_DECRYPT(UNHEX('1D8B173AF0FD23940D257835064F7E59'), 'any-key') /* MySQL */

Для шифрования передаётся ключ (в коде выше указан как «any-key»). Этот ключ знает только пользователь, который зашифровал текст. Для расшифровки, надо знать ключ, иначе расшифровать текст не получится.