powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Есть ли метод узнать какое слово было преобразовано при md5
16 сообщений из 16, страница 1 из 1
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934287
Urolog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
md5??
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934350
Фотография hell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотите правильного ответа?
-Нет.


"The CBO without stats is like a morning without coffee." T.Kyte
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934370
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно методом перебора. Чем длиннее слово, тем меньше шансов дождаться результата.....
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934427
Фотография kaban_nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это односторонне шифрование... В этом и вся фишка, чтобы нельзя было расшифровать...Может быть не однос слово с несколько... даже если добавить один символ то хеш сторка полностью измесниться... не парься..
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934438
Фотография hell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4m@t!cМожно методом перебора. Чем длиннее слово, тем меньше шансов дождаться результата.....
----------------------------------------
Артисты не приехали, приехали цыгане

Не факт, что подобранное короткое слово будет верным. Иначе можно было бы сжать любую информацию в N бит
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934461
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934500
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hell, cто процентов, что не факт...
Я не подумал об этом....
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934698
CM Hungry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/
SHA1 уже не рекомендуется.
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934851
а я вообще стараюсь применять не MD5 а GOST,так как и код там длиннее получатся и подделать труднее а перебором вообще замучашся
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32934908
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CM Hungry Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/
SHA1 уже не рекомендуется.
Во-первых не все так страшно. 2^69 - это тоже большое число, вполне достаточное для обычных сайтов, на которых не крутятся большие финансы
Во-вторых, я писал HMAC-SHA1, а не чистый SHA1

GOST хорош, но в ПХП для него отдельный модуль нужен - mhash
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936098
Urolog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/


Вот вы написали $random_string, я так понял что это просто будет обычная строка одинаковая для всех паролей, если же просто ее брать случайно для каждой, то потом не сможем ничего с ней сравнивать. Или что я не прав.
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936170
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Urolog Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/


Вот вы написали $random_string, я так понял что это просто будет обычная строка одинаковая для всех паролей, если же просто ее брать случайно для каждой, то потом не сможем ничего с ней сравнивать. Или что я не прав.
если данные о пароле хранятся в БД, то туда добавляют поле (назовем его hash_key) в котором хранят эту случайную строку. Строка для всех пользователей разная
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936180
Фотография hell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очевидно, $random_string надо хранить вместе с кэшем.

При этом это позволит избежать атаки по уже сформированному словарю "пароль-md5", но не позволит избежать брут-форса. Так же будет невозможно выявить одинаковые пароли сравнивая хэши


"The CBO without stats is like a morning without coffee." T.Kyte
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936191
Urolog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Макс М. Urolog Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/


Вот вы написали $random_string, я так понял что это просто будет обычная строка одинаковая для всех паролей, если же просто ее брать случайно для каждой, то потом не сможем ничего с ней сравнивать. Или что я не прав.
если данные о пароле хранятся в БД, то туда добавляют поле (назовем его hash_key) в котором хранят эту случайную строку. Строка для всех пользователей разная

Так эта строка должна как я понял быть открытой, т.е. не захершированной, в противном случае невозможно будет ей воспользоваться, если так то ее же можно будет простомтреть обычным селектом.
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936259
Фотография hell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, открытой.

Ведь главная фича резком увеличении длины пароля за счет этой строки.

Т.е. гораздо больше вариантов, для желающих организовать у себя табличку соответствия "пароль-хэш"

"The CBO without stats is like a morning without coffee." T.Kyte
...
Рейтинг: 0 / 0
(PHP) Есть ли метод узнать какое слово было преобразовано при md5
    #32936588
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Urolog Макс М. Urolog Макс М.Такая формулировка ИМХО точнее :
Методом перебора можно найти строку, дающую такой же хеш, как и исходный.
Поэтому рекомендуется пароль хешировать так :
$hash_pass = md5($password.$random_string);
Ну или HMAC-MD5 , HMAC-SHA1 , что более надежно с точки зрения криптографии.
В ПХП можно использовать http://pear.php.net/package/Crypt_HMAC/


Вот вы написали $random_string, я так понял что это просто будет обычная строка одинаковая для всех паролей, если же просто ее брать случайно для каждой, то потом не сможем ничего с ней сравнивать. Или что я не прав.
если данные о пароле хранятся в БД, то туда добавляют поле (назовем его hash_key) в котором хранят эту случайную строку. Строка для всех пользователей разная

Так эта строка должна как я понял быть открытой, т.е. не захершированной, в противном случае невозможно будет ей воспользоваться, если так то ее же можно будет простомтреть обычным селектом.
строка должна быть открытой в любом случае.
Ведь она тебе будет нужна для авторизации юзера.

Во-первых.
Несколько разных строк могут дать одинаковый хеш. Поэтому, если ты в базе хранишь просто md5($password), то при авторизации можно использовать не только реальный $password, но и любую строку, которая даст такой-же хеш.
(на самом деле такие строки с одним хешем еще поискать надо).
Если же ты будешь с паролем хешировать еще и какую-то строку, то взломщику надо будет подобрать именно строку равную $password.$random_string - а на это надо больше времени.
На самом деле в HMAC-хешах используется хеш примерно такого вида :
md5($password.md5($password.$key)) - алгоритм не совсем точный, но смысл примерно такой.

Во-вторых.
Если взломщик получил базу, в которой хранятся md5($passwordю;кфтвщь_ыекштп) то он будет вынужден подбирать каждый пароль отдельно. А если бы там были чистые md5($password), то он бы мог искать по все базе :
Код: plaintext
1.
2.
3.
4.
5.
while ($not_found) {
   $password = generetRandomPassword();
   $password = md5($password);
   $sql = "SELECT * FROM users WHERE password = '$password'";
    .....
}
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Есть ли метод узнать какое слово было преобразовано при md5
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]