Радужные Столы: Как защититься от них?
Я недавно получил l0pht-CD для Windows и опробовал его на своем ПК, и он работает!!
http://2600hertz.wordpress.com/2009/12/22/100-windows-xp-vista-7-password-recovery/
- Я также прочитал http://kestas.kuliukas.com/RainbowTables/
Я проектирую "Login-Simulator", который сохраняет pwd-ы аналогичным образом. Текущая реализация будет уязвима для вышеуказанной атаки. Плз может кто-нибудь проиллюстрировать (как можно более простыми словами), как укрепить против такой атаки радуги столы.
МОЯ ЦЕЛЬ: Постройте "Login-Simulator", чтобы быть максимально безопасным. (Читай хакерский конкурс;-))
Благодарю вас.
2 ответа
Вы должны использовать bcrypt, который был разработан профессиональными криптографами, чтобы делать именно то, что вы ищете.
В общем, вы никогда не должны изобретать свои собственные схемы шифрования / хеширования.
Криптография чрезвычайно сложна, и вы должны придерживаться того, что доказало свою эффективность.
Тем не менее, основной ответ на ваш вопрос заключается в добавлении случайной соли для каждого пользователя и переключении на более медленный хеш.
Поскольку радужная таблица представляет собой серию предварительно вычисленных цепочек хэшей для различных паролей, ее легко сорвать, добавив соль в пароли. Поскольку хеш-функции обычно удаляют большую часть локального соответствия между входом и выходом (то есть небольшое изменение во входных данных приводит к большим, казалось бы, не связанным изменениям в выходных данных), даже небольшая соль будет чрезвычайно эффективной.
Лучше всего, соль не должна быть секретной, чтобы это было эффективным; Радужная таблица должна быть пересчитана для всех возможных комбинаций пароля и соли.