Автор Тема: На перлах есть crypt()... а обратно? :-)  (Прочитано 3349 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн PoKoT

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На перлах есть crypt()... а обратно? :-)
« : 22 Января 2002, 11:49:48 »
Подскажите, пожалуйста, есть такая функция crypt() на перле, а есть ли функция для обратного преобразования строки (символов)? То ли лыжи у меня не едут, то ли я уже совсем.... не могу найти ничего. Нужно ИМЕННО обратное преобразование.
Заранее благодарен.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
На перлах есть crypt()... а обратно? :-)
« Ответ #1 : 22 Января 2002, 11:53:14 »
Нет. Функции декодирования не существует...
The documentations is your friend

Оффлайн PoKoT

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На перлах есть crypt()... а обратно? :-)
« Ответ #2 : 22 Января 2002, 11:58:00 »
NeoNox
Благодарю!

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
если
« Ответ #3 : 22 Января 2002, 23:50:45 »
если нужно что-то кодировать, с возможностью дальнейшего раскодирования, то есть такие модули - используют свои принципы, алгоритмы. Один из весьма популярных  - модуль DES, глянь на cpan.org

Только сам понимаешь, если есть воз-ть расшивровать, то это могут сделать и другие, а не только ты.
 в исканиях.

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
<*>
« Ответ #4 : 23 Января 2002, 03:00:57 »
А может РоКоТ не доконца представляет зачем нужна crypt и как ею пользоваться
для проверки пароля ?
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн PoKoT

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На перлах есть crypt()... а обратно? :-)
« Ответ #5 : 23 Января 2002, 11:14:14 »
Oak
Цитировать
не доконца представляет зачем нужна crypt

Согласен. Только начал изучать перл. Потому и обращаюсь к знающим людям в конференции - за советом и помощью. Но если Вы будете так любезны, то может быть разъясните немного про crypt()? Ведь я здесь не единственный чайник, надеюсь? :-) Может кому-то Ваша информация тоже пригодится...

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Разяснения.
« Ответ #6 : 23 Января 2002, 15:23:51 »
crypt - это преобразование пароля в одну сторону (приэ этом могут использоваться разные алгоритмы - DES или MD5).
  Т.е пароль человека единожды превращается в абракадабру и так и сохраняется на сервере.
  В результате - если нехорошие люди вломятся на сервер, они не получат список паролей пользователей.

Далее - как авторизирвать? А просто. Если ты берешь одну и ту же строку - то она превращается в одну и ту же абракадабру
 По ней их и сравниваешь!  :)
  A =crypt=> B
  C =crypt=> B
   B == B значит A = C

Да.. A и C теоретически могут отличаться (т.е несколько разных паролей превращаться в одно и то же), но это маловероятно.

Затем - чтобы уберечися от перебора по словарю еще добавили "solt" - оно вносит случайность в процесс.
Это 2 буквы. crypt("pass","ac").
Т.е чтобы 1й раз сохранить пароль делаем $RRR=crypt("pass") , a чтобы проверить  - берем из этой аброкадабры первые 2 буквы
(это для DES) и увидешь какие 2 (для MD5) и проверяешь:
  if ( strstr($RRR,crypt("pass-ot-usera",первые 2 буквы $RRR))

Вот..  Понятно изложил или подробнее ?
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28