Какова цель “соли” при хешировании?

Откройте свой csproj файл в блокноте (или блокнот ++) Находят строку:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

и изменение это к

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
11
задан Joe Koberg 10 December 2009 в 22:50
поделиться

3 ответа

Если вы не используете соль, злоумышленник может предварительно вычислить хеш-базу данных пароля <-> в автономном режиме, даже до того, как они взломают ваш сервер. Добавление соли значительно увеличивает размер этой базы данных, что затрудняет выполнение такой атаки.

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

В Википедии есть статья о солях в криптографии .

9
ответ дан 3 December 2019 в 09:41
поделиться

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

1
ответ дан 3 December 2019 в 09:41
поделиться

Если злоумышленник создает гигантскую таблицу хеш-значений для паролей с открытым текстом , использование соли не позволяет ему использовать одну и ту же таблицу для взлома более одного пароля. Злоумышленнику придется создать отдельную таблицу для каждой соли. Обратите внимание, что для того, чтобы это действительно работало правильно, ваша соль должна быть довольно длинной. В противном случае заранее вычисленная таблица злоумышленника, скорее всего, все равно будет содержать хэш соли + пароля.

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

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