MAGENTA — блочний шифр, розроблений Майклом Якобсоном і Клаусом Хубером для німецької телекомунікаційної компанії Deutsche Telekom AG. MAGENTA є скороченням від Multifunctional Algorithm for General-purpose Encryption and Network Telecommunication Applications (Багатофункціональний алгоритм для шифрування в загальних цілях і телекомунікаційних додатках).
Історія
Розробка MAGENTA почалася в 1990 році з основними принципами описаними в неопублікованій книзі. Основна ідея полягала в застосуванні простої техніки, без магічних таблиць, яка могла бути виконана як апаратно, так і програмно. Плани полягали в розробці чипа, який міг би передавати дані зі швидкістю до 1 Гбіт/c і використовуватися для шифрування в ATM. На жаль, апаратна реалізація не отримала поширення, як планувалося, через вузьке застосування, але, незважаючи на це, дослідження показали, що такий чип можливо розробити. MAGENTA брав участь в конкурсі AES в 1998 році, але вибув після першого раунду. Шифр став доступний учасникам конференції тільки в день презентації на відміну від інших шифрів, які брали участь у конурсі. MAGENTA використовувалася для шифрування даних всередині компанії Deutsche Telekom. Слід зазначити, що до MAGENTA швидке перетворення Фур'є в криптографічних цілях використовувалося в 2 шифрах. Конкретну назву першого не вдалося знайти. Але відомо, що він винайдений Жаном-П'єром Вассером і зареєстрований 2 червня 1959 року. Другим шифром є одна з реалізацій алгоритму A3 — Comp-128.
Шифрування
MAGENTA має структуру мережі Фейстеля. Раундова функція заснована на [en], за винятком того, що замість додавання і віднімання на кожному етапі до одного з доданків застосовується S-блок, що задається функцією f(x), і потім вони складаються по модулю 2.
Нехай множина . Розмір блоку вихідного тексту — 128 біт. Розмір ключа може приймати 3 значення:
- 128 біт : ,
- 192 біт : ,
- 256 біт : , де .
Нехай F — раундова функція. Шифр блоку M вираховується таким чином:
- 128 біт — ключ К розбивається на 2 частини — К1 та К2. Кількість раундів 6. Ключі застосовуються в такому порядку:
Раунд | 1 | 2 | 3 | 4 | 5 | 6 |
Застосований ключ | К1 | К1 | К2 | К2 | К1 | К1 |
- 192 біт — ключ К розбивається на 3 частини — К1, К2 та К3. Кількість раундів 6. Ключі застосовуютьсяу в таком порядку:
Раунд | 1 | 2 | 3 | 4 | 5 | 6 |
Застосований ключ | К1 | К2 | К3 | К3 | К2 | К1 |
- 256 біт — ключ К розбивається на 4 частини — К1, К2, К3 та К4. Кількість раундів 8. Ключі застосовуються в такому порядку:
Раунд | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
Застосованийй ключ | К1 | К2 | К3 | К4 | К4 | К3 | К2 | К1 |
Дешифрування
Слід зауважити, що послідовність застосованих частин ключа, є паліндромом. Нехай . Тоді
Таким чином, дешифрування
Раундова функція F
Вхідний блок X розміром 128 біт раунду n з раундовим ключем K n розбивається на 2 частини X1 та X2 розміром 64 біта кожна.
X = X1X2
Після проходження раунду отримуємо X' = X2F(X2Kn)
З залежності ділення вихідного ключа від кількості раундів: довжина частини ключа, що використовується в кожному раунді завжди дорівнює 64 бітам.
Отже, функція F приймає 128-бітовий аргумент і повинна повертати 64-бітний (8-байтовий) результат.
Введемо допоміжні функції, через які потім виразимо F:
Функція | Розмір прийнятих аргументів | Розмір поверненого значения | Опис |
---|---|---|---|
f(x) | 1 байт | 1 байт | Повертає елемент з номером x в S-блоці |
A(x, y) | 1 байт | 1 байт | f(x ⊕ f(y)) |
PE(x, y) | 1 байт | 2 байта | (A(x, y)A(y, x)) — конкатенує результати A(x, y) та A(y, x) |
П(X) | 16 байт | 16 байт | X=X0X1...X14X15 (PE(X0,X8)PE(X1,X9)...PE(X6,X14)PE(X7,X15)) - конкатенує результати PE(Xi,Xi+8) i=0...7, Xi має розмір 1 байт. |
T(X) | 16 байт | 16 байт | П(П(П(П(X)))) — застосовує до X 4 рази функцію П. |
S(X) | 16 байт | 16 байт | (X0X2X4…X14X1X3X5…X15) — виконує перестановку байтів X: спочатку записуються байти з парним порядковим номером потім з непарним. |
С(k, X) | k∈Ν X — 16 байт | 16 байт | Рекурсивна функція: С(1,X) = T(X)) С(k, X) = T(X ⊕ S(C(k-1,X))) |
Схема роботи функції П(X) :
F вважають рівною першим 8 байтам від S(C(n, (X2Kn))), тобто байтам C(n, (X2Kn)) з парних порядковим номером. Спочатку n припустили рівним 7, але тести показали, що в цьому випадку шифр можливо зламати. Тому потім припустили n = 3. Як показали тести, це найкращий вибір, який не допускає криптографічних слабкостей, які позначаються на всьому шифрі. Таким чином,
F вважають рівною першим 8 байтам від S(C(3,(X2Kn)))
S-блок
S-блок утворюється таким чином: Перший елемент — 1, наступні утворюються бітовим зсувом вліво попереднього, поки 1 не вийде за ліву межу байта. Відповідно початок блоку — 1 2 4 8 16 32 64 128
25610=1 0000 00002, 1 вийшла за межі байта. В цьому випадку потрібно скласти по модулю 2 отримане зсунуте число 0000 00002 з числом 10110=0110 01012:
0000 00002⊕ 0110 01012 = 0110 01012 = 10110,тобто після 128 стоятиме 101.
10110=0110 01012 << 1 = 1100 10102=20210, 1 не вийшла за межу, відповідно наступний елемент 202.
20210 << 1= 1100 10102 << 1 = 1001 01002, 1 вийла за межу:
1001 01002⊕ 0110 01012 = 1111 00012 = 24110.
Останній 256 елемент вважається рівним 0. В результаті виходить такий S-блок:
1 2 4 8 16 32 64 128 101 202 241 135 107 214 201 247 139 115 230 169 55 110 220 221 223 219 211 195 227 163 35 70 140 125 250 145 71 142 121 242 129 103 206 249 151 75 150 73 146 65 130 97 194 225 167 43 86 172 61 122 244 141 127 254 153 87 174 57 114 228 173 63 126 252 157 95 190 25 50 100 200 245 143 123 246 137 119 238 185 23 46 92 184 21 42 84 168 53 106 212 205 255 155 83 166 41 82 164 45 90 180 13 26 52 104 208 197 239 187 19 38 76 152 85 170 49 98 196 237 191 27 54 108 216 213 207 251 147 67 134 105 210 193 231 171 51 102 204 253 159 91 182 9 18 36 72 144 69 138 113 226 161 39 78 156 93 186 17 34 68 136 117 234 177 7 14 28 56 112 224 165 47 94 188 29 58 116 232 181 15 30 60 120 240 133 111 222 217 215 203 243 131 99 198 233 183 11 22 44 88 176 5 10 20 40 80 160 37 74 148 77 154 81 162 33 66 132 109 218 209 199 235 179 3 6 12 24 48 96 192 229 175 59 118 236 189 31 62 124 248 149 79 158 89 178 0
Заглиблюючись в теорію, можна підсумувати: Нехай є Поле Галуа GF(28) і багаточлен, який задає це поле — p(x)=x8+x6+x5+x2+1 і нехай α — примітивний елемент поля, p (α) = 0. Тоді елемент f (x) в S-блок за індексом x можна представити як
Властивості використовуваних функцій
f(x)
Протягом одного виконання MAGENTA функція f (x) обчислюється 2304 рази для ключів в 128 і 192 біта і 3072 рази для ключа в 256 біт. Так як функція являє собою нелінійну частину алгоритму, вона має особливу важливість для аналізу всього алгоритму. Наступні властивості f(x) відомі:
- F(x) — взаємно-однозначна функція, тобто перестановка над множиною B = {0,1} 8 — всіх восьмибітних двійкових векторів.
- Дана перестановка може бути представлена як результат дії 6 незв'язаних циклів довжини 198 38 9 5 5 і 1. Згідно комбінаторному аналізу, ці значення — «нормальні» і не мають значних розбіжностей з подібними циклами для випадкових перестановок. Єдине число, що залишається на місці — 161.
- ∀x ∈ B в такого, що f(x) ∈ {1,2,…127} виконано: f(x+1) = 2∙f(x), де ∙ — добуток десяткових чисел.
- ∀(x, y)∈B2 і таких, що f(x)∙f(y)∈{1,2,…255} виконано: f((x+y) mod 255) = f(x)∙f(y)
- Якщо розглядати f(x) як вектор-функцію, тобто f(x) = (f7(x), f6(x),…f0(x)), то кожна з 8 булевих функцій нелінійна та має степінь 7. Також всілякі нетривіальні XOR-комбінації цих функцій нелінійні. Ще одна цікава властивість полягає в тому, що кожна така функція має 128 доданків.
Криптоаналіз
Виявляється, принаймні частина MAGENTA може бути розкрита методами даного криптоаналізу. Різницеб між двома елементами (відкритими текстами або шифрами) береться складання по модулю 2 між цими елементами. Таке визначення різниці обумовлено частим використанням операції XOR в даному шифрі.
Рядкові індекси XOR-таблиці є всіма можливими різницями між відкритими текстами, а стовпцеві індекси — між шифротекстами. На перетині конкретної відмінності відкритих текстів, тобто рядкового індексу, і конкретної відмінності шифрів, тобто стовпчикового індексу, стоїть число пар відкритих текстів, які відповідають даним відмінностям, шифри яких розрізняються на стовпчиковий індекс. XOR-таблиця для функції f має розміри 256 * 256. Сума кожного рядка й стовпчика дорівнює 256. Перший елемент першого рядка (з індексом 0), що відповідає нульовій відмінності відкритих текстів і шифрів, дорівнює 256. Всі інші елементи першого рядка рівні 0. Аналогічно всі елементи 1 стовпчика, крім першого, рівного 256, рівні 0. Особливий інтерес для диференціального аналізу представляють великі значення — найбільше значення в цій таблиці дорівнює 8. Воно має місце при таких розбіжностях
Відмінності між відкритими текстами | Відмінності між шифрами |
---|---|
51 | 35, 66, 154, 155, 250 |
102 | 111, 114, 232, 233, 244 |
153 | 96, 97, 115, 229, 247 |
204 | 18, 19, 38, 207, 251 |
В інших осередках таблиці розташовані числа 0, 2, 4, 6. Максимальна ймовірність переходу для ненульових відмінностей — .
Для функції PE — також були визначені максимальні значення — вони дорівнюють 36 для різниці у відкритому тексті (234, 234) і нульової різниці шифрів. Максимальна ймовірність переходу— ≈ .
Максимальна ймовірність переходу для функції T — , для C(3,X) — . Так як число необхідних пар шифрів більше ніж величина, зворотна ймовірності переходу, даний тип диференціального аналізу, заснований на xor-таблицях, не застосовний до MAGENTA. Однак питання про інші типи залишається відкритим.
Лінійна апроксимаційна таблиця для S-блоку була обчислена.. Для функцій і для кожної xor-суми , як і для всіх лінійних функцій, було визначено, як багато цифр значень в таблиці узгоджується з відповідними цифрами розглянутих лінійних функцій. У підсумку вийшло 255 значень між 0 і 256. Нормування полягало в відніманні 128. Всі значення в таблиці лежали на відрізку [-24; 26]. Дані значення відповідають очікуваним для довільно обраних . Значення 26 виходить при наступних лінійних комбінаціях:
Застосована англ. Piling-up lemma|лема про набігання знаків до раундової функції F(, l=12)
Отримане значення є верхньою межею найкращого афінного перетворення для F. Приблизно пар відкритий текст — шифр потрібно, щоб використовувати афінне лінійне наближення з ймовірністю .З огляду на попередні результати, для атаки на F необхідно. Отже, завдяки нелінійності f (x), MAGENTA не вдасться зламати атаками, заснованими на лінійному криптоаналіз.
Примітки
- K. Huber. Neue Kryptographische Verfahren durch Kombination von Operationen in endlichen K? Örpern mit der schnellen Walshtransformation. Unpublished manuscript, 1990.
- K. Huber and S. Wolter. Telekom's MAGENTA algorithm for en- / decryption in the gigabit/sec range. In ICASSP 1996 Conference Proceedings, volume 6, pages 3233 — 3235, 1996..
- J.P Vaseur. Verschl? Uesselungsanordnung mit Mischverdrahtung. Deutsches Patentamt Auslegeschrift 1148397, Anmeldetag: 2.Juni 1959 Auslegeschrift: 9.Mai 1963 Anmelder: Compagnie Generale de Telegraphie sans Fil, Paris.
- S.Y. Kung. VLSI Array Processors. Prentice Hall, 1988.
- M. Luby and C. Rackoff. How to construct pseudorandom permutations from pseudorandom functions. SIAM J. Computing, 17(2):373-386, April 1988.
- J. Pieprzyk and B. Sadeghiyan. Design of Hashing Algorithms, volume 756 of Lecture Notes in Computer Science. Springer, 1993.
- SIT GmbH. Abschlussbericht — Untersuchung eines universellen Kryptoalgorithmus. Technical report, SIT GmbH, 1994.
- E. Biham. On Matsui's linear cryptanalysis. In Proc. EUROCRYPT '94, volume 658 of Lecture Notes in Computer Science, pages 81-91, 1995.
Посилання
- M. J. Jacobson, Jr. and K. Hubery
- J. J. G. Savard. The Computer Era. Towards the 128-bit era: AES Candidates. Magenta [ 31 жовтня 2020 у Wayback Machine.] // A Cryptographic Compendium
- El. Biham, Al. Biryukov, N. Ferguson, L. R. Knudsen, B. Schneier, Ad. Shamir Cryptanalysis of Magenta [ 19 серпня 2014 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
MAGENTA blochnij shifr rozroblenij Majklom Yakobsonom i Klausom Huberom dlya nimeckoyi telekomunikacijnoyi kompaniyi Deutsche Telekom AG MAGENTA ye skorochennyam vid Multifunctional Algorithm for General purpose Encryption and Network Telecommunication Applications Bagatofunkcionalnij algoritm dlya shifruvannya v zagalnih cilyah i telekomunikacijnih dodatkah IstoriyaRozrobka MAGENTA pochalasya v 1990 roci z osnovnimi principami opisanimi v neopublikovanij knizi Osnovna ideya polyagala v zastosuvanni prostoyi tehniki bez magichnih tablic yaka mogla buti vikonana yak aparatno tak i programno Plani polyagali v rozrobci chipa yakij mig bi peredavati dani zi shvidkistyu do 1 Gbit c i vikoristovuvatisya dlya shifruvannya v ATM Na zhal aparatna realizaciya ne otrimala poshirennya yak planuvalosya cherez vuzke zastosuvannya ale nezvazhayuchi na ce doslidzhennya pokazali sho takij chip mozhlivo rozrobiti MAGENTA brav uchast v konkursi AES v 1998 roci ale vibuv pislya pershogo raundu Shifr stav dostupnij uchasnikam konferenciyi tilki v den prezentaciyi na vidminu vid inshih shifriv yaki brali uchast u konursi MAGENTA vikoristovuvalasya dlya shifruvannya danih vseredini kompaniyi Deutsche Telekom Slid zaznachiti sho do MAGENTA shvidke peretvorennya Fur ye v kriptografichnih cilyah vikoristovuvalosya v 2 shifrah Konkretnu nazvu pershogo ne vdalosya znajti Ale vidomo sho vin vinajdenij Zhanom P yerom Vasserom i zareyestrovanij 2 chervnya 1959 roku Drugim shifrom ye odna z realizacij algoritmu A3 Comp 128 ShifruvannyaMAGENTA maye strukturu merezhi Fejstelya Raundova funkciya zasnovana na en za vinyatkom togo sho zamist dodavannya i vidnimannya na kozhnomu etapi do odnogo z dodankiv zastosovuyetsya S blok sho zadayetsya funkciyeyu f x i potim voni skladayutsya po modulyu 2 Nehaj mnozhina B 0 1 8 displaystyle B 0 1 8 Rozmir bloku M x0 x15 B16 displaystyle M x 0 x 15 in B 16 vihidnogo tekstu 128 bit Rozmir klyucha mozhe prijmati 3 znachennya 128 bit K K1 K2 displaystyle K K 1 K 2 192 bit K K1 K2 K3 displaystyle K K 1 K 2 K 3 256 bit K K1 K2 K3 K4 displaystyle K K 1 K 2 K 3 K 4 de K1 y0 y7 K2 y8 y15 K3 y16 y23 K4 y24 y31 displaystyle K 1 y 0 y 7 K 2 y 8 y 15 K 3 y 16 y 23 K 4 y 24 y 31 Nehaj F raundova funkciya Shifr bloku M virahovuyetsya takim chinom EncK M FK1 FK1 FK2 FK2 FK1 FK1 M K K1 K2 B16 FK1 FK2 FK3 FK3 FK2 FK1 M K K1 K2 K3 B24 FK1 FK2 FK3 FK4 FK4 FK3 FK2 FK1 M K K1 K2 K3 K4 B32 displaystyle Enc K M begin cases F K 1 F K 1 F K 2 F K 2 F K 1 F K 1 M amp K K 1 K 2 in B 16 F K 1 F K 2 F K 3 F K 3 F K 2 F K 1 M amp K K 1 K 2 K 3 in B 24 F K 1 F K 2 F K 3 F K 4 F K 4 F K 3 F K 2 F K 1 M amp K K 1 K 2 K 3 K 4 in B 32 end cases 128 bit klyuch K rozbivayetsya na 2 chastini K1 ta K2 Kilkist raundiv 6 Klyuchi zastosovuyutsya v takomu poryadku Raund 1 2 3 4 5 6Zastosovanij klyuch K1 K1 K2 K2 K1 K1192 bit klyuch K rozbivayetsya na 3 chastini K1 K2 ta K3 Kilkist raundiv 6 Klyuchi zastosovuyutsyau v takom poryadku Raund 1 2 3 4 5 6Zastosovanij klyuch K1 K2 K3 K3 K2 K1256 bit klyuch K rozbivayetsya na 4 chastini K1 K2 K3 ta K4 Kilkist raundiv 8 Klyuchi zastosovuyutsya v takomu poryadku Raund 1 2 3 4 5 6 7 8Zastosovanijj klyuch K1 K2 K3 K4 K4 K3 K2 K1DeshifruvannyaSlid zauvazhiti sho poslidovnist zastosovanih chastin klyucha ye palindromom Nehaj V x0 x15 x8 x9 x15 x0 x1 x7 displaystyle V x 0 x 15 x 8 x 9 x 15 x 0 x 1 x 7 Todi V EncK x0 x15 EncK 1 V x0 x15 displaystyle V Enc K x 0 x 15 Enc K 1 V x 0 x 15 Takim chinom deshifruvannya DecK M V EncK V M displaystyle Dec K M V Enc K V M Raundova funkciya FVhidnij blok X rozmirom 128 bit raundu n z raundovim klyuchem K n rozbivayetsya na 2 chastini X1 ta X2 rozmirom 64 bita kozhna X X1X2 Pislya prohodzhennya raundu otrimuyemo X X2F X2Kn Z zalezhnosti dilennya vihidnogo klyucha vid kilkosti raundiv dovzhina chastini klyucha sho vikoristovuyetsya v kozhnomu raundi zavzhdi dorivnyuye 64 bitam Otzhe funkciya F prijmaye 128 bitovij argument i povinna povertati 64 bitnij 8 bajtovij rezultat Vvedemo dopomizhni funkciyi cherez yaki potim virazimo F Funkciya Rozmir prijnyatih argumentiv Rozmir povernenogo znacheniya Opisf x 1 bajt 1 bajt Povertaye element z nomerom x v S blociA x y 1 bajt 1 bajt f x f y PE x y 1 bajt 2 bajta A x y A y x konkatenuye rezultati A x y ta A y x P X 16 bajt 16 bajt X X0X1 X14X15 PE X0 X8 PE X1 X9 PE X6 X14 PE X7 X15 konkatenuye rezultati PE Xi Xi 8 i 0 7 Xi maye rozmir 1 bajt T X 16 bajt 16 bajt P P P P X zastosovuye do X 4 razi funkciyu P S X 16 bajt 16 bajt X0X2X4 X14X1X3X5 X15 vikonuye perestanovku bajtiv X spochatku zapisuyutsya bajti z parnim poryadkovim nomerom potim z neparnim S k X k N X 16 bajt 16 bajt Rekursivna funkciya S 1 X T X S k X T X S C k 1 X Shema roboti funkciyi P X F vvazhayut rivnoyu pershim 8 bajtam vid S C n X2Kn tobto bajtam C n X2Kn z parnih poryadkovim nomerom Spochatku n pripustili rivnim 7 ale testi pokazali sho v comu vipadku shifr mozhlivo zlamati Tomu potim pripustili n 3 Yak pokazali testi ce najkrashij vibir yakij ne dopuskaye kriptografichnih slabkostej yaki poznachayutsya na vsomu shifri Takim chinom F vvazhayut rivnoyu pershim 8 bajtam vid S C 3 X2Kn S blokS blok utvoryuyetsya takim chinom Pershij element 1 nastupni utvoryuyutsya bitovim zsuvom vlivo poperednogo poki 1 ne vijde za livu mezhu bajta Vidpovidno pochatok bloku 1 2 4 8 16 32 64 128 25610 1 0000 00002 1 vijshla za mezhi bajta V comu vipadku potribno sklasti po modulyu 2 otrimane zsunute chislo 0000 00002 z chislom 10110 0110 01012 0000 00002 0110 01012 0110 01012 10110 tobto pislya 128 stoyatime 101 10110 0110 01012 lt lt 1 1100 10102 20210 1 ne vijshla za mezhu vidpovidno nastupnij element 202 20210 lt lt 1 1100 10102 lt lt 1 1001 01002 1 vijla za mezhu 1001 01002 0110 01012 1111 00012 24110 Ostannij 256 element vvazhayetsya rivnim 0 V rezultati vihodit takij S blok 1 2 4 8 16 32 64 128 101 202 241 135 107 214 201 247 139 115 230 169 55 110 220 221 223 219 211 195 227 163 35 70 140 125 250 145 71 142 121 242 129 103 206 249 151 75 150 73 146 65 130 97 194 225 167 43 86 172 61 122 244 141 127 254 153 87 174 57 114 228 173 63 126 252 157 95 190 25 50 100 200 245 143 123 246 137 119 238 185 23 46 92 184 21 42 84 168 53 106 212 205 255 155 83 166 41 82 164 45 90 180 13 26 52 104 208 197 239 187 19 38 76 152 85 170 49 98 196 237 191 27 54 108 216 213 207 251 147 67 134 105 210 193 231 171 51 102 204 253 159 91 182 9 18 36 72 144 69 138 113 226 161 39 78 156 93 186 17 34 68 136 117 234 177 7 14 28 56 112 224 165 47 94 188 29 58 116 232 181 15 30 60 120 240 133 111 222 217 215 203 243 131 99 198 233 183 11 22 44 88 176 5 10 20 40 80 160 37 74 148 77 154 81 162 33 66 132 109 218 209 199 235 179 3 6 12 24 48 96 192 229 175 59 118 236 189 31 62 124 248 149 79 158 89 178 0 Zagliblyuyuchis v teoriyu mozhna pidsumuvati Nehaj ye Pole Galua GF 28 i bagatochlen yakij zadaye ce pole p x x8 x6 x5 x2 1 i nehaj a primitivnij element polya p a 0 Todi element f x v S blok za indeksom x mozhna predstaviti yak f x ax x 255 0 x 255 displaystyle f x left begin matrix alpha x amp x neq 255 0 amp x 255 end matrix right Vlastivosti vikoristovuvanih funkcijf x Protyagom odnogo vikonannya MAGENTA funkciya f x obchislyuyetsya 2304 razi dlya klyuchiv v 128 i 192 bita i 3072 razi dlya klyucha v 256 bit Tak yak funkciya yavlyaye soboyu nelinijnu chastinu algoritmu vona maye osoblivu vazhlivist dlya analizu vsogo algoritmu Nastupni vlastivosti f x vidomi F x vzayemno odnoznachna funkciya tobto perestanovka nad mnozhinoyu B 0 1 8 vsih vosmibitnih dvijkovih vektoriv Dana perestanovka mozhe buti predstavlena yak rezultat diyi 6 nezv yazanih cikliv dovzhini 198 38 9 5 5 i 1 Zgidno kombinatornomu analizu ci znachennya normalni i ne mayut znachnih rozbizhnostej z podibnimi ciklami dlya vipadkovih perestanovok Yedine chislo sho zalishayetsya na misci 161 x B v takogo sho f x 1 2 127 vikonano f x 1 2 f x de dobutok desyatkovih chisel x y B2 i takih sho f x f y 1 2 255 vikonano f x y mod 255 f x f y Yaksho rozglyadati f x yak vektor funkciyu tobto f x f7 x f6 x f0 x to kozhna z 8 bulevih funkcij nelinijna ta maye stepin 7 Takozh vsilyaki netrivialni XOR kombinaciyi cih funkcij nelinijni She odna cikava vlastivist polyagaye v tomu sho kozhna taka funkciya maye 128 dodankiv KriptoanalizDiferencialnij kriptoanaliz Viyavlyayetsya prinajmni chastina MAGENTA mozhe buti rozkrita metodami danogo kriptoanalizu Rizniceb mizh dvoma elementami vidkritimi tekstami abo shiframi beretsya skladannya po modulyu 2 mizh cimi elementami Take viznachennya riznici obumovleno chastim vikoristannyam operaciyi XOR v danomu shifri Ryadkovi indeksi XOR tablici ye vsima mozhlivimi riznicyami mizh vidkritimi tekstami a stovpcevi indeksi mizh shifrotekstami Na peretini konkretnoyi vidminnosti vidkritih tekstiv tobto ryadkovogo indeksu i konkretnoyi vidminnosti shifriv tobto stovpchikovogo indeksu stoyit chislo par vidkritih tekstiv yaki vidpovidayut danim vidminnostyam shifri yakih rozriznyayutsya na stovpchikovij indeks XOR tablicya dlya funkciyi f maye rozmiri 256 256 Suma kozhnogo ryadka j stovpchika dorivnyuye 256 Pershij element pershogo ryadka z indeksom 0 sho vidpovidaye nulovij vidminnosti vidkritih tekstiv i shifriv dorivnyuye 256 Vsi inshi elementi pershogo ryadka rivni 0 Analogichno vsi elementi 1 stovpchika krim pershogo rivnogo 256 rivni 0 Osoblivij interes dlya diferencialnogo analizu predstavlyayut veliki znachennya najbilshe znachennya v cij tablici dorivnyuye 8 Vono maye misce pri takih rozbizhnostyah Vidminnosti mizh vidkritimi tekstami Vidminnosti mizh shiframi51 35 66 154 155 250102 111 114 232 233 244153 96 97 115 229 247204 18 19 38 207 251 V inshih oseredkah tablici roztashovani chisla 0 2 4 6 Maksimalna jmovirnist perehodu dlya nenulovih vidminnostej 8256 2 5 displaystyle tfrac 8 256 2 5 Dlya funkciyi PE takozh buli viznacheni maksimalni znachennya voni dorivnyuyut 36 dlya riznici u vidkritomu teksti 234 234 i nulovoyi riznici shifriv Maksimalna jmovirnist perehodu 362562 displaystyle tfrac 36 256 2 11820 displaystyle tfrac 1 1820 Maksimalna jmovirnist perehodu dlya funkciyi T 2 20 displaystyle 2 20 dlya C 3 X 2 60 displaystyle 2 60 Tak yak chislo neobhidnih par shifriv bilshe nizh velichina zvorotna jmovirnosti perehodu danij tip diferencialnogo analizu zasnovanij na xor tablicyah ne zastosovnij do MAGENTA Odnak pitannya pro inshi tipi zalishayetsya vidkritim Linijnij kriptoanaliz Linijna aproksimacijna tablicya dlya S bloku bula obchislena Dlya funkcij f0 f7 displaystyle f 0 f 7 i dlya kozhnoyi xor sumi f0 f1 f0 f2 f0 f1 f7 displaystyle f 0 oplus f 1 f 0 oplus f 2 f 0 oplus f 1 oplus oplus f 7 yak i dlya vsih linijnih funkcij bulo viznacheno yak bagato cifr znachen v tablici uzgodzhuyetsya z vidpovidnimi ciframi rozglyanutih linijnih funkcij U pidsumku vijshlo 255 znachen mizh 0 i 256 Normuvannya polyagalo v vidnimanni 128 Vsi znachennya v tablici lezhali na vidrizku 24 26 Dani znachennya vidpovidayut ochikuvanim dlya dovilno obranih f0 f7 displaystyle f 0 f 7 Znachennya 26 vihodit pri nastupnih linijnih kombinaciyah f1 f2 f3 f1 f3 f4 f6 displaystyle f 1 oplus f 2 oplus f 3 f 1 oplus f 3 oplus f 4 oplus f 6 f1 f3 f6 f2 f3 f4 f6 displaystyle f 1 oplus f 3 oplus f 6 f 2 oplus f 3 oplus f 4 oplus f 6 f1 f4 f7 f2 f3 f5 f6 displaystyle f 1 oplus f 4 oplus f 7 f 2 oplus f 3 oplus f 5 oplus f 6 f2 f6 f7 f3 f4 f5 f6 displaystyle f 2 oplus f 6 oplus f 7 f 3 oplus f 4 oplus f 5 oplus f 6 Zastosovana angl Piling up lemma lema pro nabigannya znakiv do raundovoyi funkciyi F pi 0 6 displaystyle p i 0 6 l 12 12 2l 1 i 1lpi 12 2 10 9 displaystyle frac 1 2 2 l 1 prod i 1 l p i approx frac 1 2 2 cdot 10 9 Otrimane znachennya ye verhnoyu mezheyu najkrashogo afinnogo peretvorennya dlya F Priblizno p 2 displaystyle p 2 par vidkritij tekst shifr potribno shob vikoristovuvati afinne linijne nablizhennya z jmovirnistyu 12 p displaystyle frac 1 2 p Z oglyadu na poperedni rezultati dlya ataki na F neobhidno2 5 1017 displaystyle 2 5 cdot 10 17 Otzhe zavdyaki nelinijnosti f x MAGENTA ne vdastsya zlamati atakami zasnovanimi na linijnomu kriptoanaliz PrimitkiK Huber Neue Kryptographische Verfahren durch Kombination von Operationen in endlichen K Orpern mit der schnellen Walshtransformation Unpublished manuscript 1990 K Huber and S Wolter Telekom s MAGENTA algorithm for en decryption in the gigabit sec range In ICASSP 1996 Conference Proceedings volume 6 pages 3233 3235 1996 J P Vaseur Verschl Uesselungsanordnung mit Mischverdrahtung Deutsches Patentamt Auslegeschrift 1148397 Anmeldetag 2 Juni 1959 Auslegeschrift 9 Mai 1963 Anmelder Compagnie Generale de Telegraphie sans Fil Paris S Y Kung VLSI Array Processors Prentice Hall 1988 M Luby and C Rackoff How to construct pseudorandom permutations from pseudorandom functions SIAM J Computing 17 2 373 386 April 1988 J Pieprzyk and B Sadeghiyan Design of Hashing Algorithms volume 756 of Lecture Notes in Computer Science Springer 1993 SIT GmbH Abschlussbericht Untersuchung eines universellen Kryptoalgorithmus Technical report SIT GmbH 1994 E Biham On Matsui s linear cryptanalysis In Proc EUROCRYPT 94 volume 658 of Lecture Notes in Computer Science pages 81 91 1995 PosilannyaM J Jacobson Jr and K Hubery J J G Savard The Computer Era Towards the 128 bit era AES Candidates Magenta 31 zhovtnya 2020 u Wayback Machine A Cryptographic Compendium El Biham Al Biryukov N Ferguson L R Knudsen B Schneier Ad Shamir Cryptanalysis of Magenta 19 serpnya 2014 u Wayback Machine