- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
std::string wbfunc(std::string& hash)
{
std::string line;
std::ifstream f("/home/hromjo/q");
int l = 0;
while (std::getline(f, line))
{
std::cout << "Перебор: " << l << "паролей." << "\n";
l++;
if (md5(line) == hash)
{
return line;
break;
}
}
}
это серъезно, или в шутку - не въехал
суровый бруттер if (md5(line) == hash)), походу сильно заточен на md5.
0_0 я видел статью одного чувака реально рубящего в теме.
он писал что бруттеры пишут все кому не лень
и как не странно 95% из них - говно - они даже не достигают скоростей, которых можно достичь написав проверку md5 самым тупым образом...
и знаете почему? потому что их авторы выводят инфу о скорости на каждой итерации, что в несколько раз медленнее чем проверить один хеш.
PS Use for(), Luke ))
Ахахаха!
словарь можно тоже организовать по правильному, записав в него пароли в виде блоков (допустим по 4кб) по несколько штук с выравниванием...
Метод термо-ректального криптоанализа же, в свою очередь, помогает свести число итераций до минимума. В некоторых случаях число итераций и вовсе сводится к нулю, заканчиваясь на стадии инициализации.
И интересно где md5 без salt используется для паролей? в phpbb?
это rainbow table, если что
Если Вы не знаете salt, то толку от дехешера мало.
И что такое "не знаете salt"? Опишите как при "неизвестном salt" идёт проверка пароля самим "движком". Я просто не занимаюсь такими работами, где надо вручную вводить использование md5-хеширования, поэтому возможно чего-то не понимаю.
Но пока нет ответов на данные вопросы, давайте рассмотрим случай , где salt выбирается случайно и размещается рядом с MD5-хешем используя разделитель "$", допустим. Как получить пароль, дающий тот же md5-хеш? Просто "дехешировать" имеющейся хеш, выбрать тот (32+strlen(salt)) символьный "дехеш", у которого на конце имеется "salt", отрубить данный salt и снова "дехешировать", выбирая тот "дехеш", у которого salt на конце.
Да и если допустим при составлении данной базы одих хеш будет генерироваться в одну микросекунду, то составляться она будет больше 500 лет.