Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Сетевые технологии > Расшифровка пароля


Автор: Ground 10.8.2006, 13:18
Задампил базу IPB. нашел строку:
Код

VALUES('1','12345','1155045920','0a56fbe7100ba0265999e17a1e2e5b2c','8<oH#');
INSERT INTO ipb_members_converge (converge_id, converge_email, converge_joined, converge_pass_hash, converge_pass_salt) 


Четвертое - MD5 Хеш пароля. А что пятое??? И как эт оможно расшифровать?

Автор: Darhazer 10.8.2006, 15:14
IPB 2 работаеть так:
генерируеть произвольного низа ''8<oH#'
а pass_hash это md5 (  md5(пароля) . md5( converge_pass_salt) )
Так что нельзя разшифровать пароля.

Автор: Ground 10.8.2006, 15:36
MD5 хеш расшифровывает MD5 Inside.

То есть когда пользователь вводит пароль, он зашифровывается и сравнивается?

Автор: Darhazer 10.8.2006, 17:09
он зашифровывается, к нему добавляют другой md5 хеш и опят зашифровываеться
Второе действие - шифровка кода с длиной 64 знака, так что brute force не поможеть.
Ну скажем что можеш разшифровать MD5
Первая разшифровка покажеть тебе md5(пароля) . md5( converge_pass_salt)
Убираешь вторую половину и снова разшивровуешь
Тогда у тебя будеть пароль
Значить тебе нужно сначало разшифровувать код с длиной 64 символов, а потом из него разшифровувать сам пароль...

Автор: sergejzr 10.8.2006, 17:48
Только не "зашифровывается" а хэшируется. Происходит присваивание зтроке числа. Поэтому "расшифровать" его нельзя. Возможно найти лишь другую строку, которой функция хэширования присвоит то же число.

Обьяснить можно грубо так:
две кучи чисел КА и КБ. В КА бесконечное кол-во чисел разных чисел. В КБ - несколько миллионов разных чисел.

Каждому числу из КА соответствует число из КБ. Причём нескольким числам из КА может соответсвовать одно и то же число из КБ.
(Даже более того, каждому числу из КБ соответствует бесконечное количество чисел из КА)

 
Так что
Цитата(Darhazer @  10.8.2006,  15:09 Найти цитируемый пост)
Первая разшифровка покажеть тебе md5(пароля) . md5( converge_pass_salt)

Не покажет... Потому что однозначного ответа нет.  Так как может быть md5('test')==x и md5('другой_test')==х;
У тебя есть только х. Какой пароль верный? smile


converge_pass_salt нужен для другого...
Например у некоего Кибальчиша есть два аккаунта АА и АБ на разных рессурсах.

Плохишь хочет стыбзить Аккаунт на АБ, но получает доступ только к базе АА.

Если просто кодировать md5(pass)  на АА и АБ, то хэши будут одинаковы и плохишь сможет теоретически найти такую строку, что  md5(pass)==md5(найденная_строка). Используйя эту строку он сможет воспользоваться АБ.

А так он не сможет ничем воспользоваться. Так как даже если найдёт строку для АА, дла АБ она подходить не будет.

Автор: Кнером 11.8.2006, 17:11
Цитата(sergej.z @  10.8.2006,  17:48 Найти цитируемый пост)
Обьяснить можно грубо так:
две кучи чисел КА и КБ. В КА бесконечное кол-во чисел разных чисел. В КБ - несколько миллионов разных чисел.


sergej.z, а есть таблица в которой это можно было бы посмотреть?

Как я понял, есть код 123. Соотвествие: 1 - АА, 2 - ББ, 3 - ВВ. В итоге получается ААББВВ.
 smile ?

Автор: sergejzr 11.8.2006, 17:51
Цитата(Кнером @  11.8.2006,  15:11 Найти цитируемый пост)
sergej.z, а есть таблица в которой это можно было бы посмотреть?

Таблица??
Это соответствие

Password => md5(Password)

КА это все возможные пароли, КБ - все возможные генерированные Хэши - числа от 0 до 2^64





Автор: Кнером 11.8.2006, 17:57
sergej.z, в общем плюнуть на это то же надо  smile 

Автор: sergejzr 11.8.2006, 18:18
Да я так понимаю, Ground, просто хотел узнать, что такое converge_pass_salt и что он означает.

Он ничего не означает. Это просто случайная комбинация.

Автор: Кнером 11.8.2006, 19:21
sergej.z, да взломать он хотел, делов то  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)