безопасность — Безопасная отправка данных в C ++?

Может ли кто-нибудь дать мне некоторые рекомендации по моей проблеме — я пишу игру (CryEngine), и мне нужно знать, как отправлять данные, включая имена пользователей и пароли, на сервер, где они могут храниться в базе данных и показываться на веб-странице, отображающей «статистика» игроков. Я хотел бы начать с имен пользователей и паролей, поскольку они являются наиболее важными, которые я получаю, другие вещи действительно не должны быть зашифрованы. Хотя хакерам может быть немного сложнее изменить свою статистику.

Так как же мне подойти к этому? Я знаю, как обходиться с C ++, и какое-то время уже использовал его, я уже создал систему, которая хранит и фиксирует убийства игрока, XP и т. Д., Но это немного сложнее. Звучит так, будто я собираюсь интенсивно использовать BOOST и, возможно, OpenSSL, но, никогда раньше не использовав эти библиотеки или создавая безопасную систему, я немного запутался. Любая помощь или общие указания с благодарностью!

1

Решение

Открытый SSL звучит солидно, посмотрите здесь: http://www.ibm.com/developerworks/linux/library/l-openssl/index.html .

Для этого вы можете использовать почти каждую криптографическую библиотеку (лучше не писать свой собственный материал), но так как это клиент / сервер, в любом случае, используя протокол / систему, которая была разработана именно для этого, лучшим вариантом будет openSSL.
Остальная часть — это защищенный сервер, на котором запущено какое-то приложение (Java EE), которое обрабатывает записи в какой-то базе данных.
Затем выберите какой-либо веб-язык по своему вкусу, чтобы получить записи базы данных.

PS: не делайте это вживую (например, каждый выстрел в голову является записью), но передавайте окончательные результаты раунда или один раз каждые X минут.

3

Другие решения

Я предлагаю использовать HTTPS.

Ссылка против libcurl и с несколькими примерами поваренной книги из сети вы можете подготовить свою клиентскую часть за пару минут или часов. Ручная работа с OpenSSL может занять несколько дней или недель, если вы новичок в этом.

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

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

0

По вопросам рекламы [email protected]