Научная статья на тему 'Оптимальные линейные приближения сетей Фейстеля. Оценка стойкости шифра sms4 к линейному криптоанализу'

Оптимальные линейные приближения сетей Фейстеля. Оценка стойкости шифра sms4 к линейному криптоанализу Текст научной статьи по специальности «Математика»

CC BY
172
29
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Шушуев Георгий Иннокентьевич

An approach to obtain the best linear approximations for Feistel networks is proposed. The resistance of the cipher SMS4 to linear cryptanalysis is investigated.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Optimal linear approximations for Feistel networks. Estimation for the resistance of the cipher SMS4 to linear cryptanalysis

An approach to obtain the best linear approximations for Feistel networks is proposed. The resistance of the cipher SMS4 to linear cryptanalysis is investigated.

Текст научной работы на тему «Оптимальные линейные приближения сетей Фейстеля. Оценка стойкости шифра sms4 к линейному криптоанализу»

ЛИТЕРАТУРА

1. RivestR., Shamir A., and Tauman Y. How to Leak a Secret // Proc. 7th Internat. Conf. on the Theory and Application of Cryptology and Information Security: Advances in Cryptology, 2001. P. 552-565.

2. Nakamoto S. Bitcoin: A Peer-to-Peer Electronic Cash System. http://bitcoin.org/bitcoin. pdf. 2009.

3. RivestR., Micali S., and Goldwasser S. A Digital Signature Scheme Secure against Adaptive Chosen-Message Attacks // SIAM J. Computing. 1988. V. 17. No. 2. P. 281-308.

4. Cramer R., Damgard I., and Schoenmakers B. Proofs of partial knowledge and simplified design of witness hiding protocols // LNCS. 1994. V. 839. P. 174-187.

УДК 519.7

ОПТИМАЛЬНЫЕ ЛИНЕЙНЫЕ ПРИБЛИЖЕНИЯ СЕТЕЙ ФЕЙСТЕЛЯ. ОЦЕНКА СТОЙКОСТИ ШИФРА SMS4 К ЛИНЕЙНОМУ КРИПТОАНАЛИЗУ

Г. И. Шушуев

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

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

Определение 1. Раундовая функция — функция вида F : (ZVm)n ^ Z^. Пусть F(X1,x2,..., Xn) = y, где y, Xi e zmm, i = 1, 2,... , n.

Как правило, раундовая функция сети Фейстеля удовлетворяет некоторым ограничениям, например, является простой (применяется в SMS4) или псевдо-простой (DES, TEA). Функция F называется простой, если F (Xi, X2,..., Xn) = G(X1 ® X2 Ф... Ф Xn) для некоторой функции G : Z^ ^ Z^-. Функция F называется псевдопростой, если F(X1,X2,... ,Xn) = G(L1(X1) ф L2(X2) ф ... ф Ln(Xn)) для некоторых функции G : Zmm ^ Zmm и набора функций L1,... ,Ln, где Li : Z^ ^ Z^-.

Определение 2. Линейным приближением функции F называется соотношение ^1 • X1 ф &2 • X2 ф ... ф bn • Xn = a • F(X1,..., Xn), (1)

выполняющееся с вероятностью 1/2 + е, где |е| ^ 1/2, a, bi Е Z^, i = 1, 2,... , n.

Величину е назовём линейным преобладанием соотношения или просто преобладанием. Вектор bi назовём маской для вектора Xi. Определим функцию

Яр : (йт)га+1 ^ К, действующую на масках 6^ ... , 6П, а следующим образом:

Яр(6Ь... ,6га,а) = 2 + е.

Функция Яр на масках 61,...,6П,а принимает значение вероятности, с которой выполняется соответствующее линейное приближение (1).

Утверждение 1. Если ^ является простой и Яр(61,... , 6П, а) = 1/2 + е, где |е| > 0, то выполняется 61 = 62 = ... = 6П.

Следствие 1. Пусть ^ является псевдопростой и Яр(61,..., 6П, а) = 1/2 + е, где |е| > 0. Тогда для некоторого набора функций /1,... ,/га выполняется /1(61) = /2(62) = = ... = /га(6га). При этом если одна из масок 6^ является нулевой, то 61 = ... = 6П = 0.

Следствие 2. Если ^ является псевдопростой и хотя бы одна из масок 61, 62, ..., 6П, а является нулевой, то

Яр(6ь...А,а) = (1- если 6‘ = 62 = - = 6” = а = °’

11/2 иначе.

Открытый текст обозначим через X0, промежуточный шифртекст после ¿-го раунда— через X1, где Xг Е ^т)га, г = 0,1,... На г-м раунде используется ключ Кг Е Щ?.

Определение 3. Линейным приближением раунда г называется соотношение

аг-1 ■ XГ-1 0 аг ■ Хг 0 аг = дг ■ Кг

выполняющееся с вероятностью 1/2 + ег, где ег > 0, аг Е Щ2, аг-1, аг Е (Щт)п, дг Е КТ-.

Линейное приближение раунда строится на основе линейного приближения раун-довой функции ^. Путём последовательного приближения раундов получаем приближение нескольких раундов шифра.

Определение 4. Линейным приближением р раундов шифра называется соотношение

а0 ■ X0 0 ар ■ Хр 0 а = д1 ■ К1 0 ... 0 д° ■ Кр, (2)

выполняющееся с вероятностью 1/2 + е, е > 0.

Если а0 совпадает с ар, то линейное приближение (2) называется замкнутым и имеет следующий вид:

а0 ■ X0 0 а0 ■ Xр 0 а = д1 ■ К1 0 ... 0 дР ■ Кр.

Лучшим линейным приближением шифра считается то, преобладание которого максимально. Как правило, число раундов сети Фейстеля довольно большое, а линейное приближение получается последовательным применением некоторого замкнутого линейного приближения и, если требуется, анализом ещё нескольких раундов. В данной работе для нахождения лучшего линейного приближения шифра предлагается найти лучшее замкнутое линейное приближение, а для этого нужно научиться их сравнивать. Для сравнения замкнутых линейных приближений с использованием рШ^-ир леммы [1] вводится раундовое преобладание.

Определение 5. Раундовым преобладанием линейного приближения p раундов назовём величину

є = (є ■ 21-p)p,

где є является преобладанием линейного приближения p раундов.

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

Проведена оценка стойкости шифра SMS4 (стандарт блочного шифр КНР для защиты беспроводных сетей WLAN [2]) к линейному криптоанализу.

Теорема 1. Замкнутое линейное приближение пяти раундов SMS4

а ■ X0 0 а ■ X5 = y ■ K4 0 7 ■ K5,

где а, X0,X5 Є (Z32)4, 7,K4,K5 Є Z|2 и маска а имеет вид (0, 0, 0,7), 7 = 0x0011ffba, является оптимальным.

Теорема 2. Минимальная трудоёмкость линейного криптоанализа девяти раундов блочного шифра SMS4 достигается при объёме статистики 284 и составляет 2115 зашифрований.

ЛИТЕРАТУРА

1. Matsui M. Linear Cryptoanalysis Method for DES Cipher // LNCS. 1994. V. 765. P. 386-397.

2. Diffie W. and Ledin G. SMS4 encyption algorithm for wireless networks — Cryptology ePrint Archive, Report 2008/329 // http://eprint.iacr.org/2008/329, 2008.

i Надоели баннеры? Вы всегда можете отключить рекламу.