Как правило, нет необходимости в обратном шифровании пароля.Наличие этой способности по своей сути снижает безопасность системы.Вместо этого используйте необратимую хэш-функцию.Я предлагаю SHA-256 (или больше), который приводит к строковому результату:
SHA2 (CONCAT (user.name, user.password, 'some salt', user.id), 256)
У меня также есть расстроенная масса радужных таблиц от любого использования при прокате вдругие данные всегда известны во время проверки пароля.
SHA2
требует MySQL 5.5 или более поздней версии.Если вы используете более раннюю версию, SHA1()
почти так же хорош, и, как правило, намного лучше, чем MD5
, AES
и т. Д.