Что мне нужно знать, чтобы написать программу сокета клиент-сервер на Java с использованием аутентификации Caesar Cipher? - PullRequest
0 голосов
/ 30 сентября 2010

У меня есть задание под названием «Напишите программу на сокете клиентского сервера на Java, в которой сервер будет аутентифицировать клиента с использованием алгоритма аутентификации». Как мне начать? Каковы предпосылки знания компьютерной безопасности и программирования сокетов для реализации этого? Есть ли ссылки на хорошие учебники?

РЕДАКТИРОВАТЬ: Использование Цезаря Cipher

Ответы [ 5 ]

1 голос
/ 30 сентября 2010

Используете ли вы алгоритм аутентификации или просто шифруете сообщение?

Если вам просто нужно зашифровать сообщение, убедитесь, что на обоих концах хранится одинаковый шифр (должны работать два массива символов)) и зашифровывает строку символ за символом перед отправкой сообщения, а затем расшифровывает его символ за символом на другом конце.

Вы не используете Цезарь-шифр для аутентификации, а просто для шифрования.Если вы хотите аутентификацию, то в качестве первого сообщения соединения сокета вы можете указать имя пользователя / пароль, которые вы можете зашифровать на стороне клиента и на стороне сервера, а затем проверить, что они действительны.Для простейшего примера этого просто жесткий код: допустимое имя пользователя и пароль на сервере и имя пользователя и пароль на клиенте должны быть введены в командной строке.

1 голос
/ 30 сентября 2010
1 голос
/ 30 сентября 2010

Это требование расплывчато. Я дам вам самый простой ответ:

напишите сервер таким образом, чтобы при каждом запросе ему требовалось имя пользователя и пароль.

1 голос
/ 30 сентября 2010

Может быть, это может вам помочь:

http://www.javaworld.com/jw-12-1996/jw-12-sockets.html

Аутентификация может быть простой схемой имени пользователя / пароля.

0 голосов
/ 03 мая 2011

Для любого, кто погуглил здесь свой путь, пример алгоритма аутентификации или «рукопожатия» - это больше, чем username и password. Это будет вызов, отправленный с сервера клиенту, такой как случайная строка; и клиент выполняет алгоритм запроса, такой как, например, побитовые операции, и отправляет его обратно на сервер. Затем сервер делает то же самое с запросом и сравнивает его с тем, который отправил клиент, прежде чем проверять вход в систему.

Это используется для создания более загадочного протокола, чтобы удержать сторонних разработчиков, таких как производители ботов, от создания неавторизованного программного обеспечения. Часто процедура рукопожатия очень сложна, не только в работе, но и с использованием сложных функций используемого языка, чтобы сделать перенос очень трудным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...