О разветвлениях криптографических функций на преобразования с заданным признаком

2012 Теоретические основы прикладной дискретной математики №1

УДК 519.6

О РАЗВЕТВЛЕНИЯХ КРИПТОГРАФИЧЕСКИХ ФУНКЦИЙ НА ПРЕОБРАЗОВАНИЯ С ЗАДАННЫМ ПРИЗНАКОМ

К. Г. Когос, В. М. Фомичев

Национальный исследовательский ядерный университет (МИФИ), г. Москва, Россия

E-mail: fomichev@nm.ru

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

Ключевые слова: степень разветвления, признак в полугруппе, генераторы гаммы с неравномерным движением, генератор с перемежающимся шагом.

Анализ криптографических систем алгебраическими методами состоит в разработке методов решения систем алгебраических уравнений (САУ) и оценке вычислительной сложности их решения. Известно, что от решения нелинейной САУ можно перейти к решению нескольких линейных систем (СЛАУ) путем фиксации константами нескольких переменных. Вместе с тем не только линеаризация систем уравнений представляет интерес для анализа криптографических свойств, важно свести САУ к системам уравнений определенного вида, левая часть которых задает преобразования, имеющие заданный признак [1, гл. 9].

Целью работы является обобщение понятийного аппарата, связанного с разветвлением функций на линейные подфункции [2], для разветвлений функций специального вида на преобразования, имеющие заданный признак, и исследование криптографических характеристик функций, реализуемых в некоторых генераторах гаммы с неравномерным шагом.

При натуральных n, m рассмотрим множество Фп,т всех отображений Vn ^ Vт, n > m, V = {0,1}. Пусть функция g Е Фп,т задается системой координатных функций |gi(xi,... , xn),... , gm(xi,... , xn)}. Определим умножение булева монома и = .. .-xip

степени p на отображение g Е Фп,т:

И " g (x1, . . . , xn) {^ ' g1 (x1, . . . , xn) , ... , И' " gm (x1, . . . , xn) }.

Обозначим через g£1b"'Xlfcfc (xk+1,... , xn) ограничение функции g на множество (а1,... , ak, xk+1,... , xn). Здесь а1,... ,ak — фиксированные значения; xk+1,... , xn — булевы переменные. Сформулируем обобщение теоремы о разложении булевой функции по переменным на отображения из множества Фп,щ, .

Теорема 1. Для любой функции g Е Фп,щ, выполнено равенство

g(x1,... , xn) = 0 xT1  ...  xlk  gax(xk+1,... , xn).

(CTl,...,CTfc )eV k

Итак, множество подфункций {g(a1,... , ak, xk+1,... , xn) : (a1,... , ak) Е Vk} однозначно задает отображение g : Vn ^ Vm при любом k и любом наборе фиксируемых

координат. Будем говорить, что отображение д Е Фп,т разветвляется на отображения

Рассмотрим случай, когда фиксируется к = п — т переменных. Тогда отображение д разветвляется на преобразования множества Vт. Набор номеров фиксируемых переменных обозначим I, то есть I = {^,... , гга-т}, где {*1,... , гга-т} С {1,... , п}, а набор фиксируемых переменных обозначим х(1), то есть х(1) = {ж^ , . . . ,Жгп_т }.

Определение 1. Степенью I-разветвления отображения д Е Фп,т называется число различных преобразований Vт ^ Vт, полученных при фиксации всевозможными наборами двоичных констант набора переменных ж(1); обозначается ж/(й).

Напомним основные определения теории признаков в полугруппах [1, гл. 9].

Пусть О — конечная полугруппа, ее систему образующих обозначим через Б = = {в1,...,5р} С О, р Е N, О = (Б). Известно, что произвольный элемент д полугруппы О представляется словом в алфавите Б. Признаком Н (Н-признаком) в полугруппе О называется подмножество Н полугруппы О, состоящее из всех элементов О, обладающих определенным свойством. Элемент д полугруппы О имеет признак Н, если д Е Н. Непустое множество Я С О имеет Н-признак, если Я П Н = 0; Я не имеет Н-признака или имеет пустой Н-признак, если Я П Н = 0. Признак Н в Я называется тривиальным, если |Я П Н| = 1 (нетривиальным, если |Я П Н| > 1).

