|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrey Sapozhnikov 2:5020/400 04 Aug 2000 06:21:30 To : All Subject : Re: выполнить сложную команду из перлового сценария -------------------------------------------------------------------------------- Dmitry Ochnev пишет в сообщении <965347387@f54.n5022.z2.ftn> ... >03 Aug 00 09:23, Artem Chuprina wrote to Dmitry Ochnev: > MS>>> When choosing a new salt create a random two character string whose > MS>>> characters come from the set [./0-9A-Za-z] (like join '', ('.', > MS>>> '/', 0..9, 'A'..'Z', 'a'..'z')[rand 64, rand 64]). > DO>> А мне кажется, что после того, как я это зашифрую, это нельзя будет > DO>> расшифровать однозначным способом, - "salt" выбран случайным образом, а > DO>> расшифровывать Apache это будет тоже случайным образом ?? > AC> Какую-нибудь детскую книжку по юниксу тоже прочесть полезно. Hа предмет > AC> того, что это криптование - one-way. То есть не расшифровывается в > AC> принципе. Можно еще man crypt, там расписано, как оно работает. >Виноват, забылся немного. >Вопрос надо было мне задать так : >Если $salt выбирается случайным методом, то потом, когда введенный >зарегистранным пользователем пароль закриптовывается перед сравнением с >закриптованным паролем, то где гарантия, что он закриптуется тем же самым >способом, что и в первый раз, если $salt всегда выбирается случайно ? Так первые два символа crypt-ованного пароля и есть тот salt. При проверке: my $salt=substr($encrypted,0,2); print "OK\n" if crypt($plain,$salt) eq $encrypted; (Hо вообще-то, функция crypt сама игнорирует все символы в salt кроме первых двух. Посему можно еще проще: print "OK\n" crypt($plain,$encrypted) eq $encrypted;) Andrey --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор Архивное /ru.cgi.perl/65774a5e716e.html, оценка из 5, голосов 10
|