Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проведение аутентификации в сети, Как лучше сделать. 
:(
    Опции темы
Nuzur
Дата 6.7.2006, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

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




Есть Клиент и Сервер написаные мною, мне необходимо чтобы сервер опозновал клиентов и давал им права в зависимости от того какими он их опознал.
Введение пароля-логина выглядит как-то не очень красиво поскольку нужно будет синхрогизироваит БД пользователей да и подсознательно мне етот способ как-то не нравиться.

Уважаемые експерты, да и просто если есть мысли умные, подскажите пожалуйста.

Постскриптум - выход в интернет не факт что будет, тоесть аутентификации через сайт тоже отпадает. Введение ключа, а куда его вводить то не в текстовый же файл, даже если его потом шифровать.

Короче нужны идеи smile 


--------------------
Never again...
PM MAIL   Вверх
adonin
Дата 6.7.2006, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.12.2005
Где: Новочеркасск Рост овская обл.

Репутация: 1
Всего: 5



--------------------
Тот, кто слизывает мед с крапивы, платит за него слишком дорого. (Томас ФУЛЛЕР)
PM MAIL   Вверх
Nuzur
Дата 6.7.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

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



adonin, Я почитал, спасибо конечно но все же хочеться чего то попроще.
Кроме того не факт что мы будем работать в одном домене, возможно и подключение через нет, как в таком случаи быть? Выходит пользователь который захочет получить доступ к моему серверу не обИзательно будет зарегистрирован в той системе. 

Это сообщение отредактировал(а) Nuzur - 6.7.2006, 16:15


--------------------
Never again...
PM MAIL   Вверх
sllh
Дата 8.7.2006, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Хм... в таком случае, самым простым будет отправка псевдо-случайнов величины, преобразованной по определенному алгоритму, например "суббота, 13:40" в том же МД5. Конечно, существует вероятность, что если сообщение было отправлено в 40, а получено в 41 минут, то опознание не пройдет, но вероятность мала -- сделать повторный запрос... 
Как вариант, можно использовать аналог port knocking'а 
PM MAIL   Вверх
Nuzur
Дата 10.7.2006, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

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



sllh, ну идея то неплохая, вопрос в том не что отправлять, а как зашифровать. Ведь в таком-то случаи можно и использовать и парольль с логином то. Нужно как-то менять ключ и ето нужно делать одновременно, а вот обойтись без малой крови то? 


--------------------
Never again...
PM MAIL   Вверх
adonin
Дата 12.7.2006, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.12.2005
Где: Новочеркасск Рост овская обл.

Репутация: 1
Всего: 5



Извините, что долго не отвечал. 
Nuzur,  я не имел ввиду, что вы должны пользоваться средствами Windows, я говорил о том, что Вы можете использовать идеи, реализованные в протоколе Kerberos.
Довольно простая процедура аутентификации, обеспечивающая высокую безопасность выглядит так:
1) Пользователь вводит на клиенте логин и пароль;
2) Клиент получает хеш логина и пароля;
3) Клиент формирует запрос, содержащий логин пользователя и некую зашифрованную фразу. В качестве ключа используется хеш логина и пароля. 
4) Запрос передаётся на сервер. Сервер по логину находит в базе пароль пользователя и получает хеш логина и пароля.
5) сервер, зная хеш логина и пароля расшифровывает зашифрованную фразу.
6) сервер случайным образом генерирует сессионный ключ, шифрует его и передаёт клиенту. В качестве ключа может использоваться как хеш пароля, так и переданная клиентом в запросе зашифрованная фраза.
7) клиент расшифровывает ответ сервера, получая сессионный ключ, которым шифрует все следующие пакеты.

При этом Вы гарантируете что ни один ключ не будет передан по сети в открытом виде;
Для каждой сессии будет сгенерирован свой сессионный ключ.

Для реализации этого алгоритма нужно, чтобы сервер хранил базу логинов и паролей всех пользователей. 
--------------------
Тот, кто слизывает мед с крапивы, платит за него слишком дорого. (Томас ФУЛЛЕР)
PM MAIL   Вверх
Nuzur
Дата 12.7.2006, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

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



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


--------------------
Never again...
PM MAIL   Вверх
NiJazz
Дата 12.7.2006, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

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



Nuzur, можно использовать сертификаты CryptoAPI. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




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


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

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