Что будет если удалить все drm лицензии. DRM-защита: что это, как снять

Неотъемлемой частью любой программной платформы является ПО для неё. Для таких широко распространенных пользователе-ориентированных платформ, как Android, iOS, на первое место выходит удобство получения, установки и обновления прикладного ПО.

Дмитрий Гусев, Протекшен Технолоджи Ресеч

Неотъемлемой частью любой программной платформы является ПО для неё. Для таких широко распространенных пользователе-ориентированных платформ, как Android, iOS, на первое место выходит удобство получения, установки и обновления прикладного ПО. С этой целью держатели платформ встраивают в них развитую поддержку системы распространения контента. В случае Android основным таким провайдером контента служит Google Play (ранее назывался Android Marketplace). Google Play (GP) является посредником между производителем контента (авторами программ или аудиовизуальных произведений) и конечными потребителями (пользователями устройств.) Так как значительная часть подобного контента подразумевает его оплату потребителем, провайдер и производители используют ту или иную систему DRM для контроля распространения контента.

В статье рассмотрены пять наиболее популярных в мире решений для защиты мобильного ПО и контента от взлома и нелегального распространения. В силу того, что статья подготовлена специалистом компании Протекшен Технолоджи Ресеч (StarForce), которая выпускает собственное DRM решение для защиты приложений под Андроид, названия рассматриваемых решений изменены на условные. Решение StarForce в статье не рассматривается.

Основная цель статьи - предоставить разработчикам первоначальные сведения об уровне защиты приложений и возможностям лицензирования в существующих на рынке популярных сервисах защиты.

Базовые сведения о платформе Android

Android - достаточно открытая платформа. Большинство версий Android позволяют записывать на устройство и запускать программы из произвольных источников. Таким образом, Google Play не является монопольным провайдером контента (в отличии от iOS, где приложение на типичное устройство можно установить только из Apple App Store после прохождения процедуры сертификации.) Это позволяет одновременно сосуществовать нескольким провайдерам контента (и даже независимым разработчикам) с собственными системами DRM.

Приложения под Android представляют собой самодостаточные файлы-контейнеры с расширением.apk.

Android_DRM_1

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

Таким образом, единожды купленное приложение в общем случае можно беспрепятственно скопировать на различные устройства или распространять иным образом.

Для контроля за использованием контента и предотвращения его несанкционированного использования Android_DRM_1 предлагает Программную Библиотеку, которая позволяет запросить у Android_DRM_1 информацию о факте приобретения приложения с текущего пользовательского аккаунта.

Условно, данная DRM представляет собой обычную функцию, которая возвращает одно из трёх значений:

  • Лицензировано - приложение лицензировано для данного аккаунта и может быть запущено
  • Не Лицензировано - приложение не лицензировано для данного аккаунта и его запуск нежелателен
  • Ошибка - проверка лицензии недоступна (например, нет сетевого соединения)

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

Программная Библиотека Android_DRM_1 допускает (хотя и настоятельно не рекомендует) привязку программы к конкретному устройству, но она должна быть реализована разработчиком самостоятельно. В документации предлагается использовать сторонний сервер (разработчика/издателя), который бы вёл базу регистрационный-идентификатор - идентификатор-устройства. Способы получения уникального идентификатора устройства также предлагается разработать самому.

Таким образом, Программная Библиотека Android_DRM_1 - это отдельная высокоуровневая компонента, которую разработчик должен самостоятельно встроить в приложение и реализовать необходимую логику. Программная Библиотека Android_DRM_1 не предоставляет какой-либо непосредственной защиты кода приложения и самой себя. Реализация DRM выполнена на Java, поставляется в виде исходного кода и может быть легко декомпилирована, изучена и модифицирована для преодоления лицензионных ограничений. Производитель Android_DRM_1 рекомендует использовать сторонние средства для защиты кода.

Взломостойкость Android_DRM_1

  • В сети существует как минимум один общедоступный проект по автоматическому поиску кода Программной Библиотеки Android_DRM_1 в.apk файлах и его нейтрализации.

Android_DRM_2

Является собственным решением сетевого магазина, продающего приложения под Android. Основной принцип работы системы идентичен Android_DRM_1 (приложение проверяет факт покупки на удалённом сервере), однако, в отличии от Программной Библиотеки Android_DRM_1 процесс встраивания DRM в приложение автоматизирован. Разработчик/издатель просто закачивает своё готовое приложение на сервер сетевого магазина и в него автоматически встраивается модуль защиты.

