Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
1

Защита apk

22.09.2016, 15:34. Просмотров 1029. Ответов 24
Метки нет (Все метки)

Есть игра, которую хочу выложить в плей маркет. В игре реализованы рекорды, которые хранятся на сервере. Что, если злоумышленник вытащит apk, из него прочитает код, найдёт адреса скриптов для взаимодействия с сервером для отправки рекордов и их получения и отправит напрямую свои рекорды без прохождения игры. Как этого избежать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2016, 15:34
Ответы с готовыми решениями:

Apk и БД
Программа работает с БД. Делаю apk - ставлю на планшет - устанавливаю....

Обфускация APK
Здравствуйте, подскажите как мне обфусцировать готовый apk, проекта нет....

Apk в exe
существуют ли подобные конвертеры? чтобы преобразовать apk в файл работающий...

Компиляция в APK
привет. есть исходник программы, выглядят вот так, ishodnik.sh и папка с...

Редактирование apk
Здравствуйте. Скажите пожалуйста программа используемая в HTC evo 3d для работы...

24
ILNAR_93
Android
237 / 237 / 49
Регистрация: 19.01.2013
Сообщений: 1,881
Записей в блоге: 3
22.09.2016, 15:54 2
Шифровать отправляемые рекорды известным только вам ключем и расшифровывать их на сервере.

Если расшифровка прошла успешно то все гуд и добавляете рекорд.

Принцип шифрования Winrar
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 15:59  [ТС] 3
А если я буду шифровать в приложении при помощи алгоритма, злоумышленник может повторить этот алгоритм, зашифровать свой рекорд и отправить свой зашифрованный рекорд на сервер
0
Pablito
2731 / 2166 / 735
Регистрация: 12.05.2014
Сообщений: 7,583
Завершенные тесты: 1
22.09.2016, 16:00 4
Цитата Сообщение от S4nchez Посмотреть сообщение
Как этого избежать?
никак, тему можно закрывать
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 16:02  [ТС] 5
лучший ответ. всё супер аргументировано и понятно, побольше бы таких людей)
0
Lumber
295 / 100 / 41
Регистрация: 02.12.2015
Сообщений: 241
22.09.2016, 16:59 6
от этого действительно полностью никак не защититься - если есть apk, то можно посмотреть как реализована отправка результатов, если там шифрование или цифровая подпись, то ключ всё равно на устройстве будет.

Можно только усложнять всю процедуру, в расчёте на то что злоумышленник не разберется как это работает. И обфускацию включить для затруднения восстановления кода.

Если нужна серьёзная защита, то придётся с сервером в процессе игры соединятся и отправлять какие-то промежуточные результаты и данные хода игры, а на сервере проверять их корректность и согласованность (в том числе и по времени каждого события). Такое будет относительно сложно подделать.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 17:49  [ТС] 7
спасибо, есть над чем подумать.. грустно как-то, что так просто могут взломать или получить доступ к программе
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
22.09.2016, 17:54 8
Цитата Сообщение от S4nchez Посмотреть сообщение
спасибо, есть над чем подумать.. грустно как-то, что так просто могут взломать или получить доступ к программе
имхо : грустно будет если будете месяц парится с защитой, выложите в google play, а скачает всего 100 человек...
вот наберете хотя бы пару тысяч установок(активных пользователей), тогда и заморачивайтесь защитой, а так пока "овчинка выделки не стоит"
0
R0
17 / 17 / 13
Регистрация: 06.08.2015
Сообщений: 73
22.09.2016, 20:42 9
Помоему можно написать алгоритм шифрования на Си, скомпилировать в статическую библиотеку, и подключить к проекту. Компилированный Си не вскроется.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 22:07  [ТС] 10
а саму это библиотеку злоумышленник стырить не сможет?
0
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 390
22.09.2016, 22:33 11
Только алгоритмическим путем, через взаимодействие между приложением и сервером в режиме онлайн. Тогда можешь даже в открытый доступ выкладывать код приложения. Злоумышленник не будет знать определенных параметров, которые для каждого сеанса игры будет генерировать сервер. И еще проверка времени игры по часам сервера и сравнение с часами приложения.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 22:35  [ТС] 12
Окей. Может, если у тебя есть какой-то опыт в этом деле, посоветуешь, как правильно загуглить всю эту тему с библиотекой на С или может какую-то статью, если знаешь
0
Lumber
295 / 100 / 41
Регистрация: 02.12.2015
Сообщений: 241
22.09.2016, 23:44 13
Библиотека на Си ничего принципиально не изменит. В ней всего лишь несколько сложнее разобраться. Но можно и не разбираться, а просто вызвать экспортируемую функцию и получить нужный результат.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
23.09.2016, 00:11  [ТС] 14
а точно никак нельзя код С или С++ функции получить?
0
Lumber
295 / 100 / 41
Регистрация: 02.12.2015
Сообщений: 241
23.09.2016, 00:13 15
Можно конечно. На ассемблере. (наверное и декомпиляторы какие-то есть, но и ассемблера достаточно).
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
23.09.2016, 00:18  [ТС] 16
просто реально какие-то ключевые моменты можно проводить на С или вызывать из них ключи, к примеру
0
klim76
20 / 14 / 2
Регистрация: 10.06.2016
Сообщений: 144
23.09.2016, 02:05 17
почему бы во время запуска игры не запросить с сервера "сеансовый" ключ, и заявку на рекорд принимать в паре с ним?
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
23.09.2016, 02:50  [ТС] 18
Очень не хочу делать игру, чтобы она зависела от интернета. А сами рекорды не очень важны, просто как дополнительный игровой элемент
0
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 390
23.09.2016, 06:58 19
Цитата Сообщение от S4nchez Посмотреть сообщение
Очень не хочу делать игру, чтобы она зависела от интернета. А сами рекорды не очень важны, просто как дополнительный игровой элемент
Вы уж определитесь в своих желаниях
В стартовом топике говорите о сервере, что подразумевает зависимость от интернета, и о важности защиты рекордов от мошенничества.
1
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
23.09.2016, 13:36  [ТС] 20
не, смотри: на сервер я посылаю только рекорды, когда это нужно. к примеру, когда пользователь захотел выложить свой рекорд
0
23.09.2016, 13:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2016, 13:36

проверка apk
Я извиняюсь за столь глупый вопрос, т.к являюсь молодым и зеленым в этом...

APK Android
Вот добрался аж до этого раздела, после долгих ожиданий ответа в ветке по...

Переупаковка APK
Гуру, подскажите! Насколько я понял, APK - это обычный ZIP файл. Вопрос:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru