Ваш способ аутентификации пользователя - это общий секрет (пароль).
Если пользователь забывает этот секрет, вам нужен способ установить новый общий секрет. Независимо от того, как вы поступите, у вас все равно будет проблема аутентификации пользователя, чтобы поделиться этим новым секретом.
Если единственное, что вы знаете о пользователе, которого можно использовать для аутентификации, - это его адрес электронной почты, то вам потребуется какой-то способ подтвердить, что пользователь, запрашивающий сброс, контролирует этот адрес электронной почты.
И пока единственный способ сделать это - отправить по электронной почте секрет на этот адрес электронной почты и проверить, получили ли они его.
Который всегда будет открыт для достаточно хитрой атаки MitM.
Причина, по которой вы не отправляете временный пароль, состоит в том, чтобы избежать проблемы «пользователь не может быть обеспокоен изменением и поэтому продолжает использовать небезопасный временный пароль вместо своего собственного безопасного».