parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

«Кто там?», или «О хешировании»

R. Averkov 02.05.2003 13:29 / 02.05.2003 13:45

При создании регистрации встал вопрос о паролях.
Но что-то не хочет у меня правильно работать хеширование :(

Это работает...
$crypted[^math:crypt[23;^$apr1^$]] 
^if(^math:crypt[23;$crypted] eq $crypted){ 
OK
}{
NO-NO
} 
.... но стоит сравнить пароли из базы и из формы....
Добавляем:
$crypted[^math:crypt[$form:pass;^$apr1^$]] 
^connect[$SQL.connect-string]{^void:sql{UPDATE members SET ... pass='$crypted'... }}

Извлекаем:
^connect[$SQL.connect-string]{$mem[^table::sql{select pass from members where nick="$form:nick"}]}

Проверяем:
^if(^math:crypt[$form:pass;$mem.pass] eq $mem.pass){
OK
}{
NO-NO
} 
... получается несколько разный результат, сравните:

$apr1$Xumnh3Ue$ZDGkX2B2ABlqa/Bkuz8hW0 из формы
и
$apr1$Xumnh3Ue$ZDGkX из базы

Не знаю как и быть :(
Подскажите, пожалуйста, что не так.

  • «Кто там?», или «О хешировании», R. Averkov [M] 02.05.2003 13:29 / 02.05.2003 13:45