У меня тоже непонимание.
Я часто вижу позицию, что хеширование пароля пользователя не относится к предметной области. Но как тогда валидировать длину пароля, если предметная область будет получать уже готовый хэш? Получается размазывание логики проверки инварианта и анемия.
Еще я видел утверждение у Хорикова, что предметная область должна быть свободна от волатильных и внепроцессных зависимостей. Но хеширование пароля, по моему мнению, внутрипроцессная зависимость и может относиться к типу волатильных зависимостей и то, только в случае если генерится рандомная соль. Но при этом генератор соли можно сделать явной зависимостью и передавать при обновлении пароля.
Еще говорят, что весь алгоритм хеширования нужно делать явной зависимостью. Но а какой в этом смысл если только соль волатильная? Тем более алгоритм хеширования пароля не то, что требуется часто менять, поэтому нет смысла в абстракциях
Еще хеширование не так уж много времени занимает, чтобы стать проблемой при юнит тестировании.
В общем я не понимаю почему хеширование пароля это не предметная область и почему реализация должна быть в инфраструктуре