Двойное хеширование не имеет большого смысла и мало что дает.В целом, однако, множественное хеширование может иметь смысл , а некоторые .Например, если вы хэшируете достаточно времени, чтобы занять что-то вроде 100 мс (или около того, в зависимости от оборудования), это может помочь немного .Основная идея этого довольно проста: добавление 100 мс к обычному входу в систему - это едва заметная задержка - но если вы пытаетесь создать что-то вроде таблицы для атаки по словарю, умножьте время начто-то вроде тысячи (или чего бы то ни было) начинает иметь реальное значение - таблица, которую вы обычно можете вычислить (скажем) в день, вместо этого занимает несколько лет.Этого достаточно, чтобы все, кроме действительно серьезных злоумышленников, часто сдавались (или просто скучали) задолго до того, как закончили работу.
Соль - это отдельный инструмент полностью .Его использование не компенсирует слабость базовой хэш-функции.Идея заключается в том, что размер таблицы для атаки по словарю становится значительно больше (например, для однобайтовой соли в 256 раз больше).Соль не обычно держится в секрете, но она относительно случайна, поэтому злоумышленник, выполняющий атаку по словарю, не может просто хэшировать каждое слово как есть, но должен принимать во внимание все возможные значения соли.С риском повторения: он имеет дело со слабостью в том, как (большинство) люди выбирают пароли, не любая слабость в самой хэш-функции.