Потоковые шифры над конечным кольцом

Раздел V

МЕТОДЫ И СРЕДСТВА КРИПТОГРАФИИ, СТЕГАНОГРАФИИ И СТЕГАНОФОНИИ

В.Г. Скобелев

Украина, г. Донецк, ИПММ НАН Украины

ПОТОКОВЫЕ ШИФРЫ НАД КОНЕЧНЫМ КОЛЬЦОМ

Введение. Актуальной проблемой современных информационных технологий является разработка высокоскоростных вычислительно - стойких шифров, допускающих эффективную, компактную и надежную программно/аппаратную реализацию. Естественный путь достижения этой цели - переход от чисто комбинаторных конструкций к конечным алгебраическим системам. Эта тенденция проявляется в том, что практически во всех современных стандартах шифрования присутствует фрагментарное применение теории конечных полей [1,2]. В пользу алгебраических моделей свидетельствуют и успехи применения хаотических динамических систем к решению задач преобразования информации [3]. Однако для шифров, построенных на основе таких систем над полем Я (или О ) возникают проблемы, связанные с ошибками округления. Для нивелирования этих ошибок естественно перейти к конечной алгебраической системе. Известно, что поле - специальный случай кольца. Наличие в кольце (в отличие от поля) делителей нуля дает возможность алгебраически охарактеризовать поиск в терминах процесса решения уравнений. Поэтому естественно строить шифры на основе динамических систем над конечным кольцом. Таким образом, в арсенале криптографии появляется новый класс потоковых шифров - нелинейные конечные автоматы над кольцом 2^ = (Ъ^к ,©,°), где р - простое число, к е N, а операции © и о определяются

равенствами: а © Ь = а + Ь(шо<! рк), а ° Ь = а  Ь(шо<! рк) для всех а, Ь е Zt . Исследование этого класса дает возможность выявить глубокие внутренние связи между криптографией, теорией систем [4] и теорией конечных автоматов [5-8]. Цель настоящей работы - обзор результатов, полученных в этом направлении в [9-13].

1. Основная модель. Рассмотрим инициальные БПИ-автоматы [14]

(М а ) • 1Ч'+1 = А ° Ч' ° ° Ь © С ° Ч' © 1 © Е ° х'+! (, е Ъ ) т

где а = (д(\...,д((П))т • х = (х,а)>---,и у( = (у(а),...,у((п))Т - состояние, входной и выходной символ в момент ,, Ь = (ЬЬ(п))т• d = (ёа),...,ё(п))т , А, С, Е, Е, Р - (п х п) -матрицы (Р - невырожденная матрица) и

1 у,+1 Е ° а,+1

где Е, С - невырожденные матрицы. Обратные им инициальные автоматы равны

<М|’а') • \х ,+1 = р-° СУ „во ° а,)

где С = СвЕ ° Р - ° С • Е = Е ° Р -, а в - операция, обратная операции © и

Ясно, что ((М, а) • (М ', а)) (М е {М1 ,М2}) - это симметричная потоковая шифрсистема с гаммированием на основе нелинейного автоключа, для которой секретный ключ - это параметры и начальное состояние а (рис. 1).

а)

Рис. 1. Шифрсистема ((М,а), (М \ а)): а) М = М1; б) М = М2

Охарактеризуем шифрсистему ((М, а) • (М ', а)) с позиции ее надежности. Контроль ошибок в процессе вычислений обеспечивается за счет кодирования линейным блоковым кодом, контролирующим ошибки [15], векторов а • У для автомата М и векторов а • х для автомата М 1. Механизм контроля ошибок в процессе передачи информации по каналу связи следующий. Пусть информация представлена словами в алфавите Ъ , а входной символ автомата М имеет вид

хТ = ( х,...,х), т.е. осуществляется п -кратное посимвольное дублирование ин-

п раз

формации. Поместим у адресата автомат (М 1, а ) , снабженный схемой коррекции состояния и схемой, осуществляющей вычисление функции переходов 8М (рис. 2). Мажоритарная схема на выходе автомата (М 1, а ) дает возможность обнаружить п -1 и исправить |_0.5  (п -1)] ошибок, возникших в процессе переда-

чи информации по каналу связи, а схема, осуществляющая вычисление функции переходов 8М - вычислить корректное состояние автомата М 1.

Рис. 2. Контроль ошибок в процессе передачи информации по каналу связи

Пусть (М3, я 0) и (М4, я о ) - такие инициальные БПИ-автоматы, определяемые, соответственно, соотношениями (1) и (2), что: 1) зафиксировано г (1 < г < п) упорядоченных пар (/А,д) (И = 1,...,г), где /Л,Дк е{1,...,п} и если И ф И2

(Их,Иг = 1,.,г), то фи Д фД; 2) в матрицах Е,О,F в клетках (гн,Д) (И = 1,.,г) расположены обратимые элементы кольца ^ 4, а во всех остальных клетках - нули; 3) входной алфавит автоматов М3 и М4 - это множество всех таких векторов х = (хх(п))Т е , что х0) = 0, если Д е{1,...,п}\{у;,...,Д} .

