Кивино гнездо: Конец эпохи
АрхивКивино гнездоКриптосистема HDCP, защищающая от копирования контент высокой четкости, взломана полностью и окончательно. По сути, пал последний бастион концепции DRM.
На всю эту историю с тотальной компрометацией системы HDCP - чуть ли не последней "публично недовскрытой" технологии для защиты контента от копирования - ушло времени меньше недели. В понедельник 13 сентября некий анонимный источник опубликовал на сайте Pastebin.com здоровенную матрицу чисел, представив ее как универсальный "мастер-ключ" для вскрытия HDCP. А в четверг 16 сентября официальный представитель корпорации Intel, в свое время создавшей HDCP, честно признал, что опубликованный ключ действительно работает и в принципе позволяет снимать всю защиту, обеспечиваемую их системой. К великому неудовольствию Голливуда и прочих владельцев драгоценного медиа-контента высокой четкости.
Иными словами - по давно уже известной схеме - ИТ-индустрии в очередной раз пришлось невольно согласиться, что полностью надуманная, искусственно изобретенная "правообладателями" идея о техническом недопущении копирования информации, является нежизнеспособной и реально воплощена быть не может.
Самое же поразительное в данном сюжете то, что при естественном ходе событий произойти он должен был бы не сегодня, а примерно лет 10 тому назад. Точнее, летом-осенью 2001 года. Именно тогда сразу несколько весьма авторитетных криптографов, независимо друг от друга проанализировавших криптосхему HDCP, пришли к выводу, что она явно не обладает стойкостью, достаточной для противостояния известным криптоаналитическим атакам. Более того, было даже подсчитано сколько именно разных HDCP-устройств - всего порядка 40 - понадобится атакующим, чтобы быстро и легко вычислить универсальный ключ, делающий всю эту защиту бесполезной.
Но жизнь, как известно, далеко не всегда развивается естественными путями. Во-первых, именно в тот исторический период времени все исследователи-криптографы оказались изрядно напуганы делом Дмитрия Склярова, российского аналитика, арестованного в США сотрудниками ФБР за его доклад на конференции о слабостях криптографии в одной из программ Adobe. Именно по этой причине, в частности, голландец Нильс Фергюсон решил не публиковать свою работу о взломе HDCP, огласив лишь ее итоговые результаты (и предупредив, что в течение года эти же результаты получит любой грамотный криптоаналитик, соображающий в решении систем алгебраических уравнений).
Помимо затихших на время исследователей из академического криптосообщества, другим важнейшим фактором, как обычно, стала позиция "вышестоящих криптографических инстанций", весьма жестко диктующих ИТ-индустрии, какого уровня стойкость считается в бытовых приложениях допустимой, а какая нет. Хотя об этом не принято говорить открыто, ни для кого не секрет, что АНБ США всегда очень ревниво следило и по сию пору следит за тем, чтобы в бытовой электронике уровень защиты информации не поднимался выше определенной планки, обеспечивающей беспрепятственный доступ для специалистов спецслужб.
Короче говоря, жизнь пошла так, как пошла. Все предупреждения криптоаналитиков были проигнорированы, очевидно нестойкая технология HDCP "как есть" запущена в массовое производство, а то, что неминуемо должно было произойти далее, случилось только что.
Поэтому нам теперь остается лишь почетче разобраться, в чем же именно заключается суть произошедшей компрометации и чего интересного в связи с этим можно ожидать в ближайшем будущем.
Система HDCP, разработанная корпорацией Intel для защиты контента выского разрешения от нелегального копирования, (или High-bandwidth Digital Content Protection) шифрует уже распакованные и полностью готовые к воспроизведению биты видео- и аудиоконтента высокой четкости при их передаче через HDMI, DVI и прочие цифровые интерфейсы вроде DisplayPort, UDI или GVIF. Иначе говоря, именно HDCP используется для защиты цифровых HD-сигналов "в проводах". Например, при передаче изображения и звука по кабелям, соединяющим Blu-Ray-плеер или ресивер спутникового HDTV с HD-телевизором.
Поскольку опубликованный ныне в интернете "мастер-ключ" - представляющий собой матрицу размером 40 × 40 ячеек, каждая из которых содержит 56-битное число - действительно оказался подлинным, это означает, фактически, что система HDCP более не предоставляет передаваемому в кабелях контенту никакой защиты от копирования. Потому что на основе данного мастер-ключа всякий грамотный программист теперь может сам (в теории, по крайней мере) сгенерировать сколько угодно полностью легитимных и "неотзываемых" HDCP-ключей для беспрепятственного доступа к защищенному системой содержимому.
С точки зрения функциональности, система HDCP, как это было задумано, должна решать три главных задачи: (1) она шифрует контент так, чтобы его нельзя было брать от кабеля; (2) она позволяет каждому оконечному устройству удостовериться, что другая оконечная точка связи - это тоже HDCP-лицензированное устройство; и (3) она позволяет "отзывать" уникальные ключи прежде легитимных, но впоследствии скомпрометированных пиратами устройств, создавая "черные списки" заблокированных ключей.
С точки зрения собственно защиты информации, принципиально важным этапом в работе системы HDCP является процедура начального "рукопожатия", в ходе которой формируется общий секретный ключ, который затем используется для шифрования коммуникаций между двумя устройствами. В то же самое время данная процедура позволяет каждому устройству удостовериться, что другое устройство является лицензированным для обработки HD-контента.
Всякий раз, когда речь заходит о криптотехнологии, исходная позиция для понимания конструкции системы - это разобраться с работой секретных ключей: сколько именно таких ключей предусмотрено, кому конкретно они известны и как именно они применяются.
В HDCP каждое устройство имеет уникальную пару ключей: один открытый ключ, который не является тайной; и один секретный ключ, который положено знать исключительно только этому устройству. Кроме того, система в целом имеет один-единственный мастер-ключ, который предполагается известным исключительно Центральному органу, управляющему всей системой HDCP. А также имеется особый алгоритм генерации ключей (который по давней традиции удобно для краткости называть Keygen), используемый Центром для формирования секретных ключей устройств. Этот генератор ключей на основе секретного мастер-ключа Центра и открытого ключа устройства неким хитрым способом формирует уникальный секретный ключ, который соответствует исключительно данному открытому ключу. Поскольку генератор ключа использует секретный мастер-ключ, заниматься созданием ключевых пар может только центральный орган власти.
Каждое HDCP-лицензированное устройство (например, Blu-Ray-плеер или HD-телевизор) имеет зашитые в него открытый ключ и соответствующий ему секретный ключ. Чтобы получить эти ключи для своих устройств, их изготовителям нужно содействие центрального органа власти HDCP, потому что лишь там занимаются генерацией и раздачей легитимных ключевых пар.
Теперь предположим, что два устройства, которые для простоты называют А и Б, собираются выполнить процедуру "рукопожатия". Для этого А посылает свой открытый ключ в Б, а Б, соответственно, свой открытый ключ в А. После чего каждая из сторон по заранее известному правилу комбинирует свой собственный секретный ключ с открытым ключом партнера, чтобы в результате получить общий секретный ключ для шифрования сеанса связи. Этот сеансовый ключ предполагается секретным - то есть известным исключительно сторонам А и Б - потому что для порождения общего ключа обязательно требуется знать либо секретный ключ А, либо секретный ключ Б.
Надо подчеркнуть, что для получения этого общего секрета А и Б фактически выполняют разные вычисления. Ведь А комбинирует свой секретный ключ с открытым ключом Б, а Б, наоборот, комбинирует свой секрет с открытой информацией от А. Если "случайно повстречавшиеся" А и Б производят существенно разные вычисления, то возникает естественный вопрос: каким образом в итоге у них получится один и тот же результат? Чтобы ответить на этот вопрос с исчерпывающей полнотой, понадобилось бы без нужды углубляться в дебри алгебраических уравнений. Здесь же вполне достаточно ограничится кратким ответом: потому что таким образом устроены математические свойства алгоритма Keygen.
Принципиально важно, что от этой особенности критически зависит безопасность всей криптосистемы: если ваше устройство имеет секретный ключ, изготовленный в процессе работы Keygen, тогда "рукопожатие HDCP" для вас сработает - в том смысле, что в итоге вычислений это устройство получит тот же самый общий ключ, что и вторая легитимная сторона на другом конце кабеля. Но если же вы пытались применить какой-нибудь левый или случайный "секретный ключ", который сгенерировали сами, тогда рукопожатие не сработает: вы придете к совершенно иному сеансовому ключу, нежели у второй стороны, поэтому устройства не смогут связаться друг с другом.
Если эти нюансы ясны, вполне можно понять и последствия того, что ныне опубликован секретный мастер-ключ HDCP. Теперь абсолютно любой, кто знает мастер-ключ, может сам выполнять сакральную процедуру Keygen. А это, в свою очередь, эффективно удаляет все важнейшие функции защиты, которые должна обеспечивать HDCP.
От шифрования HDCP нет никакого проку, поскольку перехватчик, который видит начальное рукопожатие, может сам применить Keygen для вычисления секретных ключей связывающихся сторон. А это, ясное дело, позволяет перехватчику легко вычислить и сеансовый ключ шифрования, защищающего передачу контента.
Аналогично, HDCP больше не может гарантировать, что участвующие в соединении устройства являются лицензированными, потому что теперь любой изготовитель нелицензированных устройств может использовать Keygen для порождения математически корректных пар из открытого и секретного ключей. По этой же причине становится лишенной смысла и "хитроумная" процедура с блокированием скомпрометированных ключей - при условии известного мастер-ключа все прочие секретные ключи устройств оказываются скомпрометированы автоматически.
Короче говоря, во всем, что касается защиты информации, от HDCP ныне нет абсолютно никакой пользы. А общее устройство системы таково, что всерьез что-либо поправить здесь можно лишь самым радикальным способом - типа полного отказа от уже внедренной HDCP и перехода на нечто в корне иное. Пока что, судя по начальной реакции в индустрии, никто к этому не призывает.
Суровая правда жизни заключается в том, что и без взлома HDCP у пиратов никогда не было особых проблем с копированием контента высокого разрешения. Собственная система AACS, применяемая для защиты фильмов на дисках Blu-ray, а также и более продвинутые дополнительные механизмы защиты Blu-ray BD+ вскрыты умельцами давным-давно. Соответственно, сжатый контент с этих дисков регулярно копируется и стабильно появляется в файлообменных структурах интернета. Также не секрет, что и на рынке HDTV имеются разного рода "неофициальные решения", позволяющие несертифицированным ресиверам принимать и декодировать передачи платного кабельного и спутникового HD-телевидения.
Все упомянутые вещи происходят с копированием скомпрессированного, куда более экономно представленного контента. Что же касается потоков в HDCP, то здесь воспроизведение контента высокой четкости по умолчанию подразумевает обработку очень высоких объемов информации. На защищенных системой HDCP каналах доставки, вроде кабелей HDMI, соединяющих плеер с дисплеем, для видеосигнала с качеством 1080p24 (24 полных кадра в секунду при разрешении 1920х1080 пикселей плюс шесть трактов аудио) скорость передачи достигает примерно 2,23 гигабита в секунду. Иначе говоря, записывать видеофильм с канала такой ширины - для программных решений дело не только чересчур хлопотное, но и требующее огромных, терабайтных объемов памяти. То есть для людей, занимающихся нелегальным копированием, это, мягко говоря, не очень интересная возможность.
С другой стороны, открываются чрезвычайно заманчивые возможности для появления других, аппаратных решений - конечно же, нелегальных, но сильно облегчающих жизнь конечным пользователям, страдающим от нестыкующихся HD-устройств и капризов HDCP. Где-нибудь на индустриальных просторах Китая теперь легко могут появиться дешевые чипы и устройства-декодеры, выполняющие роль переходников - из зашифрованного HDMI-сигнала, к примеру, переводящие фильм в обычный и понятный всем цифровым дисплеям открытый DVI. Подобного рода коробочки-переходники примерно в 2005-2006 годах очень неплохо продавались в Западной Европе, когда по недосмотру надзирающих властей партия лицензионных чипов-декодеров HDMI была продана не совсем тому, "кому надо". Теперь же подобная техника, в принципе, может появляться и без всякой лицензии.
Конечно, это будет противозаконно - с одной стороны. А с другой стороны, все, наверное, еще помнят, что происходило поначалу со снятием "регионального кодирования" в DVD-плеерах, а затем и со снятием криптозащиты с самих фильмов на DVD-дисках. Эти вещи на первых порах тоже упорно пытались называть "противозаконными". Однако все, кому не лень, это делали - отнюдь не считая преступлением удаление искусственно возведенных препятствий, мешающих людям делать с собственными файлами или устройствами то, что они считают нужным и удобным.
Похоже на то, что нечто аналогичное происходит ныне и с защитой контента высокой четкости. А все эти перемудренные "средства безопасности DRM" вроде HDCP, AACS и BD+ совсем скоро будут восприниматься потребителями просто как еще одна досадная, но легко устранимая проблема, препятствующая нормальному воспроизведению и хранению файлов.