я хочу исползоват md5 hash функцию для хеширования паролей, когда я применяю эту функцию
напр. md5("123") всегда возврашаеть 202CB962AC59075B964B07152D234B70. а если я в linux-е у двух
user-ов поставлю пароль 123 то в /etc/shadow фаиле в поле паролеи храняться разние строки
то времия как md5("123") всегда возврашает 202CB962AC59075B964B07152D234B70 и я не могу сравнит
паролеи, я знаю что в linux-е для шифрования применяеться md5 алгоритм, наверна они что то там
ешо делают. может кто то знает как шифруються пароли в linux-е или сказат как шифроват пароли
чтоб сравнит их с паролами каторие храняться /etc/shadow фаиле. Спосибо.
Здравствуйте, giorgi2282, Вы писали:
G>я хочу исползоват md5 hash функцию для хеширования паролей, когда я применяю эту функцию
G>напр. md5("123") всегда возврашаеть 202CB962AC59075B964B07152D234B70. а если я в linux-е у двух
G>user-ов поставлю пароль 123 то в /etc/shadow фаиле в поле паролеи храняться разние строки
G>то времия как md5("123") всегда возврашает 202CB962AC59075B964B07152D234B70 и я не могу сравнит
G>паролеи, я знаю что в linux-е для шифрования применяеться md5 алгоритм, наверна они что то там
G>ешо делают. может кто то знает как шифруються пароли в linux-е или сказат как шифроват пароли
G>чтоб сравнит их с паролами каторие храняться /etc/shadow фаиле. Спосибо.
Это тебе надо в конфу по unix.
Крадко: к unix паролям прибовляется еще пару символов которые называются salt, это сделано для того чтобы админу нельзя было увидив что у какого-нибудь юзера в файле такой же хэш как у него узнать его пароль.
Общая идея:
Делаем рандомный salt, прибавляем к паролю, хэшируем, и прибавляем его же к хэшу в открытом виде.
При проверке пароля:
Имеем пароль, Находим salt из хэша, прибавляем к паролю, хэшируем, сравниваем с хэшем.
P.S. Для аутентификации юзеров лучше использовать PAM.
P.P.S. При написании проги которая проверяет пароли можно воспользоваться libcrypt там это помоему все есть.
... << RSDN@Home 1.0 beta 3 >>
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев