Как перенести пароли на другой метод хеширования

При изменении алгоритма хеширования паролей для приложения, как система должна переносить значения, уже сохраненные в базе данных? Мне хорошо известно, что я не могу перенести их в их хешированную форму, но мне нужны входные данные для вычисления нового хеша.

Есть две ситуации, в которых у меня есть доступ к входным данным:

  1. Во время входа в систему
  2. Когда пользователь меняет свой пароль в настройках своего профиля

, очевидно, только во время одной из них я могу сохранить новый хеш в базу данных для переноса пароля.

Хотя все мои коллеги голосуют за метод 1, мое чутье подсказывает мне не делать этого. Есть рекомендуемый способ?

11
задан Nils Werner 14 January 2012 в 18:09
поделиться