МАТЕМАТИКА
УДК 004.056
МАТЕМАТИЧЕСКАЯ МОДЕЛЬ ЭФФЕКТИВНОЙ СХЕМЫ СПЕЦИАЛЬНОГО ШИРОКОВЕЩАТЕЛЬНОГО ШИФРОВАНИЯ И ИССЛЕДОВАНИЕ ГРАНИЦ ЕЕ ПРИМЕНЕНИЯ
© 2009 г В.М. Деундяк, В.В. Мкртичян
Южный федеральный университет, Southern Federal University,
344090, Ростов н/Д, ул. Мильчакова, 8а, 344090, Rostov-on-Don, Milchakov St., 8a
[email protected] [email protected]
Работа посвящена защите легально тиражируемой цифровой продукции от несанкционированного распространения. Построена математическая модель усиленной схемы специального широковещательного шифрования на основе кодов Рида-Соломона и декодера Гурусвами— Судана. Проведено исследование возможности ее применения в случае превышения допустимого числа членов коалиции злоумышленников.
Ключевые слова: обобщенные коды Рида—Соломона, списочное декодирование, широковещательное шифрование, поиск злоумышленников.
The article devoted to problem of secure distribution of copyrighted media. Mathematical model of a powered broadcast encryption scheme is constructed, bounds of applying of the scheme in case of excess of admitted coalition power value is researched.
Keywords: generalized Reed—Solomon codes, list decoding, broadcast encryption, tracing traitors.
Вопрос о защите легально тиражируемой цифровой продукции от несанкционированного распространения является в настоящее время весьма актуальным. В [1] представлен перспективный способ возможной защиты, идея которой получила развитие в работе [2], согласно которого защищаемые данные тиражируются свободно в зашифрованном виде, а каждому легальному пользователю выдается уникальный набор ключей, причем в случае обнаружения нелегального использования набора его хозяин может быть идентифицирован контролером. Этот способ будем далее называть в соответствии с [1] схемой специального широковещательного шифрования (СП IIIII) В [2] отмечено, что СП IIIII допускает атаки следующего вида: злоумышленники, являющиеся легальными пользователями, могут объединяться в коалиции и, комбинируя специальным образом ключи из своих наборов, конструировать новые (пиратские) наборы, которые можно использовать для расшифрования данных. Эти пиратские наборы злоумышленники могут нелегально распространять, уклоняясь от обнаружения. Для борьбы с такими коалиционными атаками в [2] предложен основанный на хешировании метод обнаружения членов коалиций, являющийся весьма затратным по времени, и в [3] он был улучшен путем применения так называемых следящих кодов с обнаруживающими полупереборными декодерами. В [4] доказано, что в качестве следящего кода можно использовать помехоустойчивый обобщенный код Рида-Соломона (ОРС-код), а в качестве декодера - эффективный списочный декодер Гурусвами-Судана [5].
Методы подбора следящих кодов для ГСП IIII описанные в [3, 4], основаны на том, что величина c - максимальная мощность коалиции злоумышленников -
полагается известной, причем вопрос о степени защищенности ССТТТТТТ от атак коалиций мощности больше c оставался открытым.
В настоящей работе построена математическая модель СП IIII на основе обобщенных кодов Рида-Соломона и списочного декодера Гурусвами-Судана (разд. 1 и 2) и исследован вопрос о возможности ее применения в случае превышения величины c (разд. 3).
1. Математическая модель ССШШ
Будем рассматривать ситуацию, когда поставщик распространяет цифровую продукцию, доступ к которой должны получать только приобретающие ее легальные пользователи. Как отмечалось выше, в [2] предложена ССИНИ. позволяющая решать эту задачу. Построим математическую модель этой схемы.
1.1. Математическая модель распространения данных. Напомним, что под шифром понимается пятерка где X. К. У - множество всевозможных открытых текстов, ключей и шифртекстов соответственно; Е = - множество правил
зашифрования Ек :Х —>7 , Ек - множество всех
шифрограмм на ключе к', = - множество
правил расшифрования 1)к : Ек (X) —> X; при этом
У= ^Ек{Х) и Ок(Ек(х)) = х для всех хеХ, к<=К ык
[6]. Пусть Хг = X / ...у.Х ( г сомножителей).
Предполагается, что поставщик разбивает защищаемые тиражируемые данные на блоки и выбирает два базовых шифра: С Л' Л' ,Е' и 4£,К,У,Е,0~1 для защиты блоков и блоковых ключей соответствен-
но. Очередной блок М<=Х' поставщик зашифровывает на блоковом ключе е К': е' =Е'Я(М). Ключу 5 по специальному правилу разделения секрета <т ста-
вится в соответствие вектор сг^ = ^ Хг
каждая из координат которого необходима для восстановления 5. Различные правила разделения секрета
содержатся, например, в [7]. Через обозначим
правило восстановления секрета: я = '' ______\г .
Каждая координата зашифровывается на q частичных ключах д: К : ег-1 = Ек ^ (.?г),..., (я^), составляющих вектор разрешенных
еич =Ек,
i
г,] Г
набираемый по одной координате из
DKl С
\j. (Еки. О¡)) = si, i'
я..
; г
descCoj= 4е Q"
Если С0есоа1с(5), а >еес1е5с(Со), будем говорить, что С0 является коалицией, создающей потомка w. Множеством с-потомков множества назовем (Зевс с (5) = и<Ье(Сг-).
Ясно, ЧТО = С1С5СI(.V) С С1С5С:(Л') £ С1С5С3(\) с...с (йевСр с (У. Пиратским вектор-номером коалиции С0есоа1с(5) назовем элемент с1е5с(Со)\Со.
Пусть ce.Ni, С0есоа1с(>$), м>=(уу\, ...,уг)еве8с(С0)\С0.
; r ~iw,
■С.
Тогда V/е \{. :г ]з/„ = ~ß С0
: W; = ./„
ключей Лг = ((,_!_____к1 С{ ^ для 5г . Таким образом, поставщик формирует упорядоченный набор из г векторов разрешенных ключей в виде матрицы: Л >:. ¡1:.•• ¡к...:..-; • Шифрограммы б' И
=(ег,7)ге{1;...;г},7е{1;...;9} поставщик передает по
открытому каналу, а матрицу Л хранит в секрете.
Каждому легальному пользователю и поставщик
выдает уникальный вектор ./„ = ^...../,. где
/I...../,. е [{..и/ , называемый далее вектор-номером
пользователя, и соответствующий ему уникальный упорядоченный набор частичных ключей, называемый далее вектор-ключем пользователя: Ки = С].....к'г 3=
Пусть к[г> = Ки„ где Ки=(КиЛ, ..., Ккг) (еДС0)) -вектор-ключ, соответствующий Ju. Тогда
Vn
Г jDk<J) (ehWj ) = DK (еи ) .
каждого вектора разрешенных ключей. Набор всевозможных вектор-номеров пользователей ССШШ обозначим 5".
Легальный пользователь и , получив шифрограммы е', Гд и имея в вектор-ключе Ки ключ к*, из каждого вектора разрешенных ключей Л,-, может расшифровать каждую из частей блокового ключа
Расшифровав части блокового ключа, пользователь получает возможность восстановить блоковый
ключ я = сг( '' ______V,, _ и расшифровать блок защищенных данных Сл .
1.2. Математическая модель коалиционной атаки. Пусть N - множество натуральных чисел, N = NN{1}; А\ - мощность произвольного конечного
множества А; СЩ1 - число сочетаний из п по т. Далее 1-ю координату произвольного вектора х будем обозначать х,. Множеством с-коалиций соаЦЛ) набора вектор-номеров пользователей 5", где се К, назовем множество всех его непустых подмножеств мощности
не более с. Очевидно, что 1соа1с Ср= УС,',, .
¿=1 Н
Множеством вектор-ключей коалиции С0есоа1с(5) < - •
назовем К{С^)= : ....../,. > <"„ .
Множество 1-х координат всех вектор-номеров коалиции С0есоа1с(5) обозначим через С0)1. Пусть <2={1;...;д}. Множеством потомков коалиции С0есоа1с(5) назовем
Таким образом, по коалиции С0 и множеству ее вектор-ключей К(С0) можно составлять пиратские пары вектор-номеров w=(w1,...,w,.) и вектор-ключей к = (к(1),., к(г)), подходящие к расшифрованию. Такие пиратские пары могут быть использованы злоумышленниками для нелегального распространения.
1.3. Математическая модель защиты от коалиционных атак. В [3] для борьбы с коалиционными атаками в ССШШ предложено использовать специальные линейные коды. Напомним необходимые сведения о кодах. Пусть Едг - линейное г-мерное пространство Хемминга над полем Галуа 1(х.у)= { / е ¡1:... :г |: х=у, | - множество координат совпадения векторов х=(хь...,хг), >=(уь...,хг) из с1(х,у)=г-\1(х,у)\ - метрика Хемминга в В(х,р)= = !ге/''1;' | с!(х.2) < р\ - замкнутый шар с центром в точке х радиуса р. Линейный код длины г и размерности к над полем ¥„ далее будем называть (г,к)-кодом [8].
Пусть - мультипликативная группа поля а( е 1\1) - фиксированный примитивный элемент. Тогда /■={0:\:...:а' 2|. Рассмотрим множество <2={ 1;...;д}, (г,к)-код С с. биективное отображение С- Рщ-^О,, задаваемое правилом: <Г(0)=1, С(Ы')=а+2. где ае{0;...;д-2}, и инъективное отображение к. ('^>0'. определяемое правилом:
А (уь...,Уг) = (С(У1),..., С(уг)). (1)
Для того чтобы построить математическую модель защиты от коалиционных атак, прежде всего, модифицируем модель распространения данных из п. 1.1. Будем полагать, что множество 5 всевозможных вектор-номеров пользователей ССШШ является образом некоторого кода С при отображении X, что позволяет рассмотреть биективное отображение: к. С —» 5", определяемое формулой (1). На код С, который будем называть кодовым представлением множества 5, перенесем все конструкции из пункта 1.2, связанные с вектор-номерами. Для формирования кодового представления вектор-номера пользователя и поставщик может воспользоваться кодирующим отображением кода С, где в качестве сообщения взять, например, уникальные данные пользователя и. Для получения самого вектор-номера пользователя поставщик применяет отображение А. Далее для простоты вектор-номера и их кодовые представления мы различать не будем и ограничимся рассмотрением только кодовых представлений.
В качестве кодов, с помощью которых можно модифицировать математическую модель распространения данных ГГТТТТТТ удобно выбирать некоторые специальные классы кодов из в [3]. Пусть с(>2). Говорят, что код С обладает оБР-свойством, если \ZzeC УСоЕСоа1с(С\{2}): ггае5с(С0)\С0.
Иными словами, код обладает с^Р-свойством, если никакая коалиция мощности не более c не может скомпрометировать легального пользователя, не входящего в нее, путем создания его вектор-номера.
Говорят, что код С обладает с-ТА-свойством, если
\ZzeC \/С0есоа1с(С\{2}) Ум>е<1е8с(Со)\Со
ЭиеС0: \1{2,м!)\<\1{м!,и)\.
Иными словами, код имеет c-TA-свойство, если для любого потомка ближайшим кодовым словом является элемент создавшей его коалиции.
Известно, что код, обладающий c-TA-свойством, обладает и c-FP-свойством [3, лемма 1.3]. В [3, теорема 4.4] доказано, что если минимальное расстояние d кода C достаточно близко к длине г, а именно, если выполняется условие
й>г-г/с2, (2)
то код С имеет c-TA-свойство. В [4, с. 2], показано, что если для кода С существует такое натуральное число с, что выполняется условие (2), то множество кодовых слов, находящихся в пределах расстояния г-г/с от пиратского вектор-номера, не пусто и вложено в создающую его коалицию.
Чтобы построить математическую модель защиты от коалиционных атак, прежде всего модель распространения данных, описанную в п. 1.1, модифицируем c помощью линейного кода С, удовлетворяющего условию (2) для некоторого числа се Л',. Под математической моделью защиты от коалиционных атак будем понимать следующий порядок действий контролера при обнаружении пиратского вектор-номера >еес1е5Сс(С)\С: перечислить векторы шара Б(м>,г-г/с) и выбрать из них те, которые принадлежат коду С. В результате этого контролер получит непустой список легальных вектор-номеров из коалиции.
Из того, что коды, обладающие c-TA-свойством, обладают и c-FP-свойством, вытекает, что в организованной таким образом СП IIIII исключена возможность прямой компрометации невиновных пользователей.
Замечание. Напомним, что (г,£)-код с минимальным расстоянием с1 называется МДР (г,&)-кодом, если в неравенстве Синглтона с1 < г - к + 1 достигается равенство й = г-к + 1 [8, с. 308]. Для МДР (г./О-кода С ввиду целочисленности с условие (2) можно привести к виду
с <[у/г/(к-1) 1-1. (3)
Очевидно, число B0(C) = Г -Jr /(k-1) 1-1
является
нижней границей наличия с-ТА-свойства у МДР-кода С, т.е. если с < !'>,,(('). то код С обладает с-ТА-свойством.
2. Математическая модель эффективной ССШШ на основе списочного декодирования
2.1. Обобщенные коды Рида-Соломона и списочный декодер Гурусвами-Судана. Пусть р/-1 [х] - про-
странство полиномов степени не выше k-1 с коэффициентами из Fq. Пусть аЛ.....ач - фиксированное упорядочение элементов поля Fq, r<q; ке{2;...;г}; vb...,vreFq. Кодирование <р: Fq~l[x\-^Fq для обобщенного (г,£)-кода Рида-Соломона ((г,£)-ОРС-кода) производится вычислением информационных полиномов в элементах поля: <р(р) = (vjр(щ),..., vrp(ar)).
Известно, что (г,£)-ОРС-коды являются МДР-кодами. Алгоритм списочного декодирования Гурусвами-Судана (АСДГС) имеет полиномиальную сложность работы. Его входными параметрами являются длина г, размерность к ОРС-кода и управляющий параметр t(e{\jr(k -1) +1 _;...;г}) [5]. При декодировании на вход подается вектор y из Fqr и АСДГС производит поиск всех кодовых слов в пределах шара B(y,r-t); полученные на выходе декодера слова называют списком. Величину r-t естественно назвать радиусом работы списочного декодера, в силу оценки
t>y¡r(k -1) его наибольшее значение равно
r00=\r-ylr(k-l)_. (4)
2.2. Математическая модель эффективной ССШШ. Элементами построенной в разд. 1 математической модели ССШШ являются математические модели распространения данных, коалиционной атаки и защиты от коалиционных атак на основе применения линейных кодов. Недостаток этой модели - наличие в математической модели защиты от коалиционных атак переборных алгоритмов. В [4, теорема 6] получены результаты о теоретической возможности применения ОРС-кодов и списочных декодеров в ССШШ. Сформулируем эти результаты в удобном для нас виде: пусть ceNi такое, что выполняется условие (3); С - (г,к)-ОРС-код над полем I<\r \redcsc (Y'): г00 - определено в (4); тогда VC0ecoalc(C)Vwedesc(Co)\Co: 0*B(w,
rooteCo
В [4] также отмечено, что если при r>log2q управляющему параметру t АСДГС задать значение то радиус работы АСДГС будет составлять r00.
Таким образом, ОРС-код и быстрый АСДГС можно применить для построения математической модели эффективной ССШШ, которую определим следующим образом. Для защиты от атак коалиций мощности не более с(>2) математическую модель распространения данных из п. 1.1 модифицируем по схеме из п. 1.3 с помощью (г,£)-ОРС-кода C, обладающего свойством (3). Математическую модель коалиционной атаки сохраним в виде, описанном в п. 1.2. Под математической моделью защиты от коалиционных атак будем понимать следующий порядок действий контролера при обнаружении пиратского вектор-номера wedescc(C)\C: подать w на вход АСДГС с управляющим параметром t=[r/c] и получить на выходе список легальных вектор-номеров из коалиции. Отметим, что помимо возможности организации эффективного поиска злоумышленников в данной модели исключается возможность прямой компрометации невиновных пользователей.
Практической реализации эффективной схемы специального широковещательного шифрования посвящены работы [9, 10].
3. Исследование границ применения ССШШ.
Формулировка основных результатов
Выше приведено достаточное условие (3) наличия с-ТА-свойства у МДР (г,£)-кода, при нарушении которого не гарантируется правильная работа эффективной ССШШ. Введем классификацию различных случаев нарушения условия (3).
Пусть С - ОРС-код, г00 определено равенством (4). Рассмотрим множества, называемые далее областями компрометации кода С\ а1{С)={с&ы1\
ЗС0есоа1с(С\{у}) 3>се<1е8с(Со)\Со: (Цу,м>)<гж}, □!'(С)={сеМ: 3уеС ЗС0есоа1с(С\{у}) Зм;ес1е8с(Со)\Со: (Цу,м>)<гж}.
Область компрометации О: (С) (соответственно □/(О) кода С - это множество мощностей таких коалиций, у которых существует возможность компрометации любого (соответственно некоторого) невиновного пользователя в результате применения списочного декодера Гурусвами-Судана к потомку коалиции. Под компрометацией пользователя декодером далее будем понимать существование такого потомка из descc(C), что применение к нему декодера дает список, включающий вектор-номер данного пользователя.
Теперь рассмотрим произвольный линейный код С. Пусть
□2(С)={сеМ: VveC ЭС0есоа1с(С\{у}) Э>се<1е8с(Со)\Со \/иеС0: с1(у,м>)<с1(м>,и)},
П2'(С)={сеМ: 3уеС ЗС0есоа1с(С\{у}) 3>сеае8с(Со)\Со \/иеС0: с1(у,м>)<с1(м>,и)}.
Область компрометации С12(С) (соответственно □2'(С)) кода С есть множество мощностей таких коалиций, при которых для каждого (соответственно для некоторого) из кодовых слов существует коалиция, у которой хотя бы один из потомков расположен не далее от данного кодового слова, чем от любого элемента коалиции.
Для произвольного линейного кода С рассмотрим еще две области компрометации: □3(С)={сеМ: VveC ЭС0есоа1с(С\{у}): уес1е8с(Со)\Со}, □з'(0={с£М: 3уеС ЗС0есоа1с(С\{у}): уес1е8с(Со)\Со}. Область ') (соответственно 03'(0) кода С есть множество мощностей таких коалиций, при которых для каждого (соответственно для некоторого) из кодовых слов существует коалиция, у которой хотя бы один из потомков является данным кодовым словом.
Отметим, что С22'(С) есть множество таких значений се.Ы\, для которых код С не обладает с-ТА-свойством, а Оз'(С) - с-БР-свойством.
Очевидно, множества 0,(С) и (!/((') имеют вид: □,(С)={ад;...;|С|}, 0/(С)={Л/(С);...;|С|}, гдеВД и Щ(С) - целочисленные величины, называемые далее
рубежами областей компрометации О^С) и 0/(С) соответственно.
Непосредственно из определений вытекает справедливость вложений Ш( ')сС12(<''). £13'(С)<^£12(С) и П,{С)сО/(С), а вложения 02(Г)с0,(Г) и □2'(Г)сО|'С") являются следствиями сформулированной ниже теоремы 2.
Пусть С - (г,£)-ОРС-код; Б0(С) - нижняя граница наличия с-ТА-свойства у кода С (см. (3));
г +к-1
Bi(C) = Bo(C) + 1 = Г Jr l(k-1) 1; B2(C) =
2(k-1)
В3(С) = [ г/(к-1)1
Лемма. Пусть г > к, С - (г,к)-ОРС-код. Имеют место следующие неравенства: 2 < Н\(С) < В2(С) < В3(С).
При этом: 1) равенство Bi(C)=B2(C) достигается тогда и только тогда, когда к-1<г<3(к-1); 2) равенство В2(С)=В3(С) достигается тогда и только тогда, когда к-1<г<2(к-1).
Сформулируем основные результаты о границах применения ССШШ.
Теорема 1. Пусть С - МДР (г,к)-код. Тогда В3(С) <
Теорема 2. Пусть С - (г,к)-ОРС-код. Тогда
Rl'(C)=Rl(C)=Bl(C) < R2'(C)=R2(C)<B2(C) < R3'(C)= =R3(Q=B3(Q.
Из леммы и теоремы 2 видно, что при к-\<г<3(к-\) выполняется Ri(C)= R2(C)=B2(C), а при к-\<г<2(к-\) имеет место равенство R\(C)=R2(C)=R3(C).
Литература
1. Berkovits S. How to Broadcast a Secret // In Advances in
Cryptology - EUROCRYPT '91 (LNCS 547). Hamburg, 1991. P. 535-541.
2. Chor B., Fiat A., Naor M. Tracing Traitors. // In Advances
in Cryptology - Crypto '94 (LNCS 839). Hamburg, 1999. P. 257-270.
3. Staddon J.N., Stinson D.R., Wei R. Combinatorial properties
of frameproof and traceability codes // IEEE Trans. Inf. Theory. 2001. Vol. 47. P. 1042-1049.
4. Silverberg A., Staddon J., Walker J. Application of list de-
coding to tracing traitors // In Advances in Cryptology -ASIACRYPT 2001 (LNCS 2248). Hamburg, 2001. P. 175192.
5. Guruswami V., Sudan M. Improved decoding of Reed-
Solomon and algebraic-geometric codes // IEEE Trans. Inf. Theory. 1999. Vol. 45. P. 755-764.
6. Основы криптографии / А.П. Алферов [и др.]. М., 2005.
7. Шнайер Б. Прикладная криптография. Протоколы, алго-
ритмы, исходные тексты на языке Си. М., 2002. 816 с.
8. Мак-Вильямс Ф.Д., Слоэн Н. Дж. Теория кодов, исправ-
ляющих ошибки. М., 1979. 744 с.
9. Мкртичян В.В. Компьютерная модель схемы специаль-
ного широковещательного шифрования на основе кодов Рида-Соломона и списочного декодера Гурусвами-Судана // Информационная безопасность: материалы IX Междунар. науч.-практ. конф. Ч. 2. Таганрог, 2007. С. 111-115.
10. Мкртичян В.В. О реализации программного модуля
детерминированного списочного декодера Судана для кодов Рида-Соломона // Вестн. ДГТУ. 2007. Т. 7, № 3. С. 270-275.
Поступила в редакцию
29 января 2008 г.