При защите приложения к нему добавляются дополнительные классы, осуществляющие DRM-функционал. Готовый код приложения разбирается и в него (скорее всего автоматически) встраиваются вызовы функций проверки из этих классов. Судя по отзывам разработчиков, это не всегда работает корректно и в некоторых случаях приложение может "упасть" с ошибкой верификации в JVM.

Взломостойкость Android_DRM_2

Поскольку такой тип защиты встраивается в приложение без глубокой интеграции с его кодом, защиту так же несложно нейтрализовать модификацией кода. Это можно сделать проделав операции обратные установке - разобрать код приложения, найти вызовы защиты и удалить их. Ещё более простой способ - просто отключить проверки в ядре защиты или заменить его целиком "пустышкой".

Android_DRM_3

Android_DRM_3представляет собой упрощённую альтернативу Android_DRM_1 и Android_DRM_2.

В отличии от Android_DRM_1, для покупки приложения не требуется иметь установленным на конечном устройстве приложение-магазин. Покупка осуществляется непосредственно с web-страницы Android_DRM_3. При покупке пользователь сразу производит оплату через PayPal или GoogleCheckout и получает персональную ссылку для скачивания приложения. Никакой модификации готового приложения не требуется.

Другой предоставляемый сервис - Программная Библиотека Android_DRM_3. Она является альтернативой Программной Библиотеки Android_DRM_1. При покупке приложения (способом, описанным выше, или, например, через сайт другого провайдера) пользователь также получает на электронную почту активационный ключ. При запуске приложения пользователь должен активировать его, введя этот активационный ключ. Проверка ключа осуществляется на сервере Android_DRM_3. Система крайне проста и поставляется с исходным кодом.

Взломостойкость Android_DRM_3

  • Поскольку никакой специальной защиты кода система не использует, её достаточно легко изучить и нейтрализовать модификацией приложения.

Android_DRM_4

Android_DRM_4 представляет собой встраиваемую библиотеку DRM и серверную часть. Функционально Android_DRM_4 повторяет Android_DRM_3 - при покупке приложения через сетевой магазин или иную систему распространения, в базе данных на серверной части заводится уникальный аккаунт покупки. Одновременно с этим покупатель получает от сервера письмо с кодом активации приложения. При запуске защищённого приложения пользователь вводит этот код, он сравнивается с зарегистрированным на сервере и, при совпадении, приложение успешно запускается. В отличии от Android_DRM_3, при развёртывании этой системы потребуется отдельный сервер, чтобы содержать на нём серверную часть защиты.

Система поставляется с открытым кодом по лицензии GNU GPL2.

Взломостойкость Android_DRM_4

  • Поскольку никакой специальной защиты кода система не использует, её достаточно легко изучить и нейтрализовать модификацией приложения.
  • Проверка ключа осуществляется через незашифрованный канал, возможно использовать proxy-сервер для обмана защиты.

Android_DRM_5

Компания, производящая Android_DRM_5 производит широкий спектр продуктов для защиты кода приложений и обеспечения DRM-функционала. К сожалению, ни одного "живого" приложения, защищенного Android_DRM_5найти не удалось, поэтому дальнейшая информация базируется на пресс-материалах разработчиков.

  • Android_DRM_5защищает только код приложения. DRM-функционал не предоставляется.
  • Осуществляет защиту только Native-части кода приложений. Этот код должен быть написан на C/C++. Java не поддерживается.
  • Защита в полуавтоматическом режиме встраивается в исходный код.
  • Исходный код обрабатывается с помощью Clang + LLVM в промежуточный байткод, к которому применяются последующие шаги по обфускации/чексуммированию/и т.д., на выходе получается стандартный объектный файл. После линковки приложение ещё раз обрабатывается (вероятно для расстановки и вычисления контрольных сумм).
  • Идеология защиты построена на встраивании в функции программы специальных маркеров, которые могут выполнять следующие действия:
    • Обфускация кода функции (перемешивание, замусоривание, и т.д.);
    • Определение наличия отладчиков;
    • Проверка целостности приложения;
    • Восстановление кода приложения (борьба с патчами);
    • При последующей обработке исходного кода эти маркеры трансформируются в код защиты;
    • Пакет работает только на Linux и MacOS.

Исходя из вышеперечисленного, можно сделать вывод, что данный продукт позиционируется как средство защиты кода программ от анализа и модификации.

Взломостойкость Android_DRM_5

Как уже говорилось выше, не удалось обнаружить ни одного защищенного приложения, для оценки взломостойкости.

Сравнительная таблица систем DRM

* Сам код не защищается, но в него встраиваются многочисленные вызовы ядра защиты.

Заключение

Все рассмотренные решения предлагают примерно схожий функционал. Кроме, пожалуй, Android_DRM_5, которое исключительно защищает код мобильного приложения от анализа и взлома и не предлагает каких-то опций по лицензированию.

