Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518

Гугловская защита программ от кражи

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

Студворк — интернет-сервис помощи студентам
Кто знаком, КАК они защищают свои программы?

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

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

Слышал что гугл встраивает некую защиту (которую тоже ломают, но уже сложнее). В чем она заключается? Где можно об этом почитать?
Как это связано (и связано ли) с ключем которые мне (должен) выдать гугл для встройки в программу перед компиляцией для плея?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.01.2016, 21:29
Ответы с готовыми решениями:

Защита от удалённого видеонаблюдения, программ шпионов, кражи файлов. Выявление злоумышленника
Всем доброго времени суток! При общении с некой личностью стала подозревать,точнее эта личность намекнула на определение моего IP,кражи с...

Защита программы от кражи
Добрый день, проконсультируйте плиииз. Ваше Да/Нет спасет меня от сотни часов вычитывания доков... Во всех доках по безопасности...

Защита программы от кражи с сервера
Обращаюсь за помощью специалистов (если задуманное возможно, то, естественно, оплачиваемой). Сразу уточню: я в данной сфере ноль....

60
103 / 69 / 19
Регистрация: 07.07.2014
Сообщений: 240
15.01.2016, 18:07
Студворк — интернет-сервис помощи студентам
К 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 тоже может не работать)
0
535 / 504 / 114
Регистрация: 12.03.2014
Сообщений: 1,671
15.01.2016, 19:14
Цитата Сообщение от DarkVortex Посмотреть сообщение
Гугловской учетки тоже может не быть
А я на таких устройствах вообще ничего не даю запускать т.к. там и гугл сервисов нет, а без них уже ниодно приложение более-менее крупное не обходится (у меня по крайней мере)
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
15.01.2016, 22:33
Цитата Сообщение от Spelcrawler Посмотреть сообщение
гугл сервисов нет, а без них уже ниодно приложение более-менее крупное не обходится (у меня по крайней мере)
ужас
0
91 / 86 / 12
Регистрация: 08.08.2013
Сообщений: 667
15.01.2016, 22:36
Ну так какие выводы можно сделать из темы?
Гугл не спасает и работающих на 100% вариантов нет?
А мой вариант с mac адресами плох? (я знаю что он не на 100% но все же какие минусы?)
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
16.01.2016, 09:05
Спасает вариант когда Приложение зависит от функций лежащих на сервере и лицензируются учетные записи
0
535 / 504 / 114
Регистрация: 12.03.2014
Сообщений: 1,671
16.01.2016, 18:55
Цитата Сообщение от vxg Посмотреть сообщение
ужас
Согласен, ужас. Но ничего не поделаешь карты, пуши и т.д. у меня почти везде, а в гугл сервисах их самая удобная реализация. Так что никуда от него не уйдешь.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
17.01.2016, 12:28  [ТС]
Цитата Сообщение от androbro Посмотреть сообщение
>>>можно как вариант для привязки к устройству использовать не маки, а ANDROID_ID
тоже штука не надежная, на китайцах так вообще ппц
Насколько я понял, это СОФТ-ключ! а не привязка к реальному оборудованию. Задается случайным образовм самой ОС при первом запуске. Слетает при перепрошивке (на своем телефоне убеждался). Неужели китайцы настолько "нарезают" стандартную ОС, что вырезают даже такое?

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

Сейчас идет вторая стадия - всю эту проверку выношу в NDK. Осталось выяснить НАДЕЖНОСТЬ NDK от взлома. Кто в курсе? Просветите пожалуйста! Насколько надежно там хранить код и строковые константы?
0
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
18.01.2016, 08:43
Если по теме то
Цитата Сообщение от Tester64 Посмотреть сообщение
КАК они защищают свои программы
они защищают только от публикования копий на плее (скорее всего не хотят засорять сервера),а до краж им плевать
0
914 / 562 / 88
Регистрация: 13.02.2014
Сообщений: 2,083
18.01.2016, 08:55
Лучший ответ Сообщение было отмечено vxg как решение

Решение