Определение 2. Пусть при всех фиксациях набора переменных ж(1) функция д Е Фп,т разветвляется только на преобразования, имеющие признак Н. Тогда набор ж(1) назовем вполне Н-сводящим функцию д, а число различных преобразований Vт ^ Vт, полученных при фиксации всевозможными наборами двоичных констант набора переменных ж(1) и имеющих признак Н, назовем степенью (1,Н)-разветвле-ния функции д и обозначим жд^я).

Определение 3. Пусть при всех фиксациях набора переменных ж(1) функция д Е Фп,т разветвляется только на линейные преобразования. Тогда набор ж(1) назовем вполне линеаризующим функцию д, а число различных линейных преобразований Vт ^ Vт, полученных при фиксации всевозможными наборами двоичных констант набора переменных ж(1), назовем степенью линейного I-разветвления функции д и обозначим Л/ (д).

Пусть N = {1,... , п}, где п — натуральное число.

Определение 4. Степенью разветвления функции д называется шт{ж/(д)},

где минимум берется по всем наборам ж(!) порядка п — т, эта величина обозначается ж(д).

Определение 5. Степенью Н-разветвления функции д называется шт {ж/

1 С^п

порядка п — т, эта величина обозначается ж(д, Н).

Определение 6. Степенью линейного разветвления функции д называется шт {Л/(д)}, где минимум берется по всем наборам ж(!) порядка п — т, вполне ли-

1 С^п

неаризующим функцию д, эта величина обозначается Л(д).

Заметим, что если Н есть моноид всех преобразований множества Vm, то ж/(д, Н) = ж/(д), ж(д, Н) = ж(д). Если Н есть полугруппа всех линейных преобразований множества Vm, то ж/(д, Н) = Л/(д), ж(д, Н) = Л(д).

Далее без потери общности считаем, что фиксируются первые п — т переменных, то есть ж1,... , жп-т.

Для любой функции д Е Фп,т, которая разветвляется только на преобразования, имеющие признак Н, справедлива универсальная оценка степени (I, Н)-разветвления:

1 ^ ж/(д, Н) ^ шт(2га-т, |Н|).

Отметим, что нижние и верхние границы достижимы:

1) ж/(д, Н) = 1, если функция д при любом опробовании сводится к единственному преобразованию из множества Н;

2) ж/(д, Н) = 2п-т, если 2п-т ^ |Н| и различны все преобразования из множества Н, на которые разветвляется функция д;

3) жн(д) = |Н|, если 2п-т ^ |Н| и каждое преобразование из множества Н соответствует хотя бы одному опробованию набора переменных ж(!).

В частности, справедливы тривиальные оценки степени I-разветвления и степени линейного I-разветвления:

1 ^ Ж/

1 ^ Л/(д) ^ шт(2га-т, 2т2).

Для криптографических приложений представляет интерес описание класса функций из Фп,т, для которых оценка степени (I, Н)-разветвления существенно ниже, чем в (1).

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

Рассмотрим генератор «$-т шагов» [1, с. 316], представляющий собой двухблочную схему, где управляющий автомат есть фильтрующий генератор на базе ЛРС-1 (линейного регистра сдвига,) длины п с фильтрующей булевой функцией f (ж), а генерирующий автомат есть ЛРС-2 длины т (с одной из ячеек которого снимается гамма), продвижение информации в котором зависит от управляющего знака, поступающего от ЛРС-1.

Обозначим ж = (жг,п, . . . , жгд), уг = (уг,т, . . . , Угд) состояния ЛРС-1 и ЛРС-2 соответственно в *-м такте, * = 1, 2,...; ж1 = ж, у1 = у — их начальные состояния. Уравнения гаммообразования генератора имеют вид

Тг у<г(г,ж),1,

где а(г,ж) —суммарная «глубина продвижения» ЛРС-2 после первых * тактов функционирования:

а

^=1

Ключом генератора являются начальные состояния ЛРС-1, ЛРС-2, а также функция усложнения f. Заметим, что состояние ЛРС-2 после I тактов функционирования зависит от поступившей от ЛРС-1 управляющей последовательности длины I и начального состояния ЛРС-2.

Зададим отображение ф следующим образом: ф Е Фт+г,т, а именно ф отображает множество управляющих последовательностей длины I и множество начальных состояний ЛРС-2 во множество состояний ЛРС-2 после I тактов функционирования генератора. Зафиксируем множество управляющих последовательностей и рассмотрим преобразования, на которые разветвляется отображение ф. Таким образом, I = {1,...,/}, далее индекс I опускаем.

Теорема 2. Справедлива оценка степени линейного разветвления отображения ф:

Л

Доказательство. Пусть д — линейная подстановка, реализуемая за один такт генерирующим ЛРС-2. При фиксации начального состояния ж ЛРС-1 соответствующая управляющая последовательность длины I определяется однозначно и функция ф совпадает с линейным преобразованием дст(1,ж) множества Vm. Следовательно, степень линейного разветвления функции ф не превосходит числа различных значений, которые принимает величина а(/,ж). В соответствии с (2) значение а(/,ж) зависит только от веса управляющей последовательности длины /. Таким образом, Л(ф) ^ I + 1.

Данный результат в общем случае допускает уточнение, так как в теореме не учитываются структурные свойства управляющей последовательности, а именно то, что она может быть, например, линейной рекуррентной последовательностью. С целью уточнения полученных результатов реализован вычислительный эксперимент. На языке С+—Н написана программа, реализующая фильтрующий генератор (управляющий блок генератора «$-т шагов») на базе ЛРС-1 длины 17 с функцией обратной связи, соответствующей примитивному многочлену 1фж3фж17, что обеспечивает максимальную длину периода ЛРС-1. Фильтрующая функция генератора f (ж) = ж1 ж2 Ф ж17 сбалансирована в силу линейности по ж17. В результате выполнения программы для ЛРС-1 получено, что функция «число единиц в выходной последовательности длины 210» при различных ненулевых начальных состояниях принимает всего 157 значений. Заметим, что данное значение существенно ниже верхней границы неравенства (3).

Усложнением генератора «$-т шагов» является генератор с перемежающимся шагом [1, с. 318]. Его гамма образуется как сумма гамм двух генераторов «стоп — вперед» с генерирующими ЛРС-2 и ЛРС-3 длин т и г соответственно. Оба генерирующих регистра имеют общий управляющий блок — фильтрующий генератор с фильтрующей булевой функцией f (ж) на базе ЛРС-1 длины п.

Обозначим ж» = (ж*,™,... ,жм), у» = (уг,т,... ,Ум), г = (^,... ,2^,1) — состояния ЛРС-1, ЛРС-2 и ЛРС-3 соответственно в *-м такте, * = 1, 2,...; ж1 = ж, у1 = у, г1 = г — начальные состояния регистров. Уравнения гаммообразования генератора имеют вид

Т» у<г(г,ж),1 Ф гг-<г(г,ж),1,

где а(г,ж) —суммарная «глубина продвижения» ЛРС-2 после первых * тактов функционирования:

г

а(г,ж) = Е f (ж^).

^=1

Ключом генератора являются начальные состояния ЛРС-1, ЛРС-2, ЛРС-3, а также функция усложнения f. Состояния ЛРС-2, ЛРС-3 после I тактов функционирования зависят от поступившей от ЛРС-1 управляющей последовательности длины I и начальных состояний ЛРС-2, ЛРС-3.

Зададим отображение п Е Фт+г+г,т+г следующим образом: п отображает множество начальных состояний ЛРС-2, ЛРС-3 и множество управляющих последовательностей длины I во множество состояний ЛРС-2, ЛРС-3 после I тактов функционирования генератора. Зафиксируем множество управляющих последовательностей и рассмотрим преобразования, на которые разветвляется отображение п. Аналогично теореме 2 доказывается следующая теорема.

Теорема 3. Справедлива оценка степени линейного разветвления отображения п:

Л(п) ^ I + 1.

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

ЛИТЕРАТУРА

1. Фомичёв В. М. Методы дискретной математики в криптологии. М.: ДИАЛОГ-МИФИ, 2010. 424 с.

2. Логачёв О. А., Сальников А. А., Ященко В. В. Булевы функции в теории кодирования и криптологии. М.: МЦНМО, 2004. 470 с.