Обновить пароли mysql до нового формата хэша, не зная исходных паролей
У меня есть пользователь, который обновил свой SQL-коннектор до 6.6.5, и он не может запустить свой код из-за хэши паролей в старом формате (до 4.1?). Я хотел бы обновить все учетные записи mysql до более нового формата, к сожалению, я не знаю всех паролей. Я недавно мигрировал на новый сервер (5.1.67), но я просто сделал показ грантов для каждого пользователя и скопировал информацию на новый сервер.
Есть ли способ просто сказать ему обновить все хеши в новый формат без указания исходного пароля? Существует несколько систем, в которых выполняется код, основанный на этих паролях (жестко закодированный), поэтому я не могу просто попросить пользователей сбросить их пароли очень легко.
На CentOS 6.3 mysql 5.1.67
1 ответ
Быстрый ответ: НЕТ, вы не можете перефразировать существующее хеш-значение и все еще сохранять его первоначальное значение.
Хэш по определению - это кодирование много -> один. Поскольку хеш-значение не может быть возвращено к его исходному значению, невозможно перефразировать хеш-значение, чтобы исходное кодирование оставалось нетронутым.