Развивающиеся Радужные Столы
В настоящее время я работаю над проектом параллельных вычислений, где я пытаюсь взломать пароли, используя радужные таблицы.
Первый шаг, о котором я подумал, это реализовать очень маленькую версию, которая взламывает пароль длиной 5 или 6 (для начала только цифровые пароли). Для начала у меня есть несколько вопросов с настройками конфигурации.
1 - Какой должен быть размер, с которого я должен начать. Мое первое предположение состоит в том, что я начну с таблицы с 1000 начальных, конечных пар. Это хороший размер для начала?
2- Количество цепочек - я действительно не получил никакой информации в Интернете о том, какой размер цепочки должен быть
3 - Функция сокращения - Если кто-то может дать мне какую-либо информацию о том, как я должен идти о создании.
Кроме того, если у кого-то есть какая-либо информация или какой-либо пример, это будет очень полезно.
2 ответа
Это компромисс между временем и пространством. Чем длиннее цепочки, тем меньше их нужно, поэтому чем меньше места они займут, тем дольше будет взламываться каждый пароль.
Таким образом, ответ всегда состоит в том, чтобы построить самую большую таблицу, какую только можно, в доступном пространстве. Это определит длину вашей цепочки и количество цепочек.
Что касается выбора функции сокращения, она должна быть быстрой и вести себя псевдослучайно. Для предложенного вами набора открытого текста вы можете просто выбрать 20 бит из хеша и интерпретировать их как десятичное число (выбирая другой набор из 20 бит на каждом шаге в цепочке).
В Интернете уже есть множество радужных таблиц. Вычисление радужных таблиц просто переносит вычислительную нагрузку с момента запуска атаки на предварительные вычисления.
http://www.freerainbowtables.com/en/tables/
http://www.renderlab.net/projects/WPA-tables/
http://ophcrack.sourceforge.net/tables.php
http://www.codinghorror.com/blog/2007/09/rainbow-hash-cracking.html