Очевидно, что на данный момент, среди наиболее популярных решений на рынке не присутствует ни одной сколько-нибудь надежной защиты приложений от пиратства для платформы Android. Взломать такую защиту не составит труда хакеру средней руки. Поэтому борьба с пиратством на платформе Android пока откладывается до лучших времен.

Digital Rights Management (DRM) лицензия — это инструмент, который позволяет правообладателю контролировать доступ, препятствовать незаконному копированию и распространению своего программного обеспечения. Взломать цифровой код для большинства людей будет задачей не посильной. Поэтому у многих пользователей вполне логично возникает вопрос: как можно сделать сброс DRM лицензий Android и что это такое?

DRM — это аббревиатура от Digital Rights Management,что в переводе означает «управление цифровыми правами». Оно реализуется через внедрение разработчиком в программное обеспечение различных технических средств, которые не дают возможность ним незаконно распоряжаться. В результате, человек скачавший продукт может использовать его лишь в своих личных целях, без возможности копирования и передачи другим пользователям. DRM лицензия представляет собой цифровой замок, необходимый ключ к которому находится у разработчика, он же — правообладатель этого программного обеспечения.

При создании такого цифрового кода используются различные математические алгоритмы, называемые криптоалгоритмами. Не будем вдаваться в подробности и объяснять что такое криптоалгоритм, а лишь отметим, что взломать DRM лицензию весьма тяжело. Наиболее распространенная схема реализации этой технологии на Андроид выглядит следующим образом:

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

Покупка премиум продукта и является приобретением DRM лицензции на выбранное приложение. Кроме приведенной схемы, могут встречаться и другие примеры реализации защиты авторских прав на Андроид устройствах.
Ознакомиться с тем, что такое DRM лицензия на Андроид, можно просмотрев видеоролик, представленный ниже.

Сброс DRM лицензий

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

Для вашего мобильника, работающего под управлением ОС Андроид, сброс DRM лицензии можно провести и не используя хакерские программы. Для этого достаточно сделать следующее:

  • Перейти к главному меню настроек смартфона, через выдвижную шторку или с главного экрана.
  • Выбрать вкладку «Восстановление и сброс». В Андроид 5 и выше она находится под вкладкой с учетными записями.
  • Нажать на строчку «Сброс DRM(DRMreset)».

Использовать эту возможность следует весьма осторожно, особенно если вы не знаете что будет при сбросе DRM лицензии. Дело в том, что после проделанных действий пользователь может потерять доступ к определенным возможностям и функциям уже установленных в памяти приложений. Также некоторые фирменные предустановленные программы, которые присутствуют в телефонах от Samsung и Sony, могут попросту перестать работать. Но в остальном, функциональность и персонализация телефона никаким образом не пострадает. Обычный сброс настроек до заводских, который можно найти во вкладке «Восстановление и сброс», не приведет к удалению DRM лицензий.

Как снять DRM-защиту

В последнее время многие разработчики программного обеспечения на Андроид постоянно сталкиваются с протестами пользователей относительно неудобств цифровой лицензии. Тем не менее, во многих продуктах, в том числе мобильных приложениях, мультимедийных файлах и т.д., она до сих пор используется. Рассмотрим основные методы, которые позволяют снять «цифровой замок» Digital Rights Management с наиболее распространенных типов файлов:

  • Использование специализированных утилит. К примеру, бесплатные программы «DRM Media Converter» или «DRM Removal» умеют обходить и деактивировать DRM защиту с многих популярных типов файлов. К ним относятся документы с расширениями: .WMV, .M4B, .M4V, .ASF и многие другие.
  • Преобразование файлов, защищенных цифровой лицензией с помощью конверторов. К таким программам относятся: Digital Music Converter, Sound Taxi, Note Burner, а также многие другие, которые можно найти на просторах интернета. Не смотря на то, что они применяются лишь для узкого круга расширений, после преобразования вы получите абсолютно «чистый файл».
  • Использование CD и DWD дисков. Файлы с расширением WMV и WMA можно легко и просто избавить от цифровой защиты, если под рукой есть компьютер и чистая болванка. Достаточно записать WMA на СD, а WMV на DVD, а после этого скопировать их обратно на ПК. После этого DRM лицензия с них будет снята.

Интерфейс утилиты для снятия DRM защиты

Отметим, что во многих случаях, можно найти бесплатную для использования альтернативу защищенному DRM софту. Также, покупая платную версию продукта у разработчиков, вы гарантируете себе возможность использования всех функций и возможностей ПО.

В этом уроке покажу как настроить андроид на примере телефона Philips Xenium W3568. В этой статье расскажу про остальные пункты меню, а также как включить пункт для разработчиков.

Переходим к данным о местоположении.

Во вкладке данные о местоположении можно включить доступ к моим геоданным и разрешить приложениям использовать данные о вашем местоположении. Можно выбрать источники данных о местоположении по спутникам GPS. Также установить по координатам сети, то есть разрешать отправлять анонимные геоданные и позволить приложениям определять ваше местоположение с помощью Wi-Fi и мобильных сетей.

Во вкладке безопасность можно установить блокировку экрана, по умолчанию стоит провести пальцем, но рекомендую установить тип блокировки посерьезнее и надежнее.

Можно выбрать тип блокировки: разблокировку голосом, графический ключ, PIN-код, пароль. Я выберу графический ключ.

Теперь создайте графический ключ начертив рисунок линиями.

Я нарисовал букву М. Нажимаем продолжить.

Для подтверждения начертите графический ключ повторно. Затем нажмите подтвердить.

Также во вкладке безопасность можно установить автоблокировку через определенное количество времени. Вначале отключается дисплей и потом включается автоблокировка. Можно установить отключение дисплея 2 минуты и автоблокировку сделать через 2 минуты. Таким образом как только экран погаснет включится блокировка экрана, то есть, чтобы войти в смартфон надо будет нарисовать графический ключ, который создали мы ранее.

Также можно зашифровать данные. Запрос числового PIN-кода или пароля для дешифрования при каждом включении телефона. Настроить блокировку экрана.

Во вкладке безопасность можно установить администраторов устройств, чтобы удаленно блокировать и стирать информацию со смартфона, на тот случай, если ваш смартфон украли и вы не хотите, чтобы вор получил доступ к вашим данным на смартфоне.

Нажимаем активировать, чтобы включить возможность удалить все данные на телефоне путем сброса настроек. Также, чтобы изменять пароль для снятия блокировки экрана. Блокировать экран.

Включить или отключить установку приложений из неизвестных источников . По умолчанию приложения вы можете устанавливать только из Play Market, но если включить «неизвестные источники», то приложения можно будет устанавливать и с SD-карты и из интернета. Для безопасности включайте эту галочку только, когда хотите установить приложения с SD-карты и отключайте после того, как установили. Оставлять включенной эту опцию не надо, чтобы лазаю по интернету вам случайно не установили какое-нибудь вредоносное приложение.

Также держите включенным галочку на пункте «проверять приложения», чтобы запрещать установку приложений, которые могут нанести вред устройству, или предупреждать о них.

Во вкладке язык и ввод можно выбрать язык интерфейса, включить проверку правописания, TouchPal клавиатуру (позволяет водить по буквам и ускоряет набор букв).

Во вкладке восстановление и сброс можно сохранять резервные копии данных приложений, паролей точек доступа Wi-Fi и настроек на серверах Google. Установить резервный аккаунт с резервными копиями данных. Установить автовосстановление, при переустановке приложения восстановить резервную копию настроек и данных. Сделать сброс DRM, то есть удалить все DRM-лицензии.

Также здесь можно сбросить настройки смартфона . Удалить все данные со смартфона и сделать смартфон, как из магазина.

При сбросе настроек будут удалены все данные из внутренней памяти устройства, в том числе: Ваш аккаунт Google, настройки/данные системы и приложений, загруженные приложения.

Во вкладке аккаунты Google можно синхронизировать и переносить данные с вашего смартфона на аккаунт Google.

Можно переносить на аккаунт Google ваши письма из почтового ящика, данные из браузера, данные приложений, календарь, контакты. Таким образом, когда вы смените свой смартфон на другой достаточно будет использовать тот же аккаунт Google, что и на прошлом устройстве, чтобы перенести все ваши контакты со старого смартфона на новы й.

Во вкладке дата и время можно установить дату и время вручную или попробовать использовать часовой пояс сети (но эта фигня не работает, поэтому рекомендую устанавливать дату и время вручную).

Во вкладке расписание включения и выключения можно установить когда смартфон будет включаться и когда выключаться (например, на ночь можно сделать автоматическое выключение и утром включение).

Во вкладке специальные возможности можно настроить жесты для увеличения, крупный текст, автоповорот экрана, озвучивать пароли.

DRM – инструмент защиты интеллектуальной собственности, позволяющий правообладателю контролировать доступ, препятствуя несанкционированному копированию и распространению софта. Технология используется на разных продуктах, в том числе мобильных ОС, поэтому у пользователей периодически возникает вопрос, что такое сброс DRM лицензии на Андроиде.

