The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Раздел полезных советов: Подключение виртуальной базы пользо..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для сортировки сообщений в нити по дате нажмите "Сортировка по времени, UBB".
. "Подключение виртуальной базы пользователей к Dovecot с CRAM-..." +/
Сообщение от Sw00p aka Jeromemail (?), 16-Ноя-09, 10:45 
описанный вами алгоритм он производится на стороне сервера

довкот посылает челендж

вот функция

static const char *get_cram_challenge(void)
{
        unsigned char buf[17];
        size_t i;

        hostpid_init();
        random_fill(buf, sizeof(buf)-1);

        for (i = 0; i < sizeof(buf)-1; i++)
                buf[i] = (buf[i] % 10) + '0';
        buf[sizeof(buf)-1] = '\0';

        return t_strdup_printf("<%s.%s@%s>", (const char *)buf,
                               dec2str(ioloop_time), my_hostname);
}


вот что происходит на стороне клиента (пример из SquirrelMail)


function cram_md5_response ($username,$password,$challenge) {
    $challenge=base64_decode($challenge);  // декодируем полученный челендж
    $hash=bin2hex(hmac_md5($challenge,$password)); // потом шифруем этот челендж функцией hmac_md5
    $response=base64_encode($username . " " . $hash) . "\r\n"; // кодируем полученный хеш в виде USERNAME <SPACE> HASH
    return $response;
}

и отправляем эти данные на сервер

а теперь вопрос - зная хеш пароля куда я его буду пихат ?????????????
судя по алгоритму да можно его подставить но  механизм аутентификации этого не позволит


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Раздел полезных советов: Подключение виртуальной базы пользо..., auto_tips, 12-Ноя-09, 14:53  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру