Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Флеш память - Наконечный А..pdf
Скачиваний:
129
Добавлен:
24.05.2014
Размер:
743.45 Кб
Скачать

Говоря об SMMC невозможно не упомянуть анонсированную Hitachi 25 февраля 2002 года карту PIN-SMMC, в которой реализованы функции защиты персональных данных при помощи PIN-кода. Пресс-релиз.

Стоит отметить, что CP-SMMC единственная карта, из числа SDMI-совместимых, информация о которой доступна в Internet в объеме, достаточном для понимания общих принципов реализованной защиты.

Подробнее о технологии можно узнать здесь или здесь.

CPRM-совместимые флэш-карты.

К CPRM-совместимым флэш-картам относятся SD-Card и Secure CF. Сначала попробуем разобраться в том, что же такое CPRM.

CPRM/CPPM I/II (Content Protection for Recordable Media and Pre-Recorded Media –

технология Защиты Контента для Запиываемых и Перезаписываемых Носителей). Одна из технологий шифрования контента, одобренных комитетом SDMI.

Технология CPRM разработана группой 4C (IBM, Intel, Matsushita Electronic Industrial и Toshiba). Данная технология в том или ином виде используется в записываемых DVD, Audio DVD, SD-Card и Secure CompactFlash.

Вкратце суть технологии сводится к следующему:

CPRM I

Лицензирующая организация 4С (центр) располагает некоторой таблицей (назовем её "мастер-таблицей"). "Мастер-таблица" представляет собой матрицу, размером в "a" строк и "b" столбцов, заполненную ключами устройств. Каждое устройство содержит "b" таких ключей (по одному ключу из каждого столбца). Ключи раздаются производителям оборудования лицензирующей организацией (4C) и записываются в устройство (плеер) в процессе производства. Комбинация ключей, полученных каждым устройством, уникальна и однозначно идентифицирует устройство.

На носитель на этапе производства записывается Media-ID (уникальный идентификационный номер носителя). Также на носитель записывается Блок Ключей Носителя (Media Key Block - MKB). MKB совпадает по количеству строк и столбцов с "мастер-таблицей". В каждой ячейке MKB записан ключ носителя (Media Key), зашифрованный соответствующим ключом устройства из "мастер-таблицы". MKB и Media-ID подлежат только чтению и, в обычных условиях, недоступны конечному пользователю.

"Защищённый" контент шифруется ключом сессии и записывается на CPRMсовместимый носитель. Ключ сессии шифруется Уникальным Ключом Накопителя (Media Unique Key - MUK) и так же записывается на носитель. MUK получают хэшированием Media-ID и ключа носителя.

При чтении устройство считывает Media-ID и дешифрует из MKB ключ носителя одним из своих ключей. При помощи полученного ключа носителя и Media-ID считывающее устройство восстанавливает MUK. При помощи MUK восстанавливается ключ сессии. Контент дешифруется при помощи полученного ключа сессии.

Приведенная схема позволяет однократно шифровать контент одним-единственным ключом сессии для всего тиража. Производителю (записывающей компании) необходимо только вычислять новое значение MUK для каждого носителя и шифровать при помощи него ключ сессии.

Зашифрованный контент с защищённого CPRM-носителя можно скопировать на другой CPRM-носитель. Также можно скопировать и заголовок, в котором хранится зашифрованный ключ сессии. Однако мы не сможем скопировать Media-ID и не сможем скопировать MKB (по крайней мере, это маловероятно). Соответственно, устройство будет не в состоянии получить с копии такого носителя ключ сессии и не сможет расшифровать записанные на таком носителе данные.

В этой схеме возможен отзыв взломанных ключей устройств. Ключи отзываются из "мастер-таблицы" лицензирующей организацией (4C), и в дальнейшем не используются в MKB. Вследствие этого, теоретически, возможна ситуация, когда ни в чем не повинное устройство не сможет декодировать совершенно легально приобретенный контент (!!!).

В CPRM-I возможен отзыв до 10000 устройств (на чем основан подобный расчёт - неизвестно). В CPRM-I на каждое устройство приходится 16 ключей (т.е. количество столбцов в MKB и "мастер-таблице" - 16). Также сказано, что отзыв каждого устройства обходится в 300 байт.

Примечание: в описании CPRM отсутствует понятие "мастер-таблица", данный термин введен нами для наглядности.

CPRM II

В основе CPRM II лежит схема распределения ключей устройств, основанная на полном бинарном дереве (вместо "мастер-таблицы" CPRM I). В этой схеме устройства (u) представлены в виде листочков бинарного дерева.

На этапе инициализации каждому узлу бинарного дерева присваивается случайная метка (LABELi).

Затем для каждого узла вычисляется множество вторичных меток (LABELi,j). Вторичная метка вычисляется для каждой пары узел-предок (Vi) узел-наследник (Vj).

Таким образом, количество вторичных меток, приписанных каждому узлу, равно количеству предков этого узла. Назначение вторичных

меток производится при помощи специальной рекурсивно используемой функции G, исходным значением для которой является первичная метка узла-родителя (LABELi). Сама функция (точнее, тройка криптографически стойких функций G = [G_L, G_M, G_R]), вычисляет вторичные метки для левых (G_L) и правых (G_R) узлов-детей, а также на основе полученных вторичных меток генерирует (G_M) ключи (Li,j).

Вторичная метка соответствует паре поддеревьев, вложенных одно в другое [корнем первого поддерева является узелпредок (Vi), а корнем второго поддерева является узел-наследник(Vj)]. Вложенное поддерево покрывает все отозванные

устройства, а оставшиеся непокрытыми устройства внутри большего поддерева считаются неотозванными. Таким образом, каждая вторичная метка (LABELi,j) соответствует потенциальному подмножеству неотозванных устройств (Si,j).

В приведенной схеме, как и в CPRM I, контент шифруется ключом сессии, а заголовком контента считается ключ сессии [связанный с ID-носителя], зашифрованный ключами Li,j. Набор ключей Li,j, которыми шифруется ключ сессии, выбираются таким

образом, чтобы число соответствующих этим ключам подмножеств Si,j было минимальным.

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

На этапе дешифровки контента, устройство находит в заголовке контента (в терминах криптографии - сообщения) запись с зашифрованным ключом сессии, соответствующую подмножеству Si,j, к которому оно принадлежит. Затем (используя одну из вторичных меток, имеющихся у устройства, и, возможно, функцию G) вычисляет вторичную метку LABELi,j для своего подмножества Si,j, а, затем

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

Пример: ключ сессии зашифрован ключом L0,4. Устройства 9 и 10 в данном случае оказываются отозванными.

Рассмотрим случаи для устройств u8, u10 и u13. Устройство u8 получило метки LABEL (0,2; 0,4; 1,4; 0,7; 1,7; 3,7).

Устройство u10 получило метки LABEL (0,2; 0,3; 1,3; 0,9; 1,9; 4,9).

Устройство u13 получило метки LABEL (0,1; 0,5; 2,5; 0,14; 2,14; 6,14).

u8 сможет вычислить L0,4, поскольку имеет метку LABEL0,4 в явном виде. т.е. L0,4 = G_M(LABEL0,4).

u13 сможет вычислить L0,4, поскольку имеет метку LABEL0,1, из которой может получить

LABEL0,4. т.е. L0,4 = G_M(G_R(LABEL0,1)).

u10 не может вычислить L0,4, поскольку среди имеющихся у устройства меток нет LABEL0,4, и её значение невозможно вычислить, используя другие метки, полученные устройством u10 (подобно тому, как это удалось для u13).

Примечания: В CPRM II исправлен главный недостаток CPRM I, суть которого заключается в том, что существует вероятность непреднамеренного отзыва

устройств. Обе версии CPRM подходят для широковещательного шифрования (цифрового телевидения и радио), более того, в оригинале CPRM II описывается именно в терминах вещания (broadcasting). Применяется ли CPRM II на практике - пока неизвестно.

SD-Card – 25 августа 1999 г.

SD-Card была анонсирована 25 августа 1999 года. Из всей той "воды", что обычно пишется в пресс-релизах, известно, что в качестве средства "защиты пользователя" в SDCard используется CPRM. Известно, что можно создать не более 3-х копий "защищённого" контента на SD-картах. При этом считывание (воспроизведение) полученных копий возможно только на CPRM-совместимых плеерах. Считывание (и копирование) данных на компьютерах, отличных от того, на котором "защищённые" данные были записаны на SD-карту, невозможно. Стирать "защищённые" данные, записанные на SD, необходимо при помощи того же самого компьютера, на котором производилась запись на карту (для того, чтобы "счетчик копий" увеличил значение на "1"). Удаление данных на другом устройстве сопряжено с утерей "прав" на уничтоженную копию. Не очень удобно, не правда ли?

Secure CF – 31 мая 2001

31 мая 2001 Compact Flash Association (CFA) выпустила пресс-релиз, в котором объявлено о принятии спецификация Secure CompactFlash. Спецификацией предусматривается до 16 видов различных методов защиты контента, а в качестве первого принятого метода указывается CPRM.

Других подробностей пока нет.

Как CPRM попал в стандарт Secure CompactFlash?

Во второй половине 2000 года стало известно, что комитет T13 (комитет по стандартизации ATA/ATAPI интерфейса, часть комитета NCITS – бывшего X3) работает над созданием ATA/ATAPI стандарта ATA-6, с поддержкой CPRM. Выяснилось, что CPRM в ATA активно продвигалась IBM, которая и разработала соответствующее расширение стандарта ATA.

С декабря 2000 года председатель T13 Пэт Мак Клин (Pete McLean) из Maxtor был завален большим количеством гневных отзывов с призывом не допустить включения CPRM в состав стандарта ATA. Полученные Мак Клином письма были переданы членам комитета T13. Во многом такому проявлению недовольства способствовал со-основатель EFF Джон Гилмор (John Gilmore), который призвал бойкотировать CPRM.

Причиной недовольства общественности стало то, что стандарт был в первую очередь ориентирован на ATA накопители (в частности, жёсткие диски). Intel и IBM (входящие в состав T13) пытались доказать всему миру, что данное расширение стандарта касается прежде всего портативных переносных ATAPI накопителей (типа Zip или Jazz), а не HDD. Выяснилось, что интерфейс CPRM ATA требует для своей работы ту же самую информацию, которая необходима обычным ATA HDD, и не требуется устройствам с интерфейсом ATAPI. Исходя из этого, можно с большой долей уверенности говорить о том, что если бы стандарт ATA-6 был принят, в первую очередь пострадали бы пользователи ПК.

Если бы данный стандарт был принят: