s campos de senha devem reter seus valores se um formulário não passar na validaçã

Tenho um formulário de inscrição típico com dois campos de senh

<form>
    <%= Html.TextBox("Email", null) %>

    <%= Html.Password("password", null) %>
    <%= Html.Password("confirmPassword", null) %>

    <input type='submit' />
</form>

Se o formulário falhar na validação e for exibido novamente, o campo de texto manterá seu valor, mas os campos da senha estarão sempre em branc

Por que os campos da senha não devem manter seus valores? E, mais importante, existe algum motivo para eu não substituir esse comportamento?

Sinto que esse comportamento diminui a usabilidade e prefere que os campos de senha se comportem da mesma forma que os campos da caixa de texto - mantendo o valor inserido quando houver erros de validaçã

Estou usando o ASP.NET MVC, mas esta questão diz respeito mais à usabilidade e segurança. Entendo que o que estou vendo é um comportamento esperado e, observando oPassword(...) método @ mostra que ignora explicitamente o valor emModelState.

questionAnswers(5)

yourAnswerToTheQuestion