Як захистити свій додаток stack overflow російською

Яку б МЕГАЗАХИСТ ви не робили, в кінці-кінців всерівно буде те місце, де є if, який перевірять і пускає / непускает далі.

Тому зробити ідеальний захист можна тільки одним способом - не випускати додаток взагалі. Тоді його точно не поламають. Але раз додаток поламали, значить воно хоч трошки, а популярно.

відповідь дан 16 дек '13 в 10:28

@KoVadim пише правильно, що злом справа техніки. Тут треба дивитися наскільки ускладнює захист саму прогу - в загальному дотримати правильний баланс між кількістю зусиль на захист і необхідністю захисту.

З досить простих способів захисту згадаю:

  1. Використання JNI вставок для перевірки захисту, це просто, а разом з тим на порядок піднімає рівень захисту - одна справа реверс інжнірінг байткода, а зовсім інше плюс до цьому дизасемблювання JNI вставок
  2. Горезвісний if перевірки ліцензії розкидати по коду в декількох неочевидних місцях - намагаючись не використовувати 1 функцію перевірки ліцензії, а використовувати вставки коду замість цього.
  3. Впровадити механізм in-app purchase - IAP для покупки будь-яких рівнів та ін. нісенітниці.
  4. У IAP є така штука звана developer payload - це такий механізм захисту правильності покупок. Якщо його правильно застосувати, то можна за допомогою нього перевіряти чи вірна покупка. Більш детально тут

відповідь дан 16 дек '13 об 11:20

@Barmaley ♦, 1) Щоб це використовувати, треба все одно робити перевірку в Java, а результат потім відправляти в C ++. Ось якби чекнуть ліцензію можна б було в С ++ коді, тоді б це мало сенс. - Suvitruf 16 дек '13 о 11:22

@Suvitruf ну можна ж чекнуть ліцензію в С коді і там же намалювати UI діалог з попередженням без виходу на Java і там же зробити аварійне завершення проги - Barmaley 16 дек '13 о 11:45