Цитата Сообщение от Tester64 Посмотреть сообщение
Гугл встраивает что-то в продаваемые программы "свое"?
Была куплена программа у vxg, результат - полностью идентична выкладываемой.
Теперь проверяется другое - возможность ее запуска (была скопирована apk) после возврата средств.
Как побочный эффект, обнаружено обнародование личных данных продавца (адрес, телефон) в полный публичный доступ. Недавно я мониторил эту тему, но то что еще телефон в открытом доступе, об этом не знал. Может отдельную тему создать для обсуждения сего?
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
18.01.2016, 09:51
Цитата Сообщение от Rube Посмотреть сообщение
возможность ее запуска (была скопирована apk) после возврата средств
не знаю как насчет запуска после возврата средств, но я спокойно устанавливал этот апк на телефон где эта программа вообще не покупалась ни разу и спокойно ее там запускал..
0
914 / 562 / 88
Регистрация: 13.02.2014
Сообщений: 2,083
18.01.2016, 09:55
vxg, ну я и об чем толкую, т.е. можно купить программу, скопировать apk и нажать кнопку "отменить покупку" (или запросить возврат из своего кабинета). Если более нет никакой проверки (лицензии и т.п.) то так можно все покупки делать получается.
1
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
18.01.2016, 10:03
Цитата Сообщение от Rube Посмотреть сообщение
так можно все покупки делать получается
круто, гугл работает на массовку, которая не знает что такое apk
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
18.01.2016, 10:10
Цитата Сообщение от Valakin Посмотреть сообщение
круто, гугл работает на массовку, которая не знает что такое apk
на самом деле НЕмассовка должна отдавать себе отчет в том что:
-рутование телефона теоретически может иметь какие угодно последствия
-закачка на телефона бесплатного гуано с пиратский сайтов способно повредить вашему здоровью - не удивляйтесь если вместе с ожидаемым приложением вы получите 1001 рекламу или шпионское ПО или данные вашей карты или иных учетных записей окажутся у кого угодно
0
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
18.01.2016, 10:46
Цитата Сообщение от vxg Посмотреть сообщение
закачка на телефона бесплатного гуано с пиратский сайтов способно повредить вашему здоровью
круто, то есть и тут есть скрытая реклама приложений именно с их серверов, как раз благодаря тому что кто то переписывает приложения под своим именем
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
18.01.2016, 10:56
Цитата Сообщение от Valakin Посмотреть сообщение
круто, то есть и тут есть скрытая реклама приложений именно с их серверов, как раз благодаря тому что кто то переписывает приложения под своим именем
не сложно догадаться что если кто то на какие то деньги содержит сервер на котором выкладывает бесплатно платные приложения которые перед этим кто то за плату модифицировал то все это должно как то окупаться
0
103 / 69 / 19
Регистрация: 07.07.2014
Сообщений: 240
18.01.2016, 11:33
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 задействовать, то ломать будут только при очень большом стимуле.
2
914 / 562 / 88
Регистрация: 13.02.2014
Сообщений: 2,083
18.01.2016, 11:50
Цитата Сообщение от DarkVortex Посмотреть сообщение
Конечно все эти проверки из основного приложения тоже можно вырезать, но гемор это будет лютый
Как по мне, так гемор это то, что вы описали, мутить сервер, несколько приложений для маркета - все это лишние движения. Имеется ввиду для программ класса нашего уровня разработчиков, которые кодят в свободное оставшееся время от основной занятости. А для групп разработчиков это и так очевидно.
0
103 / 69 / 19
Регистрация: 07.07.2014
Сообщений: 240
18.01.2016, 12:16
Rube, а что там им защищать то тогда кроме собственной чести?)
0
 Аватар для Valakin
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
18.01.2016, 13:15
Цитата Сообщение от DarkVortex Посмотреть сообщение
загрузить первый (основной) проект с вашего сервера
а чем загруженный с сервера код будет более защищенным от того что будет на плее (в котором есть лицензирование)?
0
Модератор
 Аватар для vxg
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,473
18.01.2016, 13:26
Цитата Сообщение от DarkVortex Посмотреть сообщение
Конечно все эти проверки из основного приложения тоже можно вырезать, но гемор это будет лютый
вырезать IMEI.equals("{imei}") ? не думаю что сложнее чем если бы "{imei}" грузился с инета в приложение скачанное с маркета
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.01.2016, 13:26

Хрень какая-то гугловская
Сегодня обнаружил в Гугле site:a1print.net , что у меня есть страница /?q=Save+Us+From+Berlusconi, хотя такой страницы у меня никогда не...

Защита программ
Изменилось ли сейчас что-нибудь в этом направлении? Можно ли защитить свою программу и скрыть исходный код, чтобы в нем не копались?...

Защита программ
Заинтересовался защитой программ сделанных на делфи. Видел, что многие программы так и делают. Например при включении программы Cheat...

Защита shareware-программ.
У вас на форуме уже как-то поднимался этот вопрос, но все-равно привязка к номеру жесткого - не самый лучший выход. Другое дело - номер...

Защита современный программ
Приветствую. Сегодня слушал о печальной судьбе PC как игровой платформы из-за разгула пиратства. Самая большая проблема состоит в том,...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru