Прежде всего, термин «радужный стол» постоянно употребляется неправильно. «Радужная» таблица - это просто конкретная разновидность таблицы поиска, которая допускает определенный тип сжатия данных на ключах. При обмене вычислений на место, справочная таблица, которая заняла бы 1000 ТБ, может быть сжата в тысячу раз, чтобы ее можно было сохранить на меньшем диске.
Вы должны быть обеспокоены хэшем в таблицах поиска паролей, радугой или другим способом.
@onebyone.livejournal.com:
У атакующего есть «радужные таблицы», состоящие не из хэшей словарных слов, а из состояния вычисления хеша непосредственно перед завершением вычисления хеша.
В таком случае может быть дешевле использовать грубую принудительную запись в файле паролей с помощью соли с постфиксом, чем соль с префиксом: для каждого слова из словарей в свою очередь вы загружаете состояние, добавляете байты соли в хеш, а затем завершаете его. С префиксом соли между вычислениями для каждого словарного слова не будет ничего общего.
Для простой хеш-функции, которая сканирует линейно через входную строку, такой как простой линейный конгруэнтный генератор, это практическая атака. Но криптографически безопасная хеш-функция специально разработана для того, чтобы иметь несколько раундов, каждый из которых использует все биты входной строки, так что вычисление внутреннего состояния непосредственно перед для добавления соли не имеет смысла после первый раунд Например, SHA-1 имеет 80 раундов.
Более того, алгоритмы хеширования паролей, такие как PBKDF, создают свои хэш-функции несколько раз (рекомендуется повторять PBKDF-2 минимум 1000 раз, при каждой итерации дважды применяя SHA-1), что делает эту атаку вдвойне непрактичной.