Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Кодирование в MD5 как у SMF 
V
    Опции темы
kefir01
Дата 22.6.2007, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 22.6.2007

Репутация: нет
Всего: 2



Хочу связать форум SMF со своим сайтом. Проблема в том как устроить аутентификацию.

Пароль юзера в базе данных выглядит так
7d634ccefc5bdaea3624d5b352e6e994fa426fca

Он же, кодированный мной таким скриптом
Код

my $pass = "nigger";
my $enc = md5_hex($pass);

вот так
c35312fb3a7e05b7a44db2326bd29040

Не можете подсказать как правильно закодировать?

upd нашел в таблице БД поле passwordSalt равное 6c13 для этого юзера, неизменый при смене пароля. Так понимаю он участвует в кодировании... Но как?!  smile 
upd1 нашел принцип создания хешей но на PHP

Код

$passhash = sha1(strtolower($username) . $password);  


Соответственно вопрос переходит в то как осуществить такое кодирование на Perl

Это сообщение отредактировал(а) kefir01 - 22.6.2007, 19:39
PM MAIL   Вверх
Nab
Дата 23.6.2007, 07:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 25.3.2006
Где: Kiev

Репутация: 26
Всего: 37



Вообщето, salt используеться при получении хеша с помощью стандартной crypt.

$hash = crypt($pass, $salt);

Но такое длинное, думаю это какоето дополнительное предбразование.... А почему бы не глануть в исходниках самой SMF и поглядеть код который проверяет пароль.

Добавлено через 6 минут и 16 секунд
Но, насколько я понимаю вам нужна общая аутентификация, чтобы человеку не нужно было регаться на форуме, или зарегавшись на нем не нужно было отдельно аутентифицироваться на самом сайте.... Тогда подход ваш в корне не верен... 
Лучше всего вам нужно будет проверять не пароль человека, а его состояние в системе аутентификации форума, то есть проверять зарегался он там или нет, а при необходимости показывать страничку аутенификации именно форума... во первых, чтоб не делать свою, во вторых, единый интерфейс, в третих будет меньше ошибок безопасности...


--------------------
 Чтобы правильно задать вопрос нужно знать больше половины ответа...
Perl Community 
FREESCO in Ukraine 
PM MAIL   Вверх
kefir01
Дата 24.6.2007, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 22.6.2007

Репутация: нет
Всего: 2



На самом деле я хотел сделать так чтобы регистрация на сайте приравнивалась к регистрации на форуме.
И соответственно иметь свой вариант оной. Немного некрасиво когда с сайта тебя выкидывает на регистрацию на форуме.
Юзеры путаться будут.

Спасибо за помощь - буду продолжать поиски.
PM MAIL   Вверх
kefir01
Дата 24.6.2007, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 22.6.2007

Репутация: нет
Всего: 2



Digest::SHA1 - ответ на вопрос если что.
Код

use Digest::SHA1 qw(sha1_hex);
my $hash = sha1_hex(lc($data->{memberName}).$pass);    



Это сообщение отредактировал(а) kefir01 - 24.6.2007, 22:31
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0406 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.