Проблема в том, что соленый хешированный пароль затем перемещается по сети, и если кто-то его перехватывает, он может его использовать.
Что может сработать, если сервер отправит солю для использования клиенту, а затем клиент отправит обратно соленый хешированный пароль, используя соль, созданную сервером. Злоумышленник может получить ответ, но это не поможет, поскольку соль сервера будет отличаться каждый раз, поэтому ответ клиента будет отличаться каждый раз. Однако для этого требуется, чтобы сервер знал пароль, чтобы он мог перефразировать его солью, нанося ущерб одной из ваших целей.
По сути, сервер должен знать что-то, чтобы гарантировать, что клиент не подделывает его; и классический способ сделать это - сохранить на сервере соленый, хешированный пароль, и клиент отправит пароль на сервер, который проверяет, что клиент отправляет, путем соления и хэширования отправленного пароля и сравнения результата с тем, что он сохранил. , Это позволяет серверу не хранить пароль открытым текстом, но означает, что пароль передается по проводам. Поэтому перед отправкой убедитесь, что пароль зашифрован.