Стоит ли добавлять SSL-шифрование в трафик игровых данных? - PullRequest
2 голосов
/ 28 февраля 2012

Я просто хотел узнать, стоит ли мне беспокоиться о шифровании трафика игровых данных по TCP (конечно, имя пользователя / пароль зашифрованы)? Я слышал, что openSSL хорош для такого рода вещей.

Ответы [ 3 ]

3 голосов
/ 28 февраля 2012

С предоставленной вами информацией сложно дать абсолютный ответ.

Но вот некоторые моменты, которые вы должны иметь в виду:

  • SSL вызывает накладные расходы; Является ли эти издержки значительными / приемлемыми, зависит от многих вещей. Вероятно, это приемлемо для медленной игры-симулятора дипломатии, но, вероятно, не для шутера от первого лица в реальном времени.
  • SSL - это не только шифрование данных, но и аутентификация конечных точек: то есть вы знаете, что подключаетесь к запрошенному серверу, а не к какому-либо вредоносному серверу, который хочет украсть ваш пароль, и и так далее.
  • SSL также предотвращает повторные атаки: в зависимости от игры, возможность прослушивать сетевой трафик и воспроизводить его может быть опасно (например, злоумышленник может заставить вас повторить «ордер на покупку»)
2 голосов
/ 28 февраля 2012
  1. Возможно, вы захотите зашифровать конфиденциальные данные, такие как имя пользователя, пароль, чат.

  2. Возможно, вы захотите подписать обычные данные, чтобы другие не могли подделать эти данные(например, злоумышленник с более быстрым соединением вставляет своего рода «движение» в существующее соединение или вставляет спам в соединение чата).OpenSSL также допускает это.

2 голосов
/ 28 февраля 2012

Хотя я полагаю, что вы могли бы (при условии, что игра взаимодействует по TCP; в любом случае с UDP вам понадобится другой подход к шифрованию), трудно понять, почему это стоит делать для таких данных в реальном времени.Проблема в том, что он перестает быть очень ценным для всех очень быстро.

При этом при передаче информации, которая будет сохраняться (например, покупки в «магазине игр»), важнее шифровать и гарантироватьличность того, кто это делает.Это именно то, что определенно должно идти через SSL (действительно, веб-приложение RESTful, работающее по HTTPS, было бы вполне разумным способом реализации этих частей).Основное различие заключается в том, что сроки менее критичны, а результаты сохраняются.

...