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 пока откладывается до лучших времен.

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

Сброс DRM защиты

Программу Leawo TunesCopy многие считают одной из самых лучших и простых для обхода DRM-ограничений. С помощью этого инструмента пользователь может брать напрокат или покупать видео (фильмы, ТВ-передачи) из медиакомбайна iTunes с возможностью удалить защиту DRM. Как вы знаете, купленные видео в iTunes Store нельзя проигрывать на других мобильных устройствах, кроме как iPhone, iPad, iPod или Apple TV, но Leawo TunesCopy позволяет исправить этот недочет.

Leawo TunesCopy не просто удаляет DRM-защиту, но при этом еще и конвертирует видеофайл, загруженный из iTunes в формате M4V, в привычное нам расширение MP4, которое воспроизводится практически на всех мобильных гаджетах. При этом вы не заметите потери качества файла ни с точки зрения звука, изображения и видео) — оно останется без изменений. Включена возможность выбирать звуковые дорожки и сохранять субтитры на выходе.

Конечно, Leawo TunesCopy — не единственная программа в своем роде, но ее преимущество еще и в том, что она выполняет сброс DRM-защиты в 50 раз быстрее альтернативного инструмента. А это очень важно, если у вас довольно богатая библиотека видеофайлов. Так, например, фильм продолжительностью в час может быть декодирован всего за несколько минут.

Программа Leawo TunesCopy для сброса DRM защиты имеет совместимость со всеми операционными системами Windows, что, безусловно, большой плюс для мобильных пользователей. Ее можно использовать на рабочей машине под управлением Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10. К сожалению, разработчики не включили поддержку Mac, но оно и понятно, почему.

Насколько сложно пользоваться Leawo TunesCopy? Даже если вы новичок, а не продвинутый пользователь, вы сможете освоить утилиту уже с первых минут. Программа имеет довольно простой и понятный пользовательский интерфейс, а также дополнена множеством опций, которые окажутся полезными.

Для начала вам необходимо скачать программу на свой компьютер и установить. После этого запускаем инструмент.

Шаг 1: Первое, что нужно сделать — добавить фильм из iTunes. Для этого необходимо использовать кнопку Add Files в панели меню, либо одноименную кнопку, которая находится в центре. После этого вам нужно выбрать видеофайл для покупки или напрокат, затем начать импорт файла в TunesCopy. К слову, программа позволяет импортировать сразу все файлы одновременно с помощью кнопки Add All.

Шаг 2: На этом шаге вам предстоит настроить параметры аудио и субтитров. Как только импорт файлов завершен, вы можете выбрать удалить ненужные из списка, либо очистить сразу все, либо вообще не применять это действие. Переходим к выбору нужного файла, с которого будет снимать DRM-ограничение. Нажимаем кнопку Edit, чтобы выбрать звуковые дорожки и сохранить субтитры.

Шаг 3: Найдите кнопку «…» в нижней части интерфейса, чтобы установить, где будет сохранен готовый файл.

Шаг 4: После того, как все настройки заданы, нажимаем на синюю кнопку Convert. Начнется процесс удаления DRM защиты и преобразования файла в формат MP4. Дождитесь, пока завершится преобразование файла.

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

Что такое DRM

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

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

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

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

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

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

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

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

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

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

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

Выводы

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

Все, кто имеет мобильное устройство на базе операционной системы Android знают, что для полноценного использования аппарата необходимо иметь аккаунт Google. Без своего аккаунта вы не зайдете в магазин Google Play, а также ряд других приложений, где он необходим. После совершения сброса настроек можно увидеть подобное сообщение «На устройстве восстановлены настройки по умолчанию. Чтобы продолжить, войдите в аккаунт Google» . Вам ничего другого не остается, как ввести данные для продолжения работы устройства. Но как быть, если по какой-либо причине вы забыли пароль или логин? Что делать в этой ситуации мы разберемся далее в статье.

Экран подтверждения аккаунта на устройстве Android

Сперва попробуем простой метод, прежде чем входить в аккаунт Гугл – это отключить интернет. Когда начнется проверка аккаунта в телефоне, выключите доступ в интернет, отключите Wi-Fi модуль, а также вытащите сим-карту из устройства. В некоторых моделях можно избежать подтверждения аккаунта.

Если вам этот метод не помог решить «На устройстве восстановлены настройки по умолчанию», необходимо добраться до настроек смартфона и оттуда выполнить сброс или восстановление. Сделать это можно несколькими способами, т.к. процессы входа в разных моделях совершается по-разному. Но самым действенным будет:

Действие 2. Удаляем DRM-лицензии в настройках смартфона

Еще один способ устранить «На устройстве восстановлены настройки по умолчанию. Чтобы продолжить, войдите в аккаунт Google» – это удалить DRM-лицензии, что равнозначно удалению аккаунта. Чтобы это сделать, нужно добраться до настроек смартфона. Для этого:


Вы можете посмотреть видео для лучшего усвоения материала:

Действие 3. Удалить аккаунт Google при помощи Development Settings

Не всегда получается применить предыдущий метод открыть настройки на смартфоне, поэтому можно воспользоваться следующим способом – при помощи программы Development Settings. Если кто-нибудь думает, что можно помочь убрать сообщение «Чтобы продолжить, войдите в аккаунт Google» перепрошивкой телефона, то это не так. Прошивка здесь тоже не поможет. Для того, чтобы воспользоваться программой, нам понадобиться OTG-кабель и флешка с разархивированной программой.

OTG-кабель
  1. Далее выключаем телефон.
  2. Подключаем OTG-кабель в соответствующий разъем.
  3. Теперь нужно сделать сброс устройства при помощи клавиш. У каждого устройства они свои. Комбинация кнопок для сброса к своему устройству найдите в инструкции к телефону или в интернете.
  4. Выберите пункт «Data factory reset» и включите телефон.
  5. Далее подтвердите установку программы, после чего откройте ее.
  6. Откроется окно с настройками телефоны, где мы должны отыскать пункт «Сброс до заводских настроек».
  7. Когда начнется процесс восстановления, вы можете отсоединить кабель с флешкой.

Действие 4. Удаляем аккаунт Google при помощи программы Quickshortcutmaker

В случае, если у вас есть возможность попасть в настройки через приложения:


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

Если ни один из способов не решил вашу проблему после восстановления настроек по умолчанию, то сообщение «На устройстве восстановлены настройки по умолчанию. Чтобы продолжить, войдите в аккаунт Google» можно решить, обратившись к Google Account Recovery из обычного браузера, можно даже без телефона.



Статьи по теме