ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА
2008 Математические методы криптографии № 2(2)
УДК 519.7
СВОЙСТВА НЕКОТОРЫХ АЛГОРИТМОВ ШИФРОВАНИЯ ФЕЙСТЕЛЯ ОТНОСИТЕЛЬНО ДВУХ ГРУПП СПЛЕТЕНИЯ1
М.А. Пудовкина
Московский инженерно-физический институт (государственный университет)
E-mail: [email protected]
Одной из наиболее часто встречающихся конструкций, применяемой при синтезе блочных алгоритмов шифрования, является схема Фейстеля. В работе исследуются свойства некоторых алгоритмов шифрования на основе схемы Фейстеля относительно двух групп сплетений. Описаны слабости такого класса алгоритмов шифрования.
Ключевые слова: алгоритм шифрования Фейстеля, сплетения групп подстановок, импримитивная группа.
Одной из наиболее часто встречающихся конструкций, применяемых при синтезе блочных алгоритмов шифрования, является схема Фейстеля. Напомним (см., например, [1]), что схема Фейстеля задается преобразованием g%k : Vm xVm ^ Vm xVm , g%k : (а,P) ^ (P,рПк ® a), где Vm - множество всех m-мерных двоичных
векторов над полем GF(2), nk:Vm^ Vm, ke Vm, ® - операция векторного сложения в Vm. Преобразование пк зависит от ключа k. Алгоритмы шифрования на основе схемы Фейстеля будем называть алгоритмами шифрования Фейстеля.
Групповые свойства алгоритмов шифрования Фейстеля приведены, например, в работах [2 - 4]. Так, в [4] рассматривался случай, когда подстановка принадлежит импримитивной группе, и строилась система блоков импримитивности для алгоритма шифрования DES с измененными s-боксами.
Две импримитивные группы S2 iS^n-! и S ! IS2 большого порядка, которые максимально близки к
примитивным группам, неоднократно возникали в различных смежных областях, например в работе [5] при классификации групп автоморфизмов графов орбиталов подсхем схемы Хемминга и в работе [6]. Поэтому представляет интерес рассмотреть свойства алгоритмов шифрования Фейстеля с подстановкой пк, принадлежащей двум этим группам.
В данной работе исследуются свойства алгоритмов шифрования Фейстеля таких, что
п € {2 iS^m-i,S^m-i iS21 ,а e {(P ® k)n,pn ® k} для всех k, Ре Vm. Описаны слабости такого класса алгоритмов шифрования. Получено, что если П € S2m-1 JS2, то по шифртексту возможно получить некоторую
информацию об открытом тексте без знания ключа. Если же П€ S2 JS2m-1, то на множестве ключей можно
ввести отношение эквивалентности, и задача определения ключа сводится к проблеме нахождения какого-нибудь представителя из класса эквивалентности, которому принадлежит ключ.
Всюду ниже придерживаемся следующих обозначений: S(X) - симметрическая группа подстановок на
множестве X, N - множество натуральных чисел; meN; n = 2m; a,b = a, a +1,..., b, a < b; Фп = {fn e S(Vm x Vm ) | f : (a, P) ^ (P, рп ® a)} - множество алгоритмов шифрования Фейстеля; e - тождественная подстановка, g =s-1gs для подстановок g, seS(X).
Будем отождествлять 2-адическое представление элемента a с представлением его в виде двоичного вектора.
1. Свойства алгоритмов шифрования Фейстеля относительно группы S2 iS^m-\
Если подстановка neS(Vm) фиксирована, fn е Фп и аПк e {(a® k)п,ап ® к} для любого aeVm, то будем использовать обозначение f = fk.
Рассмотрим двоичную последовательность а = а1а2
i 1, если i = 1,2 (mod3),
a = \
[0, если i = 0 (mod3),
являющуюся решением рекуррентного соотношения a, = a;_i® ai-2 в GF(2), a0 = 0, ai = 1, i = 2, 3, ...
1 Работа выполнена при поддержке гранта Президента РФ НШ №4.2008.10.
Утверждение 1. Пусть пе £2 1, /к еФ„ , аПк е {(а ® к)п, ап ® к} для любого ке Кт. Тогда
1) пк € ^2 ^-$2т-1 для любого ке ¥т;
2) (а, р)Пífi ®6í = f а(1} ® £ а,_г0, р(/} ® £ al_i+10г I, (1)
1
где /еЛ, (а, Р)'-1 к = (а(/), Р(/)) и 0г- е {6,1}, г = 1,1.
Доказательство. 1) Включение 5 € Б2 IБ т-1 выполняется тогда и только тогда, когда (а ® I)4 = а4 ® 1 для любого ае¥т. Очевидно, что (а® 1)п ®к = (а®к)п ® 1 для любого ке¥т. Следовательно,
пк е $2 -С^2™-! .
2) Пусть 0г- е {0,1}, г = 1, 2,... Рассмотрим последовательность yi = у^ ®у^2 ® 0» Уо = .У-1=0, г = 1, 2, ...
г
Методом математической индукции нетрудно показать, что уг = ^ аг_7-+107- .
]=1
Равенство
I
(а, ру-1 k®9г = ((Z} Ф (_1, P(Z} Ф y¡)
доказывается применением метода математической индукции с учетом следующих соотношений:
А фа / пт, \ Г(р,((к 0 0,) 0р)п 0 а) _
(а,р) А®е1 = (р,р А®01 0а) = и ' = (р,в к 0а 00,) =
V > 1(р,(рп 0(к00!))0а)
= (а(1), р(1) 0 0!) = (а(1) 0 у, Р(1) 0 У,) = (а 0 0!, Р)4,
2
(а,р)п1 /кк®0 = (р"к1 ФаФ01,(р"к1 Фа)”‘2 ФрФ01 Ф02) = (а(2) Фу1,р(2) Фу2). Утверждение доказано.
Ключи, принадлежащие одному блоку импримитивности Ak = {k, к © 1}, k е {0,2m 1 -1}, группы S2 íS2m-i, будем называть 1-эквивалентными; также ключи kk<¡j^) е Vj , j = 1, 2, будем называть 1-эквивалентными, если k(1), *Р - 1-эквивалентны для любого i е {1, /} . Очевидно, что отношение 1-эквивалентности на множестве Vml является отношением эквивалентности.
Предположим, что для l-раундового алгоритма шифрования Фейстеля с раундовыми функциями
f , i = 1,l, удовлетворяющими условиям утверждения 1, ключи kj, ..., ki выбираются случайно независимо
kj
и равновероятно из Vm. Опишем эквивалентные ключи такого алгоритма, где ключи считаются эквивалентными в смысле стандартного определения (см., например, [7]).
Следствие 1. Пусть выполнены условия утверждения 1, I > 2, к = (кk¡) е Vml. Пусть также
0 = (0Ь ., 0i), 0' = (0'ь ., 0'1) - произвольные векторы из {б,!}1. Тогда ключи k + 0, k + 0'эквивалентны,
1-1 ^
если выполняются равенства: ^ a-i (0г- Ф0г-) = 0 и 0i = 0/. Число эквивалентных ключей, являющихся также
i= 1
1-эквивалентными, равно 21-2.
1-1 ^
Доказательство. Условия £ a1-i (0i Ф0г-) = 0 и 0i = 0/ непосредственно следуют из равенства (1). Под-
i=1
считаем число эквивалентных ключей, являющихся также 1-эквивалентными, равное числу решений урав-1-1 ^ ^
нения £ a¡-i0i = 0 , и 0/ = 0 , где 0¡ = 0; ©0/ € {0,1} . Поскольку число нулей в последовательности
i= 1
I— ^
, то число решений уравнения £ aI—i 0 i = 0 равно
i=l
a j, ., a/_j равно
, а число единиц - i -1 -
i -1
l-l i-1-!^I-1 /2
2^ 3 J • 2 1 3 J = 2 . Следствие доказано.
60
М.А. Пудовкина
Следующий алгоритм при фиксированном открытом тексте (аь Pi), ..., (at, pt)eV2m и соответствующем шифртексте (а(/), Р(/)),...,(а(1), Р(/)), l > 1, полученном на неизвестном ключе k = (kkl) е Vml, позволяет уменьшить трудоемкость определения ключа k по сравнению с полным перебором.
Пусть i > 1. На i-м этапе опробования по схеме выбора без возвращения из множества всех блоков импримитивности A = {A(k), k = 0,2m-1} упорядоченно выбираем l блоков, ,..., г/г). Полагаем
= k (;),...,k\li = k (;■), где k- j-й опробуемый ключ на i-м этапе, k (/) - произвольный элемент из
ri ri rj
), j = 1,1. Если (aj,Pj) kl°'"k/() = (aj’i),pj0) e {(ajZ),{),(a(1),P(0) + l}, где }•) k(0 = П fk(t) , для
1 l j=1 j
любого j e {1,1}, то найден представитель k(i) = (k(i),..., k\li) класса 1-эквивалентности, содержащего истинный ключ. В противном случае переходим к этапу i+1.
Из следствия 1 следует способ нахождения ключа из класса эквивалентности, содержащего истинный ключ, по данному представителю k= (k(i),..., kz(i)) класса 1-эквивалентности, которому принадлежит к. Для этого
- если Ру ^ = Ру,г), то полагаем k = kz(i), иначе kz = kz(i) +1;
- если aj ^ = aj ,г), то полагаем kz-1 = kz(-1 , иначе kz-1 = kz(-1 + 1 ;
- полагаем kj = kj , j = 1,1 - 2 .
Трудоемкость предложенного алгоритма равна 2(т ) э.о. и в 2 раз меньше трудоемкости полного перебора, равной 2/м э.о., где э.о. - элементарная операция.
2. Свойства алгоритмов шифрования Фейстеля относительно группы £2Я-1 I £2
Пусть (а,Р))к = (Р,а® Р"к). Для векторов (а, Р)еКм, удовлетворяющих сравнению ||а|| = ||Р|| (шоё2), будем использовать обозначение а~2р. Также обозначим
(а, р) —— (а', РО,
если (а, Р)^ = (а(/), Р(/1),/еФ„, и а(1) ~2а' , Р® ~2 Р'.
Утверждение 2. Пусть п е £2т-1 ¡Б2, /к еФи , аПк е {(а ® к)п, ап ® к} для любого ке Км. Тогда для лю-
бого натурального числа / и любых к, ., кеУт справедливо включение:
( 1 У
1.
2.
П fk. є S2„_1 iS2 , если l i 0 (mod3).
j=1 1 ) 2
ґ i A2
П fk. є S2n-1 i S2, если l = 0 (mod3).
I j=1 1 ) 2
Доказательство. Методом математической индукции нетрудно показать, что для любого і є N справедливы равенства:
(а да Л.,(3‘) (к к ,.,(3г) (
(а,р) -1 ^ >(аФ(кк31),вФ(к,...,к31)),
(а, р) А 'А,+1 >(р ф (к!кз;+1), а Ф р Ф ^3г+1) (к,..., кз;+1)),
(а, р) Лк +2 >(а Ф р Ф ^Рг'+2) (к!,..., кз;+2), а Ф +2) (к!,..., кЪ1+2)),
где ^(3г+у) : ^ {0,1} - некоторые аффинные функции, уе {0, 1, 2},уе {1, 2}.
Рассмотрим три случая. Если I = 0 (шоё3), то
(а,Р) ^ >(аФм^(/}(к;,...,к;),РФ}(к!,...,к,)) 1 >
(аФ}(к!,...,к,)Фм(/}(к!,...,к,),РФ}(к!,...,к,)ФМ,1}(к!,...,к,)) ~2 (а,Р).
Если / = 1 (шоё3), то
Г Г Г г
(а,р)----к1 >(рФЩ7)(к1к,),аФрФМ,)к,))------------------к''' к‘ >(а0 в 0М,)к,)0Щ7)(к1к,),
Г Г
) (к1к,) 0 а)------—-—>(м(1) (к1к,) 0 м1(,) (к1к,) 0 а, а 0 в 0 ) (к1,..., к,) 0 ) (к1,..., к,) 0
04° (к1,..., к,) 0 а 0 ^) (к,..., к,)) ~2 (а, в).
Если / = 2 (шоё3), то
Г Г Г г
(а, р)--к1"' к >(а 0 р 0 } (кк1), а 0 ^} (кк1))-----------"1 >(р 0 ^}(к,...,к,),
а 0 р 0 } (к!,..., к,) 0 ^} (к!,..., к,)) —*—^ (а, р).
Утверждение доказано.
Пусть gk = Д ../ , где преобразования /к. удовлетворяют условию утверждения 2 для всех у ё {1,/}, / > 1. Пусть также (аьРД ..., (а,, р() - неизвестный открытый текст длины г > 1, (а(/),Р(/)},....,(а(/),Р(/)) - известный шифртескт, где (а(1), Р(/1) = (а;, Р;)Як, г = 1, г.
Из утверждения 2 следует, что без знания ключа по известному шифртексту (а(/),Р(/)},...,(а(/),Р(/))
можно получить следующую информацию об открытом тексте:
2
1) если / = 0 (шоё3), то (а, Р) ———>(а, Р) и (а(1 ^, Р(/^(аг-, Р;) для любого г = {1, г};
3 2 _
2) если I Ф 0 (шоёЗ), то (а, Р) ——к—>(а, Р) и (а(1), Р(/1) ———>(аг-, Р;) для любого г = {1,г};
3) если / = 2 (шоё3), то Р(/) ©Ру1 ~2 аг- ©аи р(/^ ©р(Р ©а©а^^ ~2 Р; ©Р7- для любой пары
г, у е{1, г};
4) если / = 1 (шоё3), то а(1 1 ©а^1 ~2 Р; ©Р^, и р(/^ ©р^^ ©а(1^ ©а~2 а 1 ©а^ для любой пары
г, у е{1, г};
5) если / = 0 (шоё3), то а(/^ ~2 аг-, Р(/^ ~2 Рг- для любого г е {1,г}.
Утверждение 3. Для любых подстановок я = ($ь ^2)е5(Кт)х5(Кт), ле5(Км), справедливо равенство
(а, р)/П = ^р"2-1"1, (р"2-1п Ф а^ )'2 ^.
Доказательство следует из равенств
Следствие 2. В условиях утверждения 2, если s2 1s1 € S2m-1 JS2 и (а + P)i2 ~2 aS2 Ф pi2 для любых
а, P eVm, то
(а,в) >(р,pS2-lnS2 Фа).
В частности, если s2 е S2m-1 iS2 или s2eGLm, то соотношение (аФР)S2 ~2 аS2 Фр^2 справедливо для
любых а, Ре Vm.
Доказательство следует из утверждения 3.
ЛИТЕРАТУРА
1. Schneier B. Applied Cryptography, Protocols, Algorithms, and Source Code in C. Second edition. New York: John Wiley and Sons, 1996.
2. Pieprzyk J., ZhangX.M. Permutation generators of alternating groups // AUSCRYPT'90. 1990, LNCS 453.
3. Caranti A., Volta F.D., Sala M., Villani F. Imprimitive permutations groups generated by the round functions of key-alternating block ciphers and truncated differential cryptanalysis // Workshop on Coding and Cryptography, UC Cork. 2005.
4. Paterson K.G. Imprimitive Permutation Groups and Trapdoors in Iterated Block Ciphers // FSE'99. 1999. LNCS 1636.
5. Погорелов Б.А., Пудовкина М.А. Подметрики метрики Хемминга и преобразования, распространяющие искажения в заданное число раз // Труды по дискретной математике, АК РФ. 2007. Т. 10.
б. Погорелов Б.А., Пудовкина М.А. Линейные структуры групп подстановок векторных пространств // Труды 3-й Меж-дунар. конф. «Проблемы безопасности и противодействия терроризму, 2007». М.: МЦНМО, 2008.
7. ФомичевВ.М. Дискретная математика и криптология. М.: ЗАО «Диалог-МИФИ», 2003.