Я планирую сделать игру с actioncript 3.0 (flash). Однако у меня возникли некоторые проблемы с безопасностью при сохранении пользовательских баллов.
Чтобы быть более конкретным, прочитайте ниже, и вы поймете, в чем именно проблема.
- Вы запускаете мое флеш-приложение. PHP создает сеанс для вашего имени пользователя. Играя несколько минут и набирая 750 очков.
- Вы нажимаете кнопку «Сохранить мои очки».
- Он связывает "game.php? Points = []" с вашей суммой очков, следовательно, game.php? Points = 750.
- PHP подключается к MySQL и выполняет запрос на обновление / вставку с именем пользователя, которое вы указали при открытии приложения, и получает баллы с помощью $ _GET ['points'], как вы можете видеть на 3.
Проблема в том,
Любой, кто мог бы напрямую просматривать "game.php? Points = 999999999999", сохранял свои очки в базе данных.
Я думал о шифровании точек, однако Flash является клиентским приложением, и любой может изменить значение «точек» с помощью приложения, такого как «Cheat Engine». Как только они меняют точки, Flash автоматически генерирует зашифрованные точки.
Я также думал о создании личного ключа для каждого игрока при его регистрации и шифровании соответствующим образом, но он также не будет работать, потому что, как только пользователь меняет свои очки с помощью Cheat Engine, flash автоматически шифрует точки с данным закрытым ключом, следовательно, другая бесполезная теория ...
Некоторые люди предлагали мне использовать SSL только потому, что его используют популярные компании, такие как Zynga, но я ищу другие теории здесь.
Есть идеи на этот случай, кроме использования SSL?
Ps. Игра будет MMO, поэтому защита транзакций с данными необходима.