Что такое DRM

DRM – это аббревиатура Digital Rights Management, которое можно перевести как «управлении цифровыми правами». Управление реализуется посредством помещения в продукт различных технических средств, которые препятствуют незаконному распоряжению софтом. Собственник может использовать защищенный продукт только в личных целях, скопировать его и продать у него не получится. По сути, DRM – это своеобразный цифровой замок, ключ к которому необходимо приобретать у правообладателя.

Ключ DRM для получения доступа представлен в виде кода, при создании которого используются криптоалгоритмы. Взломать его очень тяжело, а получить можно только после покупки цифрового продукта с лицензией. На Android технология часто реализуется следующим образом:

  1. Человек покупает новое устройство, в которое производитель предустанавливает определенное программное обеспечение.
  2. После включения и активации девайса ПО начинает работать бесплатно в демо-режиме. По истечении пробного периода приложение перестает функционировать, требуя приобретения лицензии.

Покупка доступа к полноценной версии софта и есть элемент DRM. Это лишь один из возможных вариантов, встречаются и другие примеры защиты авторского права.

Процедура сброса DRM отличается в зависимости от того, на что распространяется лицензия. Например, с помощью хакерского софта можно обнулить счетчик запуска программ, отвязать файлы от сайта, выключить проверку ключа и выполнить другие действия по отвязке лицензии. Что касается Android, то здесь сброс можно осуществить и без хакерского софта.

Использовать эту функцию нужно крайне осторожно, потому что после сброса лицензии вы можете потерять доступ к отдельным возможностям продукта. Ключи DRM нужны для работы специальных приложений от производителя телефона. Такие программы вы можете найти на устройствах Sony, Samsung и т.д. После сброса ключа фирменные приложения могут перестать работать, однако в остальном функциональность телефона останется на прежнем уровне.

Со отказ от лицензии ничего общего не имеет. Если при откате настроек с телефона удаляются все приложения, установленные пользователем, а также личные данные, то удаление лицензии приводит лишь к отключению встроенного производителем софта.

Если вы хотите узнать, какие требования предъявляют разные приложения, какие программы заденет удаление лицензий, поддерживаются ли на девайсе технологии, которые нужны для нормального функционирования сервисов, то установите на мобильное устройство DRM Info. Приложение выводит информацию о компонентах DRM, заодно указывая, поддерживаются ли они на девайсах.
Зачем нужны эти сведения? Чтобы понять, стоит ли покупать премиум-аккаунты или приложения с лицензиями. Например, для воспроизведения на Netflix видео в качестве Full HD и 4K требуется 1 уровень Google Widevine. Большинство же устройств поставляется с третьим уровнем, соответственно, нет смысла тратить деньги на премиум-аккаунт, потому что никакого улучшения качества не будет – девайс не поддерживает нужные технологии.

Некоторые пользователи телефонов сталкиваются с непонятными настройками меню своих устройств. Одна из таких - «Сброс DRM-лицензий» Android. Что это за процесс и необходим ли он, рассказано в этой статье.

Что такое DRM

Digital Right Management (в русской версии - «Технические средства защиты авторских прав») - технология, дающая возможность авторам защитить свои цифровые продукты от пиратства. В случае с Android - это приложения.

Процесс защиты осуществляется через введение программистом в ПО некоторых технических средств, которые предотвращают незаконное использование. В итоге, человек использует ПО только для личных нужд и не может копировать или передавать его другим людям.

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

Важно! Взлом или обход DRM-защиты является нарушением закона и влечет за собой гражданско-правовую и административную ответственность в большинстве стран.

Принцип работы технологии:

  1. Человек приобретает смартфон или планшет, где установлено (помимо ОС) специальное ПО от разработчика.
  2. После включения и активации устройства, предустановленные программы работают в демонстрационном режиме на ограниченный срок (неделя, месяц). По его истечению ПО перестает функционировать и предлагает приобрести полную версию и DRM-лицензию на нее.

Сброс лицензий

Основная цель функции сброса - отказ от использования приобретенного ПО.

Важно! Hard reset системы не влияет на приобретенные лицензии, а удаление последних не сказывается на работоспособности ОС, но запретит использование программ, защищенных технологией DRM.

После этого перезагрузите устройство, если это затронуло предустановленные приложения.

Обратите внимание! На текущий момент DRM теряет свою актуальность ввиду несовершенства защиты. В Android 6 и выше функция сброса отсутствует.

Выводы

DRM-лицензия является правом использования полной версии программного обеспечения, которое приобретается у его правообладателя. Функция сброса лицензий позволяет отказаться от такого ПО без последствий для работоспособности Android.