Как я могу зашифровать IP и порт в один номер, как это делает kahoot? - PullRequest
0 голосов
/ 11 апреля 2019

Я создал игру, в которой требуется, чтобы клиент подключался к серверу, однако IP-адрес сервера постоянно меняется с каждым игровым сеансом, поскольку один игрок является одновременно хостом (сервером) и игроком (клиентом). Я думаю, было бы здорово, если бы хост мог просто сообщать одно число (возможно, также с символами ascii), в котором был бы зашифрован IP и порт, отличный пример того, что я хочу, - kahoot, хост отправляет всем один номер, и каждый может подключиться. Я не ищу безопасность, просто легкий способ передать IP и порт. Я использую Python 2.7, но я просто хочу объяснить, как это сделать (хотя код будет очень хорошим).

Я хочу, чтобы это было примерно так:

Сервер:

connection_code=encrypter(ip,port)

клиент:

ip,port=decrypter(connection_code)

1 Ответ

0 голосов
/ 11 апреля 2019

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

Причина этого заключается в том, что вы не можете уменьшить IP-адресАдрес + порт в число с меньшим количеством цифр, чем сам порт ip +, без предоставления дополнительной информации.

...