Предотвращение пиратства в Android с помощью запросов к серверу - PullRequest
5 голосов
/ 03 апреля 2012

Я работаю над приложением, которое требует от сервера выполнения большей части тяжелой работы.Я хочу запретить пиратским клиентам отправлять запросы на этот сервер.Есть ли способ отправить какой-то идентификатор с запросами, чтобы мой сервер мог спросить Android Market, действительно ли кто-то с таким идентификатором купил приложение?Как мне поступить так?

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

Ответы [ 2 ]

6 голосов
/ 05 апреля 2012

Во-первых: нет 100% безопасности для всего, что вы запускаете на устройстве, которое не находится под вашим контролем (например, в вашем Android-устройстве).

Вы можете усложнить «злоупотребление» несколькими способами:

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

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

1 голос
/ 06 апреля 2012

Взято из моего решения из этого поста Игра для Android продолжает хакаться

Реализация собственной библиотеки лицензирования

Я бы также попросил вас проверить это по записи Google I / O 2011 на YouTube:

Уклонение от пиратов и остановка вампиров

EDIT:

Примечания к презентации от Уклонение от пиратов и остановка вампиров

Некоторые основные ключевые моменты

Примечания к презентации содержат основные примеры и указания по модификации. В видео на YouTube обсуждается аутентификация на стороне сервера и ее связь с пиратством, загрузкой ресурсов и т. Д. В частности, с использованием сервера лицензий, в биллинге приложений и в App Engine. Но это хорошая основа для изучения независимо от того, как вы решите подойти к решению.

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