С годами я становлюсь ботаником, когда дело доходит до разработки флеш-игр. Теперь я думаю о том, как использовать свои навыки для помощи другим разработчикам игр.
Я хочу разработать API в AS3, который позволит разработчику (для начала) сделать следующее:
- Отображение диалога, который позволяет пользователю войти в свою «учетную запись» (размещенную на моем сайте).
- Отправить оценку / значение на веб-сайт и приписать его вошедшему в систему пользователю.
- Разблокировать достижение (достижения будут устанавливаться разработчиком в веб-интерфейсе, где они также получат ключ некоторого типа для использования со своим API.
- Отображение рекордов, профилей других игроков в игре и т. Д. (Отображать практически любые статистические данные в игре).
Все достаточно легко, чтобы развиваться сразу. Тем не мение; где это расстраивает, это безопасность. Я не ожидаю неразрушимого решения, которое, как я полностью осознаю, невозможно, но каков будет самый защитный способ приблизиться к этому?
Вот вопросы, которые я могу придумать на месте:
- Самое важное - люди крадут ключ API с помощью атаки "человек посередине".
- Инъекция рекордов, ложное достижение разблокируется.
- Декомпиляция SWF и кража ключа API.
- Использование ключа API для создания фиктивного приложения Flash и отправки случайных данных, таких как рекорды.
- Изменение самого API, чтобы вам не нужно было входить в систему и т. Д.
Одна мысль, которую я имел, заключалась в преобразовании моего API в компонент, поэтому нет доступа к коду (если вы не декомпилируете). Проблема в том, что это просто не дружелюбно для разработчиков, хотя и позволило бы мне создавать собственную графику для пользовательского интерфейса (вместо того, чтобы кодировать много-много спрайтов).
Закрытые / открытые ключи не будут работать, если не будет очень хорошей защиты от декомпиляции.
Я начинаю задаваться вопросом, является ли эта идея тупиком.
Любой совет по обеспечению этого (или его части) был бы великолепен.