Тож ми вже кілька разів переживали це, ми випускаємо гру (для дешевих), і хтось її зламає і ставить на дзеркало. Ми налаштовуємо Google Alerts для всіх наших додатків, тому нам щодня повідомляють, хто робить злом. Поки ми впровадили сервіс ліцензування, як запропонував Google, наша сіль робиться випадковим чином щоразу, коли ліцензія починається з унікального ідентифікатора пристрою. Ми запускаємо службу перевірки один раз, коли програма запущена вперше. Потім ми генеруємо хеш 512 символів для ключа і збереженого значення, яке порівнюється з SharedPreferences звідти.
Тепер я знаю, що перевірка одного разу, ймовірно, там, де програма заблокована. Наш байт-код, швидше за все, був розглянений і перекомпільований без рядка, який ініціює перевірку.
Звідси я не хочу придушувати наш код, як я бачив його порушеним раніше. Я хочу чогось більш твердого, і я також хочу навчитися це правильно робити. Мені більше цікаво вчитися, ніж заробляти гроші на цьому етапі, оскільки лише 2% людей коли-небудь шукатиму зламану версію.
Поки що я самостійно придумав генератор випадкових чисел, який розміщується в декількох областях запуску гри. При ініціації (скажімо, 1 з 50 разів) перевіряється ліцензія. Я знаю, що це ускладнить злому, оскільки зловмисник повинен буде усунути кожен випадок, скласти, усунути, скласти. Однак цей метод все ще є складним ... так що ви, хлопці, пропонуєте? Знову ж таки, я дуже зацікавлений у цьому процесі безпеки, тому, будь ласка, навчайтеся, не перетворюйте це на дискусію про затуплення або періодичну перевірку на основі часової позначки.
Дякую