Como migrar senhas para um método de hash diferente

Ao alterar o algoritmo de hash de senha de um aplicativo, como o sistema deve migrar os valores já salvos no banco de dados? Estou ciente do fato de que não posso migrá-los em sua forma de hash, mas que preciso ter os dados de entrada para calcular o novo hash.

Existem duas situações nas quais tenho acesso aos dados de entrada:

Durante o loginQuando o usuário altera sua senha nas configurações de seu perfil

bviamente, somente durante um desses casos, eu posso salvar o novo hash no banco de dados para migrar a senh

Embora todos os meus colegas estejam votando no método 1, meu intestino me diz para não fazer isso. Existe uma maneira recomendada?

questionAnswers(4)

yourAnswerToTheQuestion