Не так страшен DRM, как его малюют

    Когда сотрудник Ливерморской национальной лаборатории Эшер Лэнгтон купил в одном онлайн-магазине фильм, для которого требовался проприетарный видеопрогрыватель от компании Leaping Brain, у него возникли трудности с установкой плеера на iPhone. Пытаясь разобраться с проблемой, он обнаружил, что видео загрузилось в скрытую папку в виде набора обычных файлов формата .mov. Правда, ни один из них воспроизвести не удалось.

    Проприетарный плеер с DRM-защитой оказался скриптом-обёрткой на Python вокруг нескольких библиотек из проекта VLC. Код на Python совершал какие-то преобразования над файлом, прежде чем скормить его VLC. В FAQ на сайте Leaping Brain было сказано, что их плеер использует невероятно крутой криптографический алгоритм для реализации DRM:

    «Мы применяем проприетарный алгоритм шифрования BrainTrust при загрузке видео на свои серверы. Если даже кто-то и сможет получить доступ к вашему контенту, файлы не воспроизведутся и будут совершенно бесполезны, потому что они хранятся в зашифрованном виде. После загрузки на устройство пользователя проиграть файлы может только легальный пользователь и только через MOD Machine Player. Мы не знаем более надёжной схемы, чем эта. Windows Media DRM легко поддаётся взлому и работает только под Windows, тогда как BrainTrust практически невозможно взломать, и эта технология отлично работает под Windows 8, Vista, XP и Mac.»

    Расковыряв скрипт-обёртку, Эшер Лэнгтон сохранил обработанный файл и сравнил его с «зашифрованным». Оказалось, что неприступный алгоритм заключался в том, что в первых 15 килобайтах файла несколько начальных байтов каждого килобайтного блока были сXOR-ены с «секретным ключом», который представлял собой строку «RANDOM_STRING».

    Источник: блог Эшера Лэнгтона.

    P.S. Старая версия FAQ уже исчезла с официального сайта Leaping Brain. Но кэш гугла помнит!

    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 25
    • +21
      Вспомнился х/ф «Блеф» с Челентаной и Энтони Квином: но ты же поверил!
    • +6
      Перестарались с понтами.
      • 0
        А почему сначала статья была опубликована под именем alizar? Вроде в правилах запрещается заводить клонов.
        • +3
          Не сначала, а после. Ализар видимо увидел что уже опубликовали и убрал свою публикацию в черновики
          • +1
            Да, скорее всего, т.к. текст немного отличается.
            Извиняюсь за панику
            • +13
              Подтверждаю.
          • +19
            Нужно было 100 раз в цикле заксорить, чтобы наверняка.
            • +3
              Помню, на Спектруме так боролись с отладчиками — в цикле много-много раз XOR-или код программы. Внутрь заXORенного куска невозможно было поставить брэйкпойнт и приходилось вручную пошагово прокручивать цикл.
              • +1
                Хорошие защиты располагали зашифрованный блок кода сразу после цикла расшифровки, а расшифровывали от конца к началу, чтобы прокрутив вручную цикл несколько раз, байты после цикла не оказались расшифрованными и туда нельзя было поставить брейкпоинт.
                • +2
                  Ну там-то хоть нормальные защиты ксорили не строкой «RANDOM_STRING» а чем-то поинтереснее, примешивая регистр R и другие извращения.
                  • +2
                    Magic button на Скорпионе рулила
                • 0
                  Кстати, я несколько лет сам сталкивался с подобной «защитой» — какой-то образ CD был примерно так же тупо заXOR-ен, так что только родной виртуальный CD-ROM мог его распознать. Там, правда образ был «зашифрован» целиком, но зато одним байтом.
                  • 0
                    Мда, я сталкивался с такими методами когда работал в одной фирме (не буду называть, ясно дело), там через XOR строки «password» генерились сертификаты =)
                    • +17
                      А слоган у них в тему: «just a few bytes of brilliance»
                      • +5
                        Так слоган-то со знанием «дела» придумывали :)
                      • 0
                        да, понты дороже денег!
                        • +3
                          В свое время снимал защиту с WMA при помощи утилитки от самого мелкософта — graphedit, достаточно было приклеить свой муксер и схоронить файл.
                          • +22
                            Мне тут подумалось, тут есть два варианта

                            1. Талантливый индийский программист, слишком буквально воспринял фразу «XOR with a random string» в ТЗ.
                            2. Программист (не важно какой национальности) решил внести свою лепту в борьбу с копирастами.

                            Ну или трейти вариант, совсем уж фантастический:
                            Leaping Brain — это троли, решившие заработать бабла на доверчивых копирастах и заодно подорвать индустирую DRM изнутри.

                            Кстати в пользу второго (или третьего??) варианта говорит тот факт, что их питон-скрипт лицензирован под GPL, что фактически разрешает ломать DRM без всяких легальных последствий www.gnu.org/licenses/gpl-faq.html#DRMProhibited

                            • +6
                              По поводу первого варианта: http://xkcd.com/221/
                              • 0
                                Пока конкретный алгоритм не будет одобрен производителями и держателями контента для проигрывания оного в HD, никакого отношения к DRM индустрии любой «новый DRM» иметь не будет :(
                                • 0
                                  XOR with a random string — это в мемы!
                                • +1
                                  Просто процитированный кусок писали маркетологи.
                                  • +3
                                    >> Мы не знаем более надёжной схемы, чем эта.
                                    Тогда им даже не пришлось лгать!

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