Как мне написать код, чтобы противостоять пиратству в один клик?

Приложение, над которым я работаю, автоматически взламывается antiLVL (хотя я не использую LVL в своем приложении).

Чтобы защитить свое приложение от "пиратства одним нажатием", я использую методы обнаружения взлома, описанные в Google IO.

Я пытался проверить подпись как с getPackageInfo() и отражение (invoke()), но AntiLVL смог взломать приложение автоматически в обоих случаях.

Как я могу написать код, который не будет автоматически взломан текущей версией antiLVL (1.4.0)? Я имею в виду, кроме использования JNI.

PS: я не говорю о предотвращении пиратства в целом. Я просто хочу, чтобы пират копался в коде вручную, а не использовал автоматический взломщик.

2 ответа

Проблема в том, что любой API, который служит только для проверки правильности вашего приложения, может быть подорван и заменен версией, которая всегда возвращает ожидаемый результат. Я не рассматривал Anti-LVL подробно, но я бы предположил, что он это делает, поэтому ваши попытки проверить ваш код с помощью встроенных API-интерфейсов Dalvik для этой цели терпят неудачу.

Чтобы заставить его работать, вам придется выполнять работу самостоятельно, используя только те API, которые имеют несколько целей и не могут быть так легко разрушены.

Один из способов сделать это - вычислить контрольную сумму вашего.apk-файла или только файла classes.dex внутри него и проверить его по некоторому внешнему ресурсу (онлайн-сервер со списком известных правильных версий, файл загружен на SD-карту первым выполнение и т. д. ресурс в файле.apk, который не включен в classes.dex). Это предотвращает модификацию кода, которая, как я считаю, работает как анти-LVL. Я сам не пробовал, но подозреваю, что это должно сработать.

Презентационные заметки от уклоняющихся пиратов и останавливающих вампиров

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

Обратите внимание, что #:r.page.X в конце ссылки, которые я предоставил, не всегда приводят вас к этому конкретному номеру слайд-страницы по любой причине. Если это не так, примите к сведению и просмотрите вручную.

Другие вопросы по тегам