Шифрование протокола MMORPG [закрывается]

Метод postJson () никогда не выполняет подготовленный оператор.

8
задан Zombies 13 June 2013 в 13:43
поделиться

7 ответов

@Samuel и coxymla:

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

Это достаточно просто в теории, но это может быть технически сложно. По крайней мере, Вы поднимаете планку для взломщиков.

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

Помещенный явно, шифрование не приводит к медленнее/больше передаче данных.

Предостережение: Эта страница Wikipedia содержит историю об общей ошибке шифрования, сделанной разработчиками Звезды Фантазии Онлайн. Это стоит чтения.

7
ответ дан 5 December 2019 в 17:42
поделиться

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

Относительно предотвращения деформирования через стены необходимо делать эти проверки всегда. Никогда не доверяйте входу пользователя, даже если Вы записали клиенту сами.

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

3
ответ дан 5 December 2019 в 17:42
поделиться

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

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

2
ответ дан 5 December 2019 в 17:42
поделиться

У меня создалось впечатление, что ни один из главных MMOs не использовал транспорт зашифрованных данных. Как Samuel сказал, Вы действительно не вытаскиваете безопасности из него, так как клиент должен смочь зашифровать и дешифровать данные также.

0
ответ дан 5 December 2019 в 17:42
поделиться

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

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

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

Шифрование данных ничего не делает, поскольку hackbots нападают на клиент, в оперативной памяти.

0
ответ дан 5 December 2019 в 17:42
поделиться

Если у Вас есть время, этот +, видео часа о netcode имеет часть о шифровании (среди прочего, таком как клиентская синхронизация и пакетное сжатие).

Соответствующая кавычка от видео - это: ЦП является дешевым. Просто зашифруйте его, у Вас есть достаточно процессорного времени к encypt, и преимущество шифрования высоко (клиенты не будут видеть команды Вашего клиента, увеличивает панель для взламывания, и т.д.).

0
ответ дан 5 December 2019 в 17:42
поделиться

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

-2
ответ дан 5 December 2019 в 17:42
поделиться