Соление и Хеширование Паролей с помощью Linq Для SQL

Вы можете, например, вычислить преобразование Фурье и посмотреть, имеет ли он заметный пик на одной из частот.

10
задан Michael Kniskern 10 June 2009 в 15:30
поделиться

3 ответа

LINQ к SQL не имеет большого количества уместности в этом случае. Вы могли использовать любой механизм, Вы хотите, потому что Вы не будете делать хеширования и соления в SQL.

Шаги для сохранения пароля продвинулись бы эти строки:

  1. Получите пароль как открытый текст, наряду с идентификатором пользователя.
  2. Генерируйте (и помните), соль.
  3. Объедините соль с текстом пароля, например, предварительно ожидайте его или добавьте его.
  4. Хешируйте получающийся текст со своей хеш-функцией
  5. Сохраните идентификатор пользователя, хеш и соль в Вашем DB.

Шаги для проверки пароля продвинулись бы эти строки:

  1. Получите пароль как открытый текст, наряду с идентификатором пользователя.
  2. Получите хешированный и соль от DB для предоставленного идентификатора пользователя.
  3. Объедините соль с предоставленным текстом пароля.
  4. Хешируйте получающийся текст со своей хеш-функцией.
  5. Сравните хеш от функции с хешем, полученным от DB.
  6. Если они равны, предоставленный пароль был правильным.
25
ответ дан 3 December 2019 в 15:22
поделиться

Так как Вы используете.NET и C#, использование может использовать Систему. Безопасность. Криптография. Пространство имен SHA512Managed для генерации соленого значения и хэша пароля

3
ответ дан 3 December 2019 в 15:22
поделиться

В основном, поскольку @Vojislav говорит.

Вы могли бы хотеть посмотреть на bcrypt для хеширования - это, как считают, очень хорошо.

1
ответ дан 3 December 2019 в 15:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: