Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Гугловская защита программ от кражи - Программирование Android

14.01.2016, 21:29. Просмотров 1364. Ответов 60
Метки нет (Все метки)

Кто знаком, КАК они защищают свои программы?

Я еще ничего не покупал у них и не продавал. Но хочу защитить свои программы хоть примитивно...

Знаю что ЛЮБУЮ бесплатную программу я могу на своем рутированном телефоне через ADB скачать на свой комп и раздать друзьям (или выложить на сайт).

Слышал что гугл встраивает некую защиту (которую тоже ломают, но уже сложнее). В чем она заключается? Где можно об этом почитать?
Как это связано (и связано ли) с ключем которые мне (должен) выдать гугл для встройки в программу перед компиляцией для плея?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2016, 21:29     Гугловская защита программ от кражи
Посмотрите здесь:
Android Защита apk
Защита контента Android
Защита приложения Android
Android Защита приложения
Защита файлов от копирования Android
Защита приложения на Андроиде Android
Android Защита от взлома с ndk
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
15.01.2016, 18:07     Гугловская защита программ от кражи #41
К imei ничего привязывать не нужно, хотябы потому, что его может не быть(123456..., 00000..., или вообще null ), а может быть сразу 2! Да, 2 и хрен поймешь при каких условиях они переключаются. Гугловской учетки тоже может не быть, да и вообще на практике убедился, что чего угодно очевидного может внезапно не быть.
Java
1
2
3
4
5
6
7
        ConnectivityManager conMgr = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
        if (activeNetwork != null && activeNetwork.isConnected()) {
                //даже этому коду не стоит доверять, интернет вполне может не работать
                }else{
                //а еще интереснее, что он может работать, из этой секции мне на сервер приходят репорты иногда
                }
Надежней всего банальная авторизация на сервере, после установки проги регистрируем пользователя и все. Не знает логин/пароль не работает софт, а учетку уже можно привязать к чему нибудь. Если нет imei сохраните какой-нибудь токен в конфиге(кстати SharedPreferences тоже может не работать)
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
15.01.2016, 19:14     Гугловская защита программ от кражи #42
Цитата Сообщение от DarkVortex Посмотреть сообщение
Гугловской учетки тоже может не быть
А я на таких устройствах вообще ничего не даю запускать т.к. там и гугл сервисов нет, а без них уже ниодно приложение более-менее крупное не обходится (у меня по крайней мере)
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
15.01.2016, 22:33     Гугловская защита программ от кражи #43
Цитата Сообщение от Spelcrawler Посмотреть сообщение
гугл сервисов нет, а без них уже ниодно приложение более-менее крупное не обходится (у меня по крайней мере)
ужас
_Night_Scream_
75 / 74 / 8
Регистрация: 08.08.2013
Сообщений: 581
15.01.2016, 22:36     Гугловская защита программ от кражи #44
Ну так какие выводы можно сделать из темы?
Гугл не спасает и работающих на 100% вариантов нет?
А мой вариант с mac адресами плох? (я знаю что он не на 100% но все же какие минусы?)
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
16.01.2016, 09:05     Гугловская защита программ от кражи #45
Спасает вариант когда Приложение зависит от функций лежащих на сервере и лицензируются учетные записи
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
16.01.2016, 18:55     Гугловская защита программ от кражи #46
Цитата Сообщение от vxg Посмотреть сообщение
ужас
Согласен, ужас. Но ничего не поделаешь карты, пуши и т.д. у меня почти везде, а в гугл сервисах их самая удобная реализация. Так что никуда от него не уйдешь.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
17.01.2016, 12:28  [ТС]     Гугловская защита программ от кражи #47
Цитата Сообщение от androbro Посмотреть сообщение
>>>можно как вариант для привязки к устройству использовать не маки, а ANDROID_ID
тоже штука не надежная, на китайцах так вообще ппц
Насколько я понял, это СОФТ-ключ! а не привязка к реальному оборудованию. Задается случайным образовм самой ОС при первом запуске. Слетает при перепрошивке (на своем телефоне убеждался). Неужели китайцы настолько "нарезают" стандартную ОС, что вырезают даже такое?

Я на сегодня в одном проекте использую связку ANDROID_ID+IMEI. Думаю лишь на крайне-китайских подобное может часто повторяться... Сейчас идет почти ручная активация по этой связке. Вчера доделал (стадия тестов) систему выдачи файла-ключа с сервера по этой связке. Это исключит случайные повторы на крайне-китайских телефонах. Файл-ключи конечно привязаны к ANDROID_ID+IMEI (чтобы на других не могли использовать). Возможно буду выдавать ключ только если программа подтвердила через сервер гугла что она куплена.

Сейчас идет вторая стадия - всю эту проверку выношу в NDK. Осталось выяснить НАДЕЖНОСТЬ NDK от взлома. Кто в курсе? Просветите пожалуйста! Насколько надежно там хранить код и строковые константы?
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
18.01.2016, 08:43     Гугловская защита программ от кражи #48
Если по теме то
Цитата Сообщение от Tester64 Посмотреть сообщение
КАК они защищают свои программы
они защищают только от публикования копий на плее (скорее всего не хотят засорять сервера),а до краж им плевать
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
18.01.2016, 08:55     Гугловская защита программ от кражи #49
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Tester64 Посмотреть сообщение
Гугл встраивает что-то в продаваемые программы "свое"?
Была куплена программа у vxg, результат - полностью идентична выкладываемой.
Теперь проверяется другое - возможность ее запуска (была скопирована apk) после возврата средств.
Как побочный эффект, обнаружено обнародование личных данных продавца (адрес, телефон) в полный публичный доступ. Недавно я мониторил эту тему, но то что еще телефон в открытом доступе, об этом не знал. Может отдельную тему создать для обсуждения сего?
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
18.01.2016, 09:51     Гугловская защита программ от кражи #50
Цитата Сообщение от Rube Посмотреть сообщение
возможность ее запуска (была скопирована apk) после возврата средств
не знаю как насчет запуска после возврата средств, но я спокойно устанавливал этот апк на телефон где эта программа вообще не покупалась ни разу и спокойно ее там запускал..
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
18.01.2016, 09:55     Гугловская защита программ от кражи #51
vxg, ну я и об чем толкую, т.е. можно купить программу, скопировать apk и нажать кнопку "отменить покупку" (или запросить возврат из своего кабинета). Если более нет никакой проверки (лицензии и т.п.) то так можно все покупки делать получается.
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
18.01.2016, 10:03     Гугловская защита программ от кражи #52
Цитата Сообщение от Rube Посмотреть сообщение
так можно все покупки делать получается
круто, гугл работает на массовку, которая не знает что такое apk
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
18.01.2016, 10:10     Гугловская защита программ от кражи #53
Цитата Сообщение от Valakin Посмотреть сообщение
круто, гугл работает на массовку, которая не знает что такое apk
на самом деле НЕмассовка должна отдавать себе отчет в том что:
-рутование телефона теоретически может иметь какие угодно последствия
-закачка на телефона бесплатного гуано с пиратский сайтов способно повредить вашему здоровью - не удивляйтесь если вместе с ожидаемым приложением вы получите 1001 рекламу или шпионское ПО или данные вашей карты или иных учетных записей окажутся у кого угодно
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
18.01.2016, 10:46     Гугловская защита программ от кражи #54
Цитата Сообщение от vxg Посмотреть сообщение
закачка на телефона бесплатного гуано с пиратский сайтов способно повредить вашему здоровью
круто, то есть и тут есть скрытая реклама приложений именно с их серверов, как раз благодаря тому что кто то переписывает приложения под своим именем
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
18.01.2016, 10:56     Гугловская защита программ от кражи #55
Цитата Сообщение от Valakin Посмотреть сообщение
круто, то есть и тут есть скрытая реклама приложений именно с их серверов, как раз благодаря тому что кто то переписывает приложения под своим именем
не сложно догадаться что если кто то на какие то деньги содержит сервер на котором выкладывает бесплатно платные приложения которые перед этим кто то за плату модифицировал то все это должно как то окупаться
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
18.01.2016, 11:33     Гугловская защита программ от кражи #56
vxg, это мы с вами можем догадаться. А обычные пользователи до сих пор думают что в интернете все на халяву должно быть, у них даже мыслей не возникает, что это труд миллионов людей. Они думают, что заплатил провайдеру 500р и все, все должно быть бесплатно и в лучшем виде, и в ближайшие годы так это и будет. На ошибках своих люди не учатся, ну украли у человека 8к со сбера, напишет он заявление и вернут, мозгов то не прибавится, снова закачает себе вирусов.

Добавлено через 18 минут
А как вариант защиты своего приложения от работы на устройствах где оно не куплено могу предложить следующую схему.
Создаем 2 проекта, в первом пишем основное приложение, в коде делаем несколько проверок вроде
Java
1
2
3
4
5
        TelephonyManager tm = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
        String IMEI = tm.getDeviceId();
        if(!IMEI.equals("{imei}")){
            //отсутствует лицензия
        }
Второй проект создаем для публикации в маркете, его задача загрузить первый (основной) проект с вашего сервера и подключить с помощью DexClassLoader.
Далее при покупке приложения в маркете регистрируем устройство на сервере по imei или еще чему-то, т.е. сервер будет 100% знать, что устройству с таким imei можно доверять. Теперь при первом запуске второй проект (из маркета) обращается к нашему серверу и передает ему свой imei, сервер сам компилирует первый проект заменяя в коде "{imei}" на imei устройства и вот мы получаем железно привязанную библиотеку которую мы подключаем с помощью reflection в первом проекте.
На производительности это никак не скажется, только на времени загрузки.
Конечно все эти проверки из основного приложения тоже можно вырезать, но гемор это будет лютый, а если еще и ndk задействовать, то ломать будут только при очень большом стимуле.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
18.01.2016, 11:50     Гугловская защита программ от кражи #57
Цитата Сообщение от DarkVortex Посмотреть сообщение
Конечно все эти проверки из основного приложения тоже можно вырезать, но гемор это будет лютый
Как по мне, так гемор это то, что вы описали, мутить сервер, несколько приложений для маркета - все это лишние движения. Имеется ввиду для программ класса нашего уровня разработчиков, которые кодят в свободное оставшееся время от основной занятости. А для групп разработчиков это и так очевидно.
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
18.01.2016, 12:16     Гугловская защита программ от кражи #58
Rube, а что там им защищать то тогда кроме собственной чести?)
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
18.01.2016, 13:15     Гугловская защита программ от кражи #59
Цитата Сообщение от DarkVortex Посмотреть сообщение
загрузить первый (основной) проект с вашего сервера
а чем загруженный с сервера код будет более защищенным от того что будет на плее (в котором есть лицензирование)?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2016, 13:26     Гугловская защита программ от кражи
Еще ссылки по теме:
Защита настроек от пользователя Android
Защита от удалённого видеонаблюдения, программ шпионов, кражи файлов. Выявление злоумышленника
Защита программы от кражи с сервера
C# Защита программ
Защита программ Delphi

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

Или воспользуйтесь поиском по форуму:
vxg
Модератор
3119 / 1921 / 208
Регистрация: 13.01.2012
Сообщений: 7,357
18.01.2016, 13:26     Гугловская защита программ от кражи #60
Цитата Сообщение от DarkVortex Посмотреть сообщение
Конечно все эти проверки из основного приложения тоже можно вырезать, но гемор это будет лютый
вырезать IMEI.equals("{imei}") ? не думаю что сложнее чем если бы "{imei}" грузился с инета в приложение скачанное с маркета
Yandex
Объявления
18.01.2016, 13:26     Гугловская защита программ от кражи
Ответ Создать тему
Опции темы

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