![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
какой лучший метод зашифрование паролей?
я нашел хэширование но в гугле нашел, что его можно перебрать как-то... ну и еще нашел в cpan что можно безопастно захэшировать методом добавление символов к самому хэшу и еще используя кодировку utf8-16 к хэшу или к паролю поможет в данном случае использовать зашифрованное соединение https ? но если получиться вынуть этот хэш из бд, то как сделать чтобы не узнали пароль, возможно каким-то сертификатом? и еще как сделать чтобы можно было восстановить пароль, если пользоватль забудет его, отправить его на анонимный email можно, метод хэш тут не получиться? можно сделать "секретный вопрос", но ответ на него можно забыть, тоже или вынуть из таблицы скажите кто какой метод использует? хэш md5 лучше всего или нет? Это сообщение отредактировал(а) gcc - 6.7.2008, 01:20 |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
Столько вопросов, и все об одном и том же....
Немножко правил хорошего тона, при работе с паролями. 1. Никогда не хранить паролей пользователей. НИКОГДА. 2. Хранить нужно хеш, чем длиннее, ем лучше. Стандартный crypt подойдет запросто, MD5 или SHA1 не столь важно. 3. Если чел забыл пароль, генерировать новый и отправлять на мыло. В базе временно сохранить новый пароль и ждать подтверждения от клиента. 4 В идеале даже не генерировать пароль и не отсылать на мыло. А на мыло отсылать временный урл, сложный и длинный. Пройдя по которому чел сам сможет изменить себе пароль. При этом ему еще и капчу желательно показать. 5. Не хранить пароли или хеши в куках. Использовать механизм сессий. 6. HTTPS хорошо и правильно. Рекомендуеться к использованию. Добавлено через 3 минуты и 50 секунд Ну про правила самих паролей я ниче не сказал. Пароль из хеша можно получить в обозримом времени или случайно, или по словарю. Методом тупого перебора не так просто. Так что нужно или самомуу генерировать неудобочитаемые пароли. Или заставлять пользователей генерировать их с соблюдением разных правил и условий, на длину, на набор символов, и т.д. -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
спасибо за ответ!
в гугле достаточно написать "расшифровка md5" писали что рашифровывает на мощных машинах от 12 часов до недели, тогда лучше в открытом виде держать MD5 inside - для расшифровки, На AMD AthlonXP 1700+ (1466 МГц) скорость перебора - ~3,6 миллиона паролей/cек.. http://forum.vingrad.ru/forum/topic-107432...ry819794/0.html http://forum.xakep.ru/m_1024319/tm.htm http://passcracking.ru/index.php а можно зашифровать сертификатом ssl или другим... защитить его веб сервером и системой (запретить просмотр/копирование скрипта в котором этот сертифкат буде и потсавить раздел в read only) или "забить" и использовать md5 128bit ? Это сообщение отредактировал(а) gcc - 6.7.2008, 03:09 |
|||
|
||||
| tolkien |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 5.4.2008 Репутация: 4 Всего: 4 |
1. ненадо использовать чистое MD5. Лучше сделать связку симметричный алгоритм + MD5. Или еще лучше симметричный алгоритм + сжатие + MD5. Еще лучше симметричный алгоритм + сжатие + MD5 + cжатие + МD5 + симметричный алгоритм + MD5. )) никто никогда не расшифрует.
2. Перебрать пароли легко на дексторпе. Но их еще надо проверять. А вот твой дестоп может за 1 сек выполнить 3 мииллионов запросов к серваку? |
|||
|
||||
| KSURi |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
Ну если есть гарантия, что пароли не являются слабыми (например они выставляются скриптом, а не пользователем), то чистого md5 в принципе хватит имхо. На перебор пароля из 16 символов (буквы разного регистра и спецсимволы) могут уйти годы.
Ну и не стоит забывать про всякие вариации типа
Добавлено через 5 минут и 14 секунд
Эм... А это зачем? В смысле зачем делать запросы к серверу? Подбор пароля происходит таким образом: программа берет слово из словаря (или составляет строку сама, если происходит атака перебором) и получает ее хэш, а полученный хэш сравнивается с данным. Так вот если хэши совпадут, то пароль успешно подобран. -------------------- Died at Life.pl line 21 |
||||
|
|||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
16 символов это стандартный хеш, пароль может быть от 1 до бесконечности символов. Его MD5 хеш всегда будет 16 символов. В том то и прикол. А насчет пароля то да. Ведь проверяеться то хеш а не пароль. Поэтому если хеш случайным образом совпал на совсем другом пароле, то он и сработает Тут может обезопасить и многократно усложнить задачу двойное хеширование одного и тогоже пароля. Тогда вероятность совпадения результирующего хеша для двух разных пароолей будет числом с таким количеством нулей, что огого -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
Raw хэш будет 16 байт длиной, однако чаще всего используется его hex представление, которое всегда равно 32 байтам ([a-f0-9]) по длине (потому что в raw виде там могут присутствовать непечатные символы). Однако то, что хэш всегда будет 16 или 32 байта не значит, что сложность пароля от этого уменьшится.
Это сообщение отредактировал(а) KSURi - 6.7.2008, 18:41 -------------------- Died at Life.pl line 21 |
|||
|
||||
| gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
достаточно написать такой запрос чтобы, не было инъекции?? было написано где-то в статье что достаточно! + https и тогда пароли не узнать? дело в том что многие програмыы пароли зашифровывают по разному... potfix, proftp... а могут mysql ломануть? чтобы в таблицу зайти? а может поставить в xen или jail? еще хотел посмотреть в сторону openldap, но времени много займет есть веб интрфейс который записывает в таблицу данные из формы, формирует все в ней, дальше запускаеться скрипт каждые 30 мин, который смотрит изменния или новые аккануты и заносит данные в программы... нужен пароль не зашифрованый, чтобы его потом зашифровать, тот я придумал записывать в другую таблицу потом удалять еще хотел спросить, никто не видел статью, как безопсано элетронные деньги передвать и хранить? Это сообщение отредактировал(а) gcc - 8.7.2008, 01:13 |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
Мде, такая каша в голове.... :(
Вам же предложили рабочие варианты, а вы снова на своей волне... Или чукча не читатель, чукча писатель? Вы бы постарались нормально сформулировать свою мысль, и изложить ее доходчиво. Авось ктото и ткнул бы носом конкретнее. А то бардак в голове и в словах :( -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| gcc |
|
||||||||||||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 1 Всего: 17 |
сори, но если узнают хэш или пароль, то значит что не правильный код или не правильно настронно программное обеспечение!
а вот этого достаточно чтобы не было инъекции + https?
я могу разшифровать свой пароль!! хотя я поставил больше сиволов, ну я так понял что он теперь за год расшифрует? или я что-то не понял?
зашифровывал так:
я не правильно зашифровывал? вот еще варинты шифрование
а что такое Raw хэш ? Это сообщение отредактировал(а) gcc - 8.7.2008, 04:16 |
||||||||||||||
|
|||||||||||||||
| biophreak |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Raw-хеш - это хеш строки, в "сыром" виде, т.е., как сказал KSURi - содержит еще и непечатаемые символы, а то что привыкли видеть мы - это тот же хеш, только в 16-ричном виде
|
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |