PDA

Просмотр полной версии : несколько хешей на один пасс


Dr.Frank
09.07.2008, 15:32
вобщем пересматривал недавно подобранные пароли в PasswordsPro и заметил такую весчь, что, например, к паролю 32167 нашлось аш 8 DES хешей:
.$0UgzhpxzgdU
32IcS4596OMqY
AOBbDkC8K1Ghk
DBfHzVa3yTm66
EnLFLHWe0TKCg
N.oYdCzg9cb.w
Z08ibeZ3U5jFA
l5noijSVQo8X.
(вернее к этим хешем PasswordsPro подобрал пароль 32167)

Если кто знает как такое возможно и почему это происходит, отпишитесь плз.

spider-intruder
09.07.2008, 16:13
вероятно речь идет о коллизии..

Dr.Frank
09.07.2008, 16:54
насколько я знаю, коллизии - это несколько пассов на один хеш, а тут наоборот.. хотя может я и ошибаюсь... =/

max_pain89
09.07.2008, 17:03
ну как, там же ключи есть, DES это не простое хэширование, а уже криптографичейски алгоритм

4. Стойкость ключа DES
Для шифра DES существуют четыре слабых ключа k при которых Ek (Ek (m)) = m; также существуют двенадцать частично слабых ключей, которые составляют пары k1 и k2 такие что Ek1 (Ek2 (m)) = m. Так как количество всех возможных ключей DES составляет 2**56, то шанс случайно выбрать слабый или частично слабый ключ составляет 1/(2**52). Поскольку пользователь выбирает ключ наугад, то слабые ключи можно игнорировать. Несмотря на это, некоторые пользователи предпочитают проверять, является ли используемый ключ DES слабым ключом. Такое испытание не отнимет много времени и не влияет на скорость шифрования.

Dr.Frank
10.07.2008, 07:18
не, ну это понятно.. удивляет то, что все хеши из одной БД с одного форума..

krypt3r
17.07.2008, 08:43
Причем тут коллизии? Разные salt'ы - разные хэши. Кстати, ТС, первый хэш не соответствует паролю 32167 :) Смотри код

<?php
$pass = '32167';
$salts = array ('.$', '32', 'AO', 'DB', 'En', 'N.', 'Z0', 'l5');
$cnt = count ($salts);
for ($i = 0; $i < $cnt; $i++)
echo crypt ($pass, $salts[$i]), "\n";
?>

Результат:

.$WflKtSN7ZS6
32IcS4596OMqY
AOBbDkC8K1Ghk
DBfHzVa3yTm66
EnLFLHWe0TKCg
N.oYdCzg9cb.w
Z08ibeZ3U5jFA
l5noijSVQo8X.