Сегодня мы продолжаем серию публикаций мастер-классов наших образовательных проектов и представляем вашему вниманию пост по мотивам выступлений Дмитрия Склярова, которые он давал в Техносфере и Технотреке.
Тема выступления – Управление цифровыми правами.
Посмотрите видео выступления на IT.MAIL.RU , и следует текст. Идея этого доклада родилась из выступления, которое я провел на DEFCON в 2001 году, после которого у меня и компании, в которой я работал (ElcomSoft), возникли некоторые юридические сложности.
Через 1,5 года после этого выступления в США состоялся суд, в результате которого компания была признана невиновной по всем пяти пунктам обвинения, однако история была достаточно громкой.
Спустя годы я решил сделать новую версию этого отчета, добавив информацию о новых тенденциях в области управления цифровыми правами (DRM).
DRM в аудио и видео Расскажу, как возникла идея DRM. Все началось с домашнего видеомагнитофона Betamax, который компания Sony выпустила в 1975 году.
Он стал первым устройством, позволяющим самостоятельно записывать телепередачи для последующего просмотра.
А в 1976 году Sony получила иск от Universal Studios и The Walt Disney Company, в котором говорилось, что использование потребительских технологий видеозаписи нарушает авторские права.
То есть я могу записать фильм с телевизора, а после этого, например, продать его или отдать для просмотра тому, кто не имеет никакого отношения к телевидению, или что-то в этом роде.
Это означает, что Sony заранее виновата в создании такого устройства, и такие устройства должны быть запрещены.
Суд первой инстанции решил, что данный иск не имеет смысла, поскольку запретить пользователям просмотр программ в удобное для них время путем их предварительной записи невозможно.
Но апелляционный суд согласился с тем, что распространение видеомагнитофонов представляет собой нарушение авторских прав.
При этом общественность активно возражала против такого решения, приводя в качестве аргумента следующее сравнение: производство оружия законно, но производство видеомагнитофонов почему-то является нарушением закона.
Слава богу, судебная система вовремя успела опомниться, и в последней инстанции в Верховном суде было решено, что запись телепрограмм для частного просмотра не нарушает авторские права, что это так называемое добросовестное использование.
– концепция, закрепленная в законодательстве США.
То есть человек имеет право смотреть то, что ему транслируют, когда он хочет и так, как он хочет. Это была маленькая победа.
Забавно, что в 1984 году судебный процесс был выигран, а в 1989 году Sony купила киностудию Columbia Pictures и сама стала правообладателем, начав производить фильмы, которые можно было копировать с помощью ее технологии.
Производители контента в конце концов смирились с существованием видеомагнитофонов.
Основным аргументом было то, что при дублировании аналогового изображения происходит потеря качества.
То есть невозможно перезаписать одну видеокассету на другую 100 раз по очереди (с первой на вторую, со второй на третью и т.д.), потому что через несколько итераций ее будет невозможно просмотреть.
В 1982 году на рынок вышел первый цифровой потребительский продукт — компакт-диски, которые можно было слушать в специальных проигрывателях.
У них была очень простая внутренняя организация, очень простой формат записи без какого-либо сжатия, 16-битный стереоканал и частота дискретизации 44,1 КГц.
На этот раз пионерами стали Sony и Phillips.
Через пять лет после компакт-диска на рынке появился следующий носитель, предназначенный для цифровой записи звука — Digital Audio Tape. Для них выпускались студийные магнитофоны и персональные проигрыватели, позволявшие воспроизводить ленты в этом формате.
Главной особенностью этих кассет было сохранение качества при перезаписи.
Но разработчики, учитывая полученный опыт работы с видеоформатами, установили частоту дискретизации не 44 КГц, а 48 КГц.
Вроде хорошая цель - улучшить качество звука.
Но если вы попытаетесь записать компакт-диск на цифровую аудиокассету, то без цифро-аналогового и аналого-цифрового преобразования, то есть без потери качества, это сделать не получится.
Фактически в спецификации появилась поддержка 44,1 КГц, но с ограничениями.
Они заключались в том, что если у вас есть кассета, которую кто-то записал на частоте 44,1 кГц, то есть на частоте компакт-диска, вы сможете ее воспроизвести, но сами записать такую кассету не сможете.
Дальнейшая эволюция привела к тому, что возможность перезаписи компакт-диска на цифровую магнитную ленту с частотой дискретизации 44,1 КГц все же появилась, но после этого перезаписать данные на другую ленту уже было невозможно.
То есть с 48 КГц на 48 КГц переписать можно, а с 44 КГц на 44 КГц - увы.
Таким образом, тиражирование компакт-дисков на магнитные ленты было ограничено.
Это было одно из первых публичных проявлений DRM, то есть управление цифровым контентом осуществлялось с запретом на ряд операций.
Широко известна история с попытками защитить содержимое DVD. В 1996 году Sony представила на рынке DVD. На этапе проектирования можно было контролировать, кто может смотреть диск, а кто нет. Для этого мир разделили на семь регионов – семь зон.
Диск и плеер должны быть выпущены для одной зоны - в этом случае этот плеер сможет воспроизводить этот диск.
Если зоны не совпадают, просмотр диска будет невозможен.
Мотивация была такая: есть страны с низкими доходами, а есть богатые Америка и Европа.
Американцы могут позволить себе купить диск за 12 долларов, а африканцы — нет. Поэтому мы будем продавать диски африканцам по 6 долларов, но смотреть их можно будет только на плеерах, которые продаются в Африке.
Понятно, что африканские плееры нельзя массово привезти в Америку, и диск, купленный в Африке, не будет воспроизводиться на американском плеере.
Также была предусмотрена защита от копирования DVD. В целом копирование с диска на диск стало широко использоваться по мере снижения стоимости и увеличения количества записывающих дисков.
В 1994 году у меня был опыт работы с записывающим устройством для компакт-дисков, которое тогда стоило 1 тысячу долларов, а один диск к нему стоил 35 долларов.
При этом около половины дисков были повреждены приводом во время записи.
То есть записать один диск будет стоить 70 долларов.
Понятно, что купить оригинальные лицензионные диски гораздо дешевле, чем пытаться скопировать их дома.
Но когда стоимость бланков упала до 10 центов и достигла 40 долларов, вопросы домашнего копирования стали актуальными.
В 1996 году на рынок были выпущены DVD-диски с системой защиты Content Scrambling System, а уже в 1997 году была разработана программа DeCSS. Точных сведений о том, кем, как и когда он был разработан, нет; остаются только догадки, что путем анализа программной реализации плеера XingDVD был получен алгоритм и ключи, необходимые для его работы.
То есть, пока DVD-плееры были только аппаратными, анализировать их было сложно и дорого, поэтому этим никто не занимался.
Но как только появилась программная реализация, все стало совсем просто - садишься с отладчиком и дизассемблером, выясняешь, как работает программа, что происходит внутри, и в итоге выстраиваешь точно такой же алгоритм, как и в этом плеере.
.
Этот алгоритм был извлечен и опубликован в Интернете.
Видеокомпании предпринимают попытки запретить публикацию текста самого алгоритма, программ, его реализующих, а также ссылок на них.
Был небольшой скандал с публикацией alt.2600, на которую по решению суда было запрещено публиковать ссылку на страницу, где можно было ознакомиться с алгоритмом.
Разумеется, пользователи начали протестовать против запрета на распространение программ только потому, что кому-то так хотелось.
В итоге дошло до того, что тексты DeCSS стали печатать на футболках.
Также была написана весьма оригинальная реализация — программа на Perl, расшифровывающая содержимое DVD. Всего в нескольких строках людям удалось уместить все необходимое для этого.
Говорят, работает, хотя я не пробовал.
С момента появления защитной технологии прошел всего год, пока она не была взломана.#!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz <[email protected]> # MPEG 2 PS VOB file -> descrambled output on stdout. # usage: perl -I <k1>:<k2>:<k3>:<k4>:<k5> qrpff # where k1.k5 are the title key bytes in least to most-significant order s''$/=\2048;while(<>){G=29;R=142;if((@a=unqT="C*",_)[20]&48){D=89;_=unqb24,qT,@ b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/.
$/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9 |256|$b[3];Q=Q>>8^(P=(E=255)&(Q>>12^Q>>4^Q/8^Q))<<17,O=O>>8^(E&(F=(S=O>>14&7^O) ^S*8^S<<6))<<9,_=(map{U=_orE^=R^=110&(S=(unqT,"\xb\ntd\xbz\x14d")[_/16%8]);E ^=(72,@z=(64,72,G^=12*(U-2?0:S&17)),H^=_%64?12:0,@z)[_%8]}(16.271))[_]^((D>>=8 )+=P+(~F&E))for@a[128.$#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval
Как только продукт попадает на массовый рынок, его вскоре начинают исследовать и рано или поздно находят способы обойти эту защиту.
DRM в сфере электронных книг С электронными книгами я познакомился где-то в 1999 году.
Тогда же я написал диссертацию «Метод анализа программного обеспечения для защиты электронных документов».
Я начал смотреть, какие технологии существуют на рынке и насколько сложно их скомпрометировать.
Немного о том, как работает электронное издание и чем оно отличается от традиционного.
Когда мы говорим об издании обычной бумажной книги, мы понимаем, что процесс очень длительный: сначала автор должен написать книгу (от руки или на компьютере).
Тогда машинистка напечатает 300 или 400 страниц текста за довольно короткое время.
После того, как текст переведен в электронный вид, необходимо разметить страницы, чтобы посмотреть, как они будут выглядеть в печатном виде.
Когда-то это делалось вручную: свинцовые буквы вставлялись в специальную коробочку, смазывали краской, а затем делали оттиск страницы.
Потом этим стали заниматься механические полуавтоматы, а верстальщик просто набирал текст кнопками.
Теперь все делается на компьютере.
После этого изображения страниц макета отображаются на пленке и отправляются на печать.
Возможно, сейчас уже есть типографии, которые печатают достаточно большие тиражи без промежуточного этапа с пленками – прямо с электронного макета.
После того, как бумажные листы распечатаны, их нужно разрезать, сшить, сшить и приклеить обложку.
Далее нужно решить вопросы логистики, чтобы продукция дошла сначала до склада, а затем до магазинов, куда человек придет, найдет на полке интересующую его книгу и купит ее.
Так было последние 200 лет, пока существовало активное книгопечатание и книготорговля.
Что изменилось с переходом на электронные издания? Первые два этапа остались прежними: написание книги, затем ее верстка.
Но тогда вы сможете буквально, нажав одну кнопку, сделать так, чтобы эта книга попала в читающее устройство – в ридер.
Это исключает несколько дорогостоящих этапов: печать, логистика, оплата торговой площади, оплата рабочих на каждом этапе.
Казалось бы, электронная книга должна стать намного дешевле для конечного пользователя.
Я сам, например, являюсь автором одной книги и по договору получал, если не ошибаюсь, 12% от оптовой стоимости каждого экземпляра.
Плюс магазин все равно заработал около 100% и выпустил книгу в продажу.
То есть доля гонорара в общей стоимости книги невелика; Цена в основном состоит из стоимости сырья, заработной платы и накладных расходов.
Электронные книги имеют множество преимуществ по сравнению с бумажными.
Их гораздо дешевле производить, и их можно тиражировать бесконечно.
Написанная мною книга вышла тремя тиражами по 3 тысячи экземпляров, и сейчас купить ее в магазинах уже невозможно.
Правда, в сети есть отсканированная копия, а недавно через Ozon начали более-менее официально продавать электронную версию книги.
Кроме того, электронные книги быстрее доходят до читателей.
В одном ридере можно унести хоть всю Британскую энциклопедию, бумажная версия которой состоит из 50 томов.
«Электронные книги позволяют быстро найти нужный текст, они не изнашиваются, в них можно реализовать такие механизмы навигации, как гиперссылки, вставку мультимедийных объектов, анимации, звука – красота, удобство и радость как для тех, кто хочет доставить свой контент в потребителей и для тех, кто потребляет этот контент. Но наряду с преимуществами у электронных книг есть и недостатки.
Во-первых, формат часто связан с типом ридера — то есть то, что можно прочитать на одном ридере, может быть нечитабельно на другом (но эту проблему можно решить с помощью специального программного обеспечения — конвертацией в другие форматы).
Во-вторых, и это самая главная проблема электронных книг, здесь навязывается контроль авторских прав.
Если я хочу тиражировать бумажную книгу, то мне нужно каждую страницу отсканировать, распечатать, потом как-то сшить, приклеить обложку, и только потом я смогу ее отдать или продать.
Стоимость копии будет высокой, возможно, даже дороже оригинала, если речь идет о сопоставимом качестве.
Электронная книга — это просто файл, который можно разослать миллионами экземпляров.
А сейчас правообладатель потерял контроль над распространением, все читают, но денег никто не платит. Это самая большая страшилка для правообладателей, желающих заработать как можно больше денег.
Их тоже можно понять.
В результате стали появляться технологии защиты электронных книг, которые можно читать, но при этом на некоторые операции накладываются ограничения.
Рынок электронных книг по состоянию на 2000 год можно условно разделить на три категории.
- Первая категория довольно большая и, на мой взгляд, довольно глупая — это так называемые программы-компиляторы и программы для чтения электронных книг, которые позволяли взять текстовый файл, документ HTML или Word и превратить его в исполняемый файл.
Для чтения нужно было ввести пароль или активировать через Интернет. То есть на выходе было что-то более-менее защищенное, работающее как исполняемый файл или как отдельная программа просмотра, способная показывать файлы, созданные конкретной программой.
Понятно, что для пользователя сама программа просмотра была бесплатной, но за контент нужно было платить.
Сами издатели, желающие распространять свои книги через какую-то программу, должны были платить своим разработчикам.
- Вторая категория — «аппаратные» ридеры.
Сейчас они стали массовым продуктом, а на тот момент было всего две модели этих устройств (насколько мне известно).
В то время электронные книги имели черно-белые ЖК-экраны не очень хорошего качества: RocketBook и eBookMan Reader. Первый был немного популярнее.
К сожалению, мне ничего не известно о распространении защищенных электронных книг для этих устройств.
- Третья категория — сегмент рынка, который попытались захватить две крупные компании, решив, что у рынка есть будущее и он будет приносить доход. Первая — Adobe, которая разработала PDF задолго до этого.
На основе этого формата она попыталась создать коммерческую технологию электронных книг, чтобы люди платили именно за содержание документа.
Вторым крупным игроком является Microsoft, производящая линейку устройств Pocket PC. Компания разработала технологию Reader.Lit (Литература), позволяющую читать защищенные документы в формате .
lit на персональном компьютере или портативном устройстве, в зависимости от метода активации.
В Интернете он наткнулся на программу eBook Pro Compiler, которая позиционировала себя как (вольный перевод с английского) «Единственное программное обеспечение во вселенной, которое делает вашу информацию практически на 100% защищенной от взлома, имеет пожизненную гарантию возврата денег, если оно вам не понравится.
Наконец, вы можете продавать информацию в Интернете и совершать тысячи продаж каждый день, не опасаясь, что ваша информация будет украдена или продана другими».
.
То есть было заявлено, что эта программа — самое крутое решение для издателей в мире.
Но чтобы продавать тысячи копий в день, вам нужен настолько хороший контент, чтобы его захотели покупать тысячи людей в день.
Если вас зовут Дарья Донцова, то у вас есть шанс написать книгу, которую в первые пару месяцев будут покупать тысяча человек в день.
Если вы пишете научный учебник, то, продав всего 10 тысяч экземпляров, можно сказать, что вам повезло, поскольку умные книги, к сожалению, здесь не пользуются большим спросом.
Поверив рекламе, эту программу купил друг моего начальника.
Оказалось, что открыв скомпилированную «защищённую» книгу, используя комбинации Ctrl+A и Ctrl+Insert, можно получить всё содержимое текущей страницы из буфера обмена, вставить его в Word, и вот содержимое у вас украдено.
.
Вы также можете перейти в каталог Temp и найти там все HTML-страницы и изображения в том виде, в каком они были до компиляции книги.
При этом они останутся во временной директории, поскольку для просмотра электронных книг компилятор использовал движок Internet Explorer. А разработчики даже не удосужились реализовать механизм хранения исходных данных в памяти, а не на диске.
То есть они просто загрузили их на диск и сказали IE: «Покажи нам эти файлы с диска».
Совершенно детская реализация процесса работы с защищенным контентом.
Я немного покопался с отладчиком дизассемблера и понял, как работает формат. Все данные, составляющие книгу (картинки, CSS, HTML), упаковываются в контейнер, из которого затем извлекаются в момент показа.
Для упаковки используется бесплатная и открытая библиотека Zlib, а сами данные шифруются с помощью очень интересного алгоритма: на каждый байт зашифрованных данных последовательно накладываются все байты слова «зашифровано» с помощью операции XOR. Люди, написавшие это, не только ничего не понимают в криптографии, но и понятия не имеют, как работает XOR. Ведь XOR последовательно с разными байтами можно свести к XOR с одним байтом.
То есть они отформатировали весь контент с помощью одной однобайтовой константы.
Никакой защиты это не дает, но тем не менее они спокойно утверждали обратное.
Не буду говорить обо всех системах создания электронных книг, о которых упоминал ранее, но думаю, что добрая половина из них была устроена примерно одинаково.
Сфера защиты контента имеет одну особенность.
Например, вы используете Photoshop в качестве графического редактора и сравниваете его с Gimp. В некоторых операциях Фотошоп работает намного лучше или намного хуже – не важно.
Разницу можно увидеть на глаз.
Входные данные те же, но результат разный.
Но когда что-то защищаешь или шифруешь, оценить результат «на глаз» невозможно.
Как узнать, хорошая защита или плохая? Можно ли его взломать или нет, легко это или сложно? О том, что вас взломали, вы узнаете только тогда, когда это произойдет. И вы не сможете адекватно оценить степень простоты взлома, если не разбираетесь в технологиях информационной безопасности.
Поэтому, к сожалению, плохих решений на рынке всегда было много, они никуда не денутся и будут успешно продаваться, ведь продать хорошее решение без красивой обертки гораздо сложнее, чем продать плохое решение в красивой обертке.
.
Если у вас есть рекламный бюджет, вы на высоте, и люди будут покупать ваши продукты безопасности независимо от их качества.
PDF-структура
В своем исследовании я уделил особое внимание PDF-файлам.
Я изучал их конструкцию, заложенные в них механизмы обеспечения безопасности контента.
На тот момент спецификация PDF составляла около 600 страниц, из них 20-30 страниц были связаны с безопасностью и представляли наибольший интерес.
С тех пор спецификация много раз переписывалась, и последние версии поддерживаются, если не ошибаюсь, не Adobe, а каким-то подкомитетом ISO. То есть PDF пытаются сделать международным стандартом.
При разработке этого формата (Portable Document Format) одной из основных целей было обеспечение одинакового отображения на всех устройствах.
Почему это так важно? Наверняка вы попадали в ситуацию, когда при создании сложного документа в Word на одном компьютере и печати на другом оказывалось, что макет «поплыл», картинки не помещались и т. д. Причина в том, что Microsoft Word не издательская система, а система подготовки текста, не предназначенная для создания полноценных макетов для печати.
PDF был разработан как более компактный формат, чем Postscript, который можно открывать и распечатывать на любой платформе.
Также подразумевалось, что этот формат не предназначен для редактирования, а предназначен для постепенного обновления.
То есть документ можно дополнить, что-то убрать или добавить примечание.
Для этого разработчики решили, что зрителю следует прочитать документ с конца.
Там хранится так называемый трейлер, из которого берётся информация о том, где находится таблица размещения объекта Cross Reference Table. Сам файл состоит из заголовка, набора объектов, таблицы перекрестных ссылок и трейлера.
Имея таблицу перекрестных ссылок, вы сможете быстро найти объект в файле по его номеру.
Если вы хотите добавить в файл что-то новое, вы добавляете новые объекты, новую таблицу перекрестных ссылок и новый трейлер.
В этом случае вы никак не измените начало файла.
Объект может быть либо каким-то элементом данных, либо так называемым потоком.
Поток состоит из словаря, дескриптора, позволяющего указать характеристики данных, которые будут в потоке, и некоторого набора двоичных данных, никак не определенного стандартом.
Но определены возможности его интерпретации, то есть что на самом деле может быть в потоке.
Поток может содержать описание страницы в подмножестве языка Postscript, может быть картинка и т.п.
Базовых типов данных очень мало:
- пустой объект (ноль);
- логическое значение true или false;
- действительное или целое число;
- ссылка на другой объект по номеру.
23 0 R – ссылка на объект. R — условный знак, 23 — номер объекта, 0 — генерация объекта.
Максимальное значение — 65534. 65535 означает, что этот объект был удален и больше не будет использоваться.
На практике все системы обновления PDF удаляют старые объекты и добавляют новые с новыми номерами, потому что так проще.
Я не встречал ни одного реального документа, в котором генерация была бы равна единице и более.
Есть объект типа «имя», он начинается с косой черты, за которой следуют буквы, цифры, точка и подчеркивание.
Есть объект типа «строка» — это простой набор данных.
Размер имени ограничен 128 байтами, длина строки не ограничена.
Основным объектом, хранящим весь контент, является тот же поток, который можно сжимать, упаковывать, шифровать и т. д. Предусмотрено два сложных типа данных.
Если вы используете Python, это будет вам знакомо.
Объект массива представляет собой серию упорядоченных элементов, доступ к которым осуществляется с помощью индексов.
В этом случае первым элементом массива является ссылка на 23-й объект, затем имя XYZ, а затем нулевой объект. Словарь представляет собой несортированные именованные значения.
Есть пара «имя — значение; имя — значение».
В этом случае значением может быть любой объект, кроме потока.
То есть вашим значением может быть другой словарь или другой массив, или ссылка на объект, содержащий поток.
Используя такой простой набор объектов, вы можете описать сколь угодно сложную структуру данных, необходимую для представления документа.
Шифрование в PDF
Спецификация шифрования была разработана Adobe до того, как в формате PDF была предпринята попытка хранить документы, защищенные DRM. Изначально предусматривалось, что в определенном месте документа хранится так называемый Словарь шифрования — словарь, описывающий все параметры безопасности и способы расшифровки документа.
Одним из элементов словаря шифрования является имя обработчика безопасности.
Это программа, которая берет из документа Словарь шифрования и запрашивает дополнительную информацию, необходимую для подтверждения права пользователя на открытие документа.
Каким оно будет, решает программа.
Вы можете запросить пароль, можете выйти в интернет, можете посмотреть текущую дату, сравнить ее с написанной в документе и решить, истек ли срок действия документа.
Если программа решает, что контент можно отобразить, она использует некоторый алгоритм для вычисления нового объекта, называемого ключом шифрования документа.
На самом деле Security Handler работает не сам по себе, а как компонент средства просмотра.
Основным просмотрщиком PDF на тот момент был Adobe Acrobat — конкурирующих решений практически не было.
Acrobat можно расширить с помощью плагинов, включая защиту данных.
Если просмотрщик обнаруживал, что документ защищен, он вызывал специальную функцию из плагина и передавал ей Словарь шифрования, плагин обрабатывал и возвращал ключ, с помощью которого просмотрщик расшифровывал контент и показывал его пользователю.
С появлением управления цифровыми правами Adobe не собиралась менять этот подход: «Мы напишем новые обработчики безопасности, которые будут реализовывать для нас DRM».
По состоянию на 2000 год операторов службы безопасности было довольно много.
Я расскажу вам о них подробнее.
В спецификации указано, как получить расшифрованный документ из ключа шифрования документа.
Для шифрования использовался потоковый алгоритм RC4. У него есть такая особенность: если вы зашифруете два разных объекта одним и тем же ключом, они зашифруются в режиме гамма-генератора.
То есть из вашего ключа генерируется псевдослучайная последовательность практически неограниченной длины, которая подвергается XOR к обработанным данным.
При шифровании двух объектов одним и тем же ключом возможна атака с использованием открытого текста.
Если вы знаете пару открытый текст-зашифрованный текст для одного объекта, вы выполняете их XOR, определяете гамму и можете расшифровать второй объект. По слухам, в самой первой версии спецификации шифрования разработчики не учли этот эффект, а потому заявили: «В новой спецификации мы запрещаем старый алгоритм и вводим новый, в котором каждый объект зашифровано независимо от других».
Берется идентификатор объекта, состоящий из ID и Generation, смешивается с ключом документа в хеш-функции MD5 и в результате мы получаем ключ шифрования для конкретного объекта.
В третьей версии алгоритм был расширен и дополнен.
Вместо Object ID и Generation передавались их обфусцированные версии, переставлялись байты и добавлялись некоторые константы, в том числе константная строка sAlT. Почему это было сделано, для меня до сих пор загадка.
В криптографии есть понятие « соль " — неклассифицированный случайный элемент. Ключевое слово здесь — случайный.
В PDF соль была константой и представляла.
слово «соль».
Я не знаю, что хотели сказать разработчики, но они именно это и сделали.
Эта версия алгоритма не документирована, в спецификации сказано, что она была опущена по требованиям какой-то комиссии в США.
В этой стране существует множество юридических документов, законов и постановлений, регулирующих использование той или иной технологии.
В частности, очень долгое время действовало так называемое ограничение на экспорт криптографических алгоритмов, согласно которому в США можно было разрабатывать и использовать программы с любой длиной ключа.
Но если вы планируете продавать их за границу, вы должны это сделать.
ограничьте ключ 40 битами, иначе вам понадобится разрешение какой-то комиссии.
Большинство разработчиков не хотели с этим иметь дело, поэтому в первых двух версиях шифрования PDF максимальная длина ключа составляла 40 бит. Затем стали появляться более длинные ключи.
.
Первый разработанный обработчик безопасности назывался «Стандартный обработчик безопасности».
Он изначально поддерживался Acrobat и был разработан для защиты документов от определенных действий пользователя.
При этом автор документа мог делать все, что хотел.
Поэтому в документе предусмотрено два типа паролей:
- пароль пользователя, который позволяет получить доступ к документу с ограничениями, установленными владельцем;
- пароль владельца, дающий полные права.
Чаще всего защищенному документу присваивался пароль владельца, который знал только автор документа, а пароль пользователя оставался пустым.
А когда документ открывался во вьювере, он автоматически открывался в пользовательском режиме, то есть с ограниченными правами, установленными автором документа.
Список ограничений был довольно обширным.
Например, в настройках вы можете отключить редактирование документа, копирование в буфер обмена, аннотирование и печать.
Учитывая тот факт, что для расшифровки документов необходимо знать хотя бы один пароль, а пароль пользователя обычно пустой, то для печати документа достаточно его расшифровать, сделать незашифрованную копию и распечатать.
За эту часть отвечал зритель.
Если он не соответствовал правилам, указанным в документе, то печать не запрещалась.
В пятой версии Acrobat появилось разрешение на заполнение экранных форм.
То есть вы не можете редактировать документ, но можете что-то ввести в специально созданные для вас поля.
Можно было добавить цифровую подпись — на это было отдельное разрешение.
Появились возможности для людей со слабым зрением — сохранена функция аудиовоспроизведения текста.
Также появилась возможность редактировать порядок страниц и вращать их.
И последняя разрешенная особенность – некачественная печать.
Например, вы можете вывести документ с разрешением 300 точек на дюйм, но не с разрешением 1600 точек на дюйм.
«Враг» тоже не дремал — были разработаны атаки с перебором паролей.
Если известен пароль пользователя, то документ можно расшифровать мгновенно; если оно неизвестно, то об этом можно догадаться.
Для проверки одного пароля требовалась одна итерация MD5 и одна инициализация ключа шифрования RC4. Скорость поиска на среднем компьютере того времени достигала 190 тысяч паролей в секунду.
Для проверки пароля владельца потребовалось примерно в два раза больше операций, поэтому скорость составила около 100 тысяч паролей в секунду.
В третьей версии Security Handler компания Adobe решила, что подбор пароля слишком прост, поэтому ввела довольно большое количество итераций — 51 итерацию MD5 и 20 итераций RC4 для пароля пользователя.
В результате скорость поиска упала до 3,25 тысячи паролей в секунду.
А для пароля владельца — половина этого.
Для сравнения: если бы в ZIP-архиве было пять и более файлов, то можно было бы просканировать более 1 млн па.
Теги: #информационная безопасность #mail.ru #DRM #pdf #техносфера #технотрек
-
Лингвистическая География
19 Oct, 24 -
Akg K-518 — Диджей Или Не Диджей?
19 Oct, 24 -
Декабрьский Шведский Стол
19 Oct, 24