Я должен хранить хэши для паролей?

Пользовательская система и пароли: я просматривал MD5, и мне интересно, что является нормальной / хорошей практикой для паролей. Прямо сейчас, я думаю, что люди супер зашифровывают пароли и хранят хэши. Если да, то как работает проверка пароля? Мне просто нужно ввести пароль, снова пройти процесс шифрования и затем проверить хэш с сохраненным, правильно?

Этот вопрос может противоречить приведенному выше, но должна ли моя соль быть случайно сгенерированным значением? Если да, то когда это может быть полезно?

Редактировать: Кроме паролей, в пользовательской системе, что еще должно быть зашифровано в качестве хорошей практики? Они шифруют имена пользователей или что-то еще?

2-е редактирование: Что такое односторонний хэш? Я имею в виду, технически, я не могу перепроектировать мой исходный код? Может быть, это плохой вопрос, потому что я мало знаю об одностороннем хешировании.

Ответы на вопрос(11)

Ваш ответ на вопрос