Перенумеровав компоненты векторов я, х, у, Ь, d , приведем представления (1) и (2) автоматов (М3, я0) и (М4, я0), соответственно, к виду

(Mз, qо):

(M4,qо):

где A

(i = 1,..., n), e, f, Si (i = 1,.,r) - обратимые элементы кольца Z t. Отметим, что при построении шифров на основе аналогов над кольцом Z t хаотических динамических систем модели (5) и (6) часто более удобны, чем модели (1) и (2).

Охарактеризуем построенные модели с позиции теории автоматов. При логарифмическом весе [16] емкостная сложность моделей (1)-(6) равна V = O(n2 • k-[logp]) (p,к, n ^ да), а емкостная сложность их представления автоматной таблицей равна V = O(p2kn • к -[log p] ) (p, к, n ^да). Если E - невырожденная матрица, то Mt - сильно связанный перестановочный автомат, у которого диаметр графа переходов (т.е. степень достижимости [7]) равен 1. Если же E - вырожденная матрица, то или M несвязен, или диаметр его графа переходов больше, чем 1. Ясно, что М2 - сильно связанный перестановочный автомат, у которого диаметр графа переходов равен 1. Если r = n, то M e{M3,M4} - сильно

q

q

v

[q

q

v

связанный перестановочный автомат, у которого диаметр графа переходов равен 1, а если г < п , то или М несвязен, или диаметр его графа переходов больше, чем 1. Пример 1. Аналог над кольцом к системы Лоренца [3] имеет вид

(М, Яо):

д^ =

С =

д, =

.у,+і = д

где а, Ь є Ъ^ - обратимые элементы кольца ^». Ясно, что (Мь, я0 ) - вариант автомата (М4, ).

2. Вычислительная стойкость модели. Рассмотрим наиболее сильные атаки на шифрсистему ((М, я0 ), (М 1, я )) (М є {М1,М2,Мъ,М4}). Достаточно исследовать сложность решения задач идентификации для автомата М1 (решение этих задач для автоматов М2, М3 и М4 осуществляется аналогичным образом).

Рассмотрим задачу параметрической идентификации автомата (М1, я ).

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

Так как подача на автомат

і-1 раз п-і раз

символа х = О идентифицирует і -й столбец матрицы О, то после п -кратного эксперимента высоты 1 идентифицируется матрица О. Так как подача на автомат (М1,0) символа х = ( 0,...,0,1,0,...,0)т (і = 1,.,п) идентифицирует і -й столбец матрицы

і-1 раз п-і раз

Е, то после п -кратного эксперимента высоты 1, идентифицируется матрица Е.

Подадим на автомат (М1,0) символ х = 0. Получим я = d . Подадим теперь на М; любой входной символ х2. Получим систему уравнений О ° d = у2©Е ° х . Если О - невырожденная матрица, то d идентифицируется единственным образом. Если О - вырожденная матрица, то число решений может быть велико и все дальнейшие действия необходимо производить по отдельности с каждым решением d. Таким образом, идентификация d с точностью, определяемой матрицей О, осуществляется простым экспериментом длины 2.

Подадим на автомат (М1,0) символ х = ( 0,.,0,1,0,.,0 )т (і = 1,.,п). По-

і-1 раз п-і раз

лучим я = d © е, где е - і -й столбец матрицы Е . Подадим теперь на М1 любой входной символ х. Получим систему уравнений О ° ^ © е) = У2©Е ° х , т.е. идентификация е с точностью, определяемой матрицей О, осуществляется простым экспериментом длины 2. Идентификация матрицы Е с точностью, определяемой матрицей О , осуществляется п -кратным экспериментом высоты 2.

Идентификация матриц А, В и вектора Ь сводится теперь к поиску входного слова х ---х заранее неизвестной длины I и начального состояния я0 с целью сформировать систему нелинейных уравнений

О°

В системе (8) каждый вектор (/ = 2,—,I -1) с помощью 1-го уравнения системы (1) выражается через А, Ь, С, ^ Е, , х, —, х,-1. После этого полученная сис-

тема нелинейных уравнений решается относительно А, В и Ь .

Предположим теперь, что экспериментатор при известном начальном состоянии ^ автомата М1 может управлять входом, но не может осуществлять инициализацию исследуемого автомата. Тогда осуществляется поиск входного слова X • • • х заранее неизвестной длины I с целью сформировать систему нелинейных уравнений (8), в которой каждый вектор (/ = 2,—, I -1) с помощью 1-го уравнения системы (1) выражается через А, Ь, С, ^ Е, , х,—, х,-1. После этого полу-

ченная система нелинейных уравнений решается относительно А, Ь, С, ^ Е, Е, О .

Пример 2. Решим задачу параметрической идентификации для автомата (Мх, ) (см. пример 1) при условии, что экспериментатор может управлять вхо-

дом и осуществлять инициализацию исследуемого автомата требуемое число раз.

Положим = (0,1,0)г и х = 0 . Найдем к из уравнения у = 1©к . Положим я0 = (0,0,0)г и X = 1. Найдем а из уравнения у © к о а = 0 . Положим = (1,0,0)г и х = 0 . Найдем а2 из уравнения у = к о а2. Положим = (1,0,0)г и хх = 00 . Найдем а из уравнения у = (1©к) о к о а2 © к о а2 о (10к о а). Положим Я0 = 0А1)Г и

XX = 00. Найдем а из уравнения у = (1©к) о к о (а©1) © к о (1©к о а) о (а2 © к о а ©1). Таким образом, рассмотренная атака является опасной для автомата (М1, ).

Решение задачи идентификации начального состояния автомата М в предположении, что при известных значениях параметров А, Ь, С, ^ Е, Е, О экспериментатор может управлять его входом, сводится к поиску входного слова х —X заранее неизвестной длины I с целью сформировать систему нелинейных уравнений (8). В системе (8) каждый вектор (/ = 2,—,I -1) с помощью 1-го уравнения системы (1) выражается через А, Ь, С, ^ Е, , х,—, х,-1. После этого получен-

ная система нелинейных уравнений решается относительно ^. Этот же метод может быть применен и в случае, когда экспериментатор может только наблюдать вход исследуемого автомата, но не может им управлять.

Заключение. В работе охарактеризован класс симметричных потоковых шифрсистем с гаммированием на основе нелинейного автоключа, для которых секретный ключ - это параметры и начальное состояние. Новизна подхода - выбор объекта исследования, т.е. нелинейного автомата над конечным кольцом Z ,.

рк

Прикладное значение полученных результатов состоит в том, что эти шифрсисте-мы допускают достаточно простую аппаратно-программную реализацию. «Взлом» таких шифрсистем сводится к решению задач идентификации для автомата М е {М1,М2,Мг,М4}. Решение этих задач основано на поиске, необходимом для конструирования соответствующей системы нелинейных уравнений, поиске ее решений (их число может быть экспонентой из-за наличия делителей нуля) и отбрасывании тех решений, которые не являются допустимыми. Для более тонкой оценки сложности решения этих задач необходим детальный анализ рассмотренного класса автоматов (включая исследование методов их декомпозиции), что представляет собой одно из возможных направлений дальнейших исследований.

Переход от поля ОЖ(р) к кольцу ^ к дает возможность выделить следующую

особенность, связанную с наличием делителей нуля, которую проиллюстрируем на примере автомата М1. Пусть £ - множество всех автоматов, определяемых системой (7) над кольцом Z^ , а £0 - множество таких автоматов М е £, что а, к е Z к - обратимые элементы кольца Z 4 (т.е. £ - это множество всех автоматов Мх). Поло-

жим М(р, к) = і^і • | я |-1. Тогда | 51 = р5к, | | = (р -1)2 • рък и

/л(р,к) = (р -1)2 • р 2. Отсюда вытекает, что: 1) хотя | £ | и | £ | при переходе от ОЖ(р) к Z к растут экспоненциально с ростом к , доля автоматов Мх - постоянная; 2) Нш /л(р, к) = 1 для всех к е N. Рассмотренные модели определены рекуррентными

соотношениями 2-й степени с лагом 1 над кольцом Z к. Даже среди аналогов модельных хаотических систем эти модели не исчерпывают класс кандидатов на построение симметричных потоковых шифрсистем над кольцом Z 4 с гаммированием на основе

нелинейного автоключа. В этой связи следует отметить следующие две модели, не укладывающиеся в рамки автомата М є {М1,М2,Мъ,Мл}. Во-первых, это аналог над кольцом Z к свободно бегущей системы [10]

где /(и) = у ° и ° (1©и), а а,у,д - обратимые элементы кольца Z к. Решение задач

идентификации для автомата Мга , кроме перечисленных выше трудностей, автоматически влечет необходимость решения задачи вычисления дискретного логарифма. Во-вторых, это аналог отображения Эно [9], определяемого следующими рекуррентными соотношениями 2-й степени с лагом 2 над кольцом Z к

где с - обратимый элемент кольца Z к. Если Ь - необратимый элемент кольца Z к, то задача идентификации начального состояния д й автомата Ма автоматически влечет перебор вариантов, обусловленных необходимостью поиска решения (д, д) системы уравнений

Исследование свойств шифрсистем, построенных на основе моделей, аналогичных автоматам М и М представляет собой второе из возможных направлений дальнейших исследований.

Модели, представленные алгебраическими уравнениями, дают возможность охарактеризовать вариацию поведения при вариации параметров и/или начального состояния. Например, для автомата М; вариация поведения при переходе от начального состояния я0 к начальному состоянию §0 характеризуется системой

(, є Ъ0) ,

Ь ° д0 = 1©а ° д2©у2 © с ° х2 Ь ° д = 1©а ° у 22 ©у © с ° хъ '

W,+i = G о Aq, 0 ,

где Aq = ~©q( и Ay(+1 = Ь(+1©У(+1 для всех t е Z0, а вариация поведения при переходе от параметров A, b, С, d, E, F, G к параметрам А, Ь, С, d, E, F, G - системой

ГAqt+1 = А о qt о Ef о b©A о q о qf о b © AC о E © С о Aq © Ad © AE о xt+1 ^ £ jy\

[Ay,+! = AG о ©G о Aq, ©AF о x,+i ,

где Au = u©u (u е {A,b, C, d,E, F, G}). Исследование такой вариации поведения -третье из возможных направлений дальнейших исследований. В заключение отметим, что программные реализации шифрсистем, построенных на основе ML, MrR , Mш и некоторых других аналогичных моделей экспериментально подтвердили перспективность предложенного подхода.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке СИ. - М.: ТРИУМФ, 2003. - 816с.

2. Харин Ю.С. и др. Математические и компьютерные основы криптологии. - Минск: Новое знание, 2003. - 382с.

3. Кузнецов С.П. Динамический хаос. - М.: Физматлит, 2001. - 296с.

4. КалманР. и др. Очерки по математической теории систем. - М.: Мир, 1971- 400с.

5. ГлушковВ.М. Синтез цифровых автоматов.- М.: Физматлит, 1962. - 476с.

6. Гилл А. Введение в теорию конечных автоматов. М.: наука, 1966. 272с.

7. ТрахтенбротБ.А. Конечные автоматы (поведение и синтез). - М.: Наука, 1970. - 400с.

8. КудрявцевВ.Б. Введение в теорию конечных автоматов. - М.: Наука, 1985.- 320с.

9. Скобелев В.Г., Тубольцева О.В. Шифр на основе отображения Эно // Вестник Томского университета. Приложение. 2005. -№ 14. - С.74-78.

10. Скобелев В.В. Симметрические динамические системы над конечным кольцом: свойства и сложность идентификации // Труды ИПММ НАН Украины. 2005.- Т. 10. - С. 184-189.

11. Скобелев В.Г. Нелинейные автоматы над конечным кольцом // Кибернетика и системный анализ (в печати).

12. Скобелев В.Г. Алгоритмы и сложность экспериментов с автоматами над конечными кольцами // Материалы 7-ой Международной Конференции «Дискретные модели в теории управляющих систем (ДМ-06) (Москва, МГУ, 4-6 марта 2006 г.)» (в печати).

13. Скобелев В.Г. Анализ системы Лоренца над кольцом Z t //Вестник Томского университета (в печати).

14. Курмит А.А. Автоматы без потери информации конечного порядка. - Рига: Зинат-не, 1972. - 266с.

15. БлейхутР. Теория и практика кодов, контролирующих ошибки. - М.: Мир, 1986. - 576с.

16. Ахо А. и др. Построение и анализ вычислительных алгоритмов. - М.: Мир, 1979. - 536с.

С.А. Дорошенко, А.М. Лубкин, Б.Я. Рябко, А.Н. Фионов

Россия, г. Новосибирск, СГУТиИ

ЭКСПЕРИМЕНТАЛЬНЫЙ АНАЛИЗ ШИФРА RC4 И ПОТОКОВЫХ ШИФРОВ, ВЫДВИНУТЫХ НА КОНКУРС ESTREAM1

ВВЕДЕНИЕ

Европейское криптологическое сообщество ECRYPT проводит открытый конкурс потоковых шифров - eSTREAM (ECRYPT Stream Cipher Project) [1]. На

1 Работа выполнена при поддержке Российского фонда фундаментальных исследований