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

Защита apk

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

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

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

exe to apk
Здравствуйте форумчане!Интересует один вопрос,в программировании под андроид я не мастер,поэтому...

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

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

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

24
ILNAR_93
Android
243 / 240 / 52
Регистрация: 19.01.2013
Сообщений: 1,895
Записей в блоге: 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
2812 / 2236 / 754
Регистрация: 12.05.2014
Сообщений: 7,824
Завершенные тесты: 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
298 / 103 / 41
Регистрация: 02.12.2015
Сообщений: 247
22.09.2016, 16:59 6
от этого действительно полностью никак не защититься - если есть apk, то можно посмотреть как реализована отправка результатов, если там шифрование или цифровая подпись, то ключ всё равно на устройстве будет.

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

Если нужна серьёзная защита, то придётся с сервером в процессе игры соединятся и отправлять какие-то промежуточные результаты и данные хода игры, а на сервере проверять их корректность и согласованность (в том числе и по времени каждого события). Такое будет относительно сложно подделать.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 17:49  [ТС] 7
спасибо, есть над чем подумать.. грустно как-то, что так просто могут взломать или получить доступ к программе
0
androbro
349 / 307 / 70
Регистрация: 17.10.2014
Сообщений: 907
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
Сообщений: 402
22.09.2016, 22:33 11
Только алгоритмическим путем, через взаимодействие между приложением и сервером в режиме онлайн. Тогда можешь даже в открытый доступ выкладывать код приложения. Злоумышленник не будет знать определенных параметров, которые для каждого сеанса игры будет генерировать сервер. И еще проверка времени игры по часам сервера и сравнение с часами приложения.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
22.09.2016, 22:35  [ТС] 12
Окей. Может, если у тебя есть какой-то опыт в этом деле, посоветуешь, как правильно загуглить всю эту тему с библиотекой на С или может какую-то статью, если знаешь
0
Lumber
298 / 103 / 41
Регистрация: 02.12.2015
Сообщений: 247
22.09.2016, 23:44 13
Библиотека на Си ничего принципиально не изменит. В ней всего лишь несколько сложнее разобраться. Но можно и не разбираться, а просто вызвать экспортируемую функцию и получить нужный результат.
0
S4nchez
4 / 4 / 1
Регистрация: 25.08.2015
Сообщений: 56
23.09.2016, 00:11  [ТС] 14
а точно никак нельзя код С или С++ функции получить?
0
Lumber
298 / 103 / 41
Регистрация: 02.12.2015
Сообщений: 247
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
Сообщений: 402
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 - это обычный ZIP файл. Вопрос: Можно ли добавить внутрь...

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

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


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

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

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