KHAZAD — в криптографії симетричний блоковий шифр, розроблений двома криптографами: бельгійцем Вінсентом Рейменом (автор шифру Rijndael) і бразильцем Пауло Баррето. В алгоритмі використовуються блоки даних розміром 64 біта (8 байт) і ключі розміром 128 біт. KHAZAD був представлений на європейському конкурсі криптографічних примітивів NESSIE 2000 року, де в модифікованій (tweaked) формі став одним із алгоритмів-фіналістів (але не переможцем).
Розробники | Вінсент Реймен і Пауло Баррето |
---|---|
Уперше оприлюднений | 2000 р. |
Раундів | 8 |
Тип | SP-мережа |
Попередником алгоритму KHAZAD вважається розроблений в 1995 р. Вінсентом Рейменом і Джоаном Дайменом шифр SHARK. Автори KHAZAD стверджують, що в основі алгоритму лежить стратегія розробки криптографічно стійких алгоритмів шифрування (Wide-Trail strategy), запропонована Джоаном Дайменом.
Алгоритм KHAZAD має консервативні параметри і створений для заміни існуючих шифрів з 64-бітним блоком, таких як IDEA і DES, забезпечуючи вищий рівень безпеки при високій швидкості виконання.
У шифрі широко використовують інволюційні перетворення, що мінімізує різницю між алгоритмами шифрування і дешифрування.
Опис шифру
KHAZAD — ітеративний блоковий шифр з розміром блоку 64 біта і 128-бітним ключем. Вхідний блок даних подається у вигляді рядка з 8 байт.
S-блок і матриця перемішування вибрані таким чином, який гарантує, що шифрування і розшифрування — одна і та ж операція (інволюція), за винятком раундових підключів.
KHAZAD, як і алгоритм AES (Rijndael), належить до сімейства блокових шифрів, що утворилися від шифру SHARK.
Основні відмінності від SHARK наведені в таблиці:
SHARK | KHAZAD | |
---|---|---|
Кількість раундів | 6 | 8 |
Розклад (розширення) ключа | Афінне перетворення, отримане в результаті роботи шифру в режимі зворотнього зв'язку по шифрованому тексту | Схема Фейстеля, де функцією Фейстеля є раундова функція шифру |
Неприведений многочлен поля | (0x1F5) | (0x11D) |
Реалізація S-блоку | Відображення у полі + афінне перетворення | Рекурсивна структура P — і Q-мініблоків |
Реалізація матриці перемішування | Код Ріда-Соломона | Інволюційний MDS-код |
Початковий варіант шифру KHAZAD (названий KHAZAD-0) зараз є застарілим. Поточний (фінальний) вид шифру був модифікований («tweaked»), щоб адаптувати його під апаратну реалізацію. У цій формі KHAZAD і був визнаний фіналістом NESSIE. Модифікація не торкнулася базової структури шифру. У ньому S-блок, який спочатку генерувався повністю випадково (без чіткого визначення будь-якої внутрішньої структури), замінений на рекурсивну структуру: новий блок заміни 8x8 складений з маленьких псевдовипадково генеруючих 4x4 міні-блоків (P- і Q-блоки).
Структура алгоритму
Застосуванням до ключа процедури розширення ключа отримують набір раундових ключів
Алгоритм включає 8 раундів, кожен з яких складається з 3 етапів:
- нелінійне перетворення
- лінійне перетворення
- додавання раундового ключа
Перед першим раундом виконується відбілювання — . Операція не виконується в останньому раунді.
В операторному вигляді алгоритм записується наступним чином: Шифрування:
Розшифрування :
Набір раундовий ключів отримують шляхом застосування до ключа шифрування процедури розширення ключа.
Структура раунду
Перетворення раунду можна записати так: .
Нелінійне перетворення
У кожному раунді вхідний блок розбивається на менші блоки по 8 байт, які незалежно піддаються нелінійному перетворенню (зміні), тобто паралельно проходять через однакові S-блоки (кожен S-блок — 8x8 біт, тобто 8 біт на вході і 8 біт на виході). Блоки заміни у вихідному і модифікованому (tweaked) шифрі розрізняються. Блок заміни підібраний таким чином, щоб нелінійне перетворення було інволюційним, тобто або .
Лінійне перетворення
8-байтний рядок даних множиться побайтно на фіксовану матрицю розміру 8 х 8, причому множення байт проводиться в полі Галуа з поліномом, що не приводиться (0x11D).
1 | 3 | 4 | 5 | 6 | 8 | B | 7 |
3 | 1 | 5 | 4 | 8 | 6 | 7 | B |
4 | 5 | 1 | 3 | B | 7 | 6 | 8 |
5 | 4 | 3 | 1 | 7 | B | 8 | 6 |
6 | 8 | B | 7 | 1 | 3 | 4 | 5 |
8 | 6 | 7 | B | 3 | 1 | 5 | 4 |
B | 7 | 6 | 8 | 4 | 5 | 1 | 3 |
7 | B | 8 | 6 | 5 | 4 | 3 | 1 |
У вищезгаданому полі Галуа матриця є симетричною (, ) і ортогональною (). Тобто і перетворення, що задається цією матрицею є інволюцією: , де — одинична матриця
Накладення раундового ключа
Над 64-бітний блок даних і 64-бітним раундовим ключем виконується побітова операція XOR.
Розширення ключа
128-бітний (16-байтний) ключ розбивається на 2 рівні частини:
- — старші 8 байт (з 15-го по 8-ий)
- — молодші 8 байт (з 7-го по 0-ий)
Ключі обчислюються за схемою Фейстеля:
Тут:
— функція раунду алгоритму з вхідним блоком і ключем .
— 64-бітова константа, -тий байт якої становить .
Структура нелінійного перетворення і модифікація шифру
Оригінальний шифр
У первісному варіанті шифру (KHAZAD-0) таблична заміна представлялася класичним S-блоком і описувалася наступною матрицею:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
0 | A7 | D3 | E6 | 71 | D0 | AC | 4D | 79 | 3A | C9 | 91 | FC | 1E | 47 | 54 | BD |
1 | 8C | A5 | 7A | FB | 63 | B8 | DD | D4 | E5 | B3 | C5 | BE | A9 | 88 | 0C | A2 |
2 | 39 | DF | 29 | DA | 2B | A8 | CB | 4C | 4B | 22 | AA | 24 | 41 | 70 | A6 | F9 |
3 | 5A | E2 | B0 | 36 | 7D | E4 | 33 | FF | 60 | 20 | 08 | 8B | 5E | AB | 7F | 78 |
4 | 7C | 2C | 57 | D2 | DC | 6D | 7E | 0D | 53 | 94 | C3 | 28 | 27 | 06 | 5F | AD |
5 | 67 | 5C | 55 | 48 | 0E | 52 | EA | 42 | 5B | 5D | 30 | 58 | 51 | 59 | 3C | 4E |
6 | 38 | 8A | 72 | 14 | E7 | C6 | DE | 50 | 8E | 92 | D1 | 77 | 93 | 45 | 9A | CE |
7 | 2D | 03 | 62 | B6 | B9 | BF | 96 | 6B | 3F | 07 | 12 | AE | 40 | 34 | 46 | 3E |
8 | DB | CF | EC | CC | C1 | A1 | C0 | D6 | 1D | F4 | 61 | 3B | 10 | D8 | 68 | A0 |
9 | B1 | 0A | 69 | 6C | 49 | FA | 76 | C4 | 9E | 9B | 6E | 99 | C2 | B7 | 98 | BC |
A | 8F | 85 | 1F | B4 | F8 | 11 | 2E | 00 | 25 | 1C | 2A | 3D | 05 | 4F | 7B | B2 |
B | 32 | 90 | AF | 19 | A3 | F7 | 73 | 9D | 15 | 74 | EE | CA | 9F | 0F | 1B | 75 |
C | 86 | 84 | 9C | 4A | 97 | 1A | 65 | F6 | ED | 09 | BB | 26 | 83 | EB | 6F | 81 |
D | 04 | 6A | 43 | 01 | 17 | E1 | 87 | F5 | 8D | E3 | 23 | 80 | 44 | 16 | 66 | 21 |
E | FE | D5 | 31 | D9 | 35 | 18 | 02 | 64 | F2 | F1 | 56 | CD | 82 | C8 | BA | F0 |
F | EF | E9 | E8 | FD | 89 | D7 | C7 | B5 | A4 | 2F | 95 | 13 | 0B | F3 | E0 | 37 |
Дана таблиця повністю еквівалентна тій, що використовується в алгоритмі Anubis (ще один алгоритм, розроблений та поданий на конкурс NESSIE тими ж авторами).
Принцип вибору S-блоку
Будь-яка булева функція може бути подана у вигляді поліному Жегалкіна (алгебраїчна нормальна форма). Нелінійним порядком функції називається порядок полінома Жегалкіна, тобто максимальний з порядків її членів.
Якщо , введемо функцію ,
Блок заміни — це відображення . Також, на нього можна дивитися як на відображення .
, де
Нелінійний порядок S-блоку — — мінімальний нелінійний порядок серед усіх лінійних комбінацій компонентів :
-параметр S-блоку: значення називається диференціальною рівномірністю
Кореляція двох булевих функцій
-параметр S-блоку:
У шифрі KHAZAD-0 використовується псевдорандомний згенерований S-блок, що відповідає наступним вимогам:
- повинен бути інволюцією
- -параметр не повинен перевищувати значення
- -параметр не повинен перевищувати значення
- нелінійний порядок повинен бути максимальним, а саме, рівним 7
Модифікований шифр
Користуючись можливістю незначної зміни алгоритму протягом першого раунду конкурсу, автори Khazad також внесли зміни в свій алгоритм. В новому варіанті специфікації алгоритму вихідний алгоритм Khazad названий як Khazad-0, а назва Khazad присвоєна модифікованому алгоритму. (Панасенко С. П. «Алгоритми шифрування. Спеціальний довідник»)
У модифікованій версії шифру S-блок 8x8 змінений і представлений рекурсивною структурою, що складається з міні-блоків P і Q, кожен з яких є маленьким блоком заміни з 4 бітами на вході і виході (4x4).
Рекурсивна структура блоку заміни в модифікованому шифрі KHAZAD:
Дана структура P — і Q-мініблоків еквівалентна S-блоку з наступною таблицею заміни:
u | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
P(u) | 3 | F | E | 0 | 5 | 4 | B | C | D | A | 9 | 6 | 7 | 8 | 2 | 1 |
u | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
Q(u) | 9 | E | 5 | 6 | A | 2 | 3 | C | F | 0 | 4 | D | 7 | B | 1 | 8 |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
0 | BA | 54 | 2F | 74 | 53 | D3 | D2 | 4D | 50 | AC | 8D | BF | 70 | 52 | 9A | 4C |
1 | EA | D5 | 97 | D1 | 33 | 51 | 5B | A6 | DE | 48 | A8 | 99 | DB | 32 | B7 | FC |
2 | E3 | 9E | 91 | 9B | E2 | BB | 41 | 6E | A5 | CB | 6B | 95 | A1 | F3 | B1 | 02 |
3 | CC | C4 | 1D | 14 | C3 | 63 | DA | 5D | 5F | DC | 7D | CD | 7F | 5A | 6C | 5C |
4 | F7 | 26 | FF | ED | E8 | 9D | 6F | 8E | 19 | A0 | F0 | 89 | 0F | 07 | AF | FB |
5 | 08 | 15 | 0D | 04 | 01 | 64 | DF | 76 | 79 | DD | 3D | 16 | 3F | 37 | 6D | 38 |
6 | B9 | 73 | E9 | 35 | 55 | 71 | 7B | 8C | 72 | 88 | F6 | 2A | 3E | 5E | 27 | 46 |
7 | 0C | 65 | 68 | 61 | 03 | C1 | 57 | D6 | D9 | 58 | D8 | 66 | D7 | 3A | C8 | 3C |
8 | FA | 96 | A7 | 98 | EC | B8 | C7 | AE | 69 | 4B | AB | A9 | 67 | 0A | 47 | F2 |
9 | B5 | 22 | E5 | EE | BE | 2B | 81 | 12 | 83 | 1B | 0E | 23 | F5 | 45 | 21 | CE |
A | 49 | 2C | F9 | E6 | B6 | 28 | 17 | 82 | 1A | 8B | FE | 8A | 09 | C9 | 87 | 4E |
B | E1 | 2E | E4 | E0 | EB | 90 | A4 | 1E | 85 | 60 | 00 | 25 | F4 | F1 | 94 | 0B |
C | E7 | 75 | EF | 34 | 31 | D4 | D0 | 86 | 7E | AD | FD | 29 | 30 | 3B | 9F | F8 |
D | C6 | 13 | 06 | 05 | C5 | 11 | 77 | 7C | 7A | 78 | 36 | 1C | 39 | 59 | 18 | 56 |
E | B3 | B0 | 24 | 20 | B2 | 92 | A3 | C0 | 44 | 62 | 10 | B4 | 84 | 43 | 93 | C2 |
F | 4A | BD | 8F | 2D | BC | 9C | 6A | 40 | CF | A2 | 80 | 4F | 1F | CA | AA | 42 |
З таблиць легко помітити, що в первісному варіанті, так і в модифікованому S-блоки є інволюційними, тобто .
Безпека
Передбачається, що KHAZAD є криптостійким настільки, наскільки криптостійким може бути блоковий шифр з даними довжинами блоку і ключа.
Це передбачає, крім іншого, наступне:
- найбільш ефективною атакою на знаходження ключа шифру KHAZAD є повний перебір.
- отримання з даних пар відкритий текст—шифротекст, інформації про інші такі пари не може бути здійснено більш ефективно, ніж знаходження ключа методом повного перебору.
- очікувана складність пошуку ключа методом повного перебору залежить від бітової довжини ключа і дорівнює стосовно до шифру KHAZAD.
Такий великий запас надійності закладався в шифр з урахуванням всіх відомих атак.
Існують атаки лише на скорочений варіант шифру з 5 раундами (Frédéric Muller, 2003).
Як видно, ніяких скільки-небудь серйозних проблем з криптостійкості алгоритму Khazad виявлено не було, що зазначено і експертами конкурсу NESSIE. Крім того, експертами відзначена досить висока швидкість шифрування даного алгоритму. Khazad був визнаний перспективним алгоритмом, вельми цікавим для подальшого вивчення, але не став одним з переможців конкурсу через підозри експертів, що структура алгоритму може містити приховані вразливості, які можуть бути виявлені в майбутньому. | ||
— Панасенко С. П. "Алгоритмы шифрования. Специальный справочник" |
Доступність
Шифр KHAZAD не був (і ніколи не буде) запатентований. Він може використовуватися безкоштовно для будь-яких цілей. | ||
— |
Назва
Шифр названий на честь Казад-дума (Khazad-dûm) або Морії — величезного підземного королівства гномів в Імлистих горах Середзем'я з трилогії Дж. Р. Р. Толкіна «Володар перснів».
Див. також
Примітки
- Lars R. Knudsen, Matthew J.B. Robshaw. The Block Cipher Companion. — Springer, 2011. — С. 63. — .
- Joan Daernen, Vincent Rijrnen. The Design of Rijndael. — Springer, 2002. — С. 160. — .
- . Архів оригіналу за 6 травня 2021. Процитовано 4 квітня 2018.
- Панасенко С. П. Алгоритмы шифрования. Специальный справочник. — СПб. : БХВ-Петербург, 2009. — С. 282—287. — .
- Frédéric Muller. A new attack against khazad : [ 6 березня 2016] // in Proceedings of ASIACRYPT 2003. — С. 347–358.
- Paulo Sérgio L. M. Barreto, Vincent Rijmen. The Khazad Block Cipher. larc.usp.br. Архів оригіналу за 2 вересня 2012. Процитовано 30 листопада 2016.
Література
- Панасенко С. П. Алгоритмы шифрования. Специальный справочник. —СПб.: БХВ-Петербург, 2009. — 576 с.: ил.
Посилання
- Офіційна сторінка шифру KHAZAD
- Paulo S. L. M. Barreto and Vincent Rijmen. (tweaked, KHAZAD). In First Open NESSIE Workshop, KU-Leuven, 2000. Modificated submission to NESSIE selected for 2nd Phase.
- Paulo S. L. M. Barreto and Vincent Rijmen. The KHAZAD Legacy-Level Block Cipher [ 6 травня 2021 у Wayback Machine.] (original, KHAZAD-0). Original submission to NESSIE.
- Alex Biryukov. Analysis of Involutional Ciphers: Khazad and Anubis [ 4 березня 2016 у Wayback Machine.]. In T. Johansson, editor, Fast Software Encryption — 2003, Lectures Notes in Computer Science. Springer, 2003.
- Frédéric Muller. A New Attack against Khazad. Advances in Cryptology [ 6 березня 2016 у Wayback Machine.]
- List of NESSIE submissions as originally submitted [ 13 жовтня 2016 у Wayback Machine.]
- Modifications to NESSIE submissions selected for 2nd Phase [ 13 жовтня 2016 у Wayback Machine.]
- Deliverables of the NESSIE project [ 13 жовтня 2016 у Wayback Machine.]
- NESSIE Public Report D14: Report on the Performance Evaluation of NESSIE Candidates I [ 20 січня 2022 у Wayback Machine.]
- NESSIE Public Report D18: Update on the selection of algorithms for further investigation during the second round. [ 20 січня 2022 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
KHAZAD v kriptografiyi simetrichnij blokovij shifr rozroblenij dvoma kriptografami belgijcem Vinsentom Rejmenom avtor shifru Rijndael i brazilcem Paulo Barreto V algoritmi vikoristovuyutsya bloki danih rozmirom 64 bita 8 bajt i klyuchi rozmirom 128 bit KHAZAD buv predstavlenij na yevropejskomu konkursi kriptografichnih primitiviv NESSIE 2000 roku de v modifikovanij tweaked formi stav odnim iz algoritmiv finalistiv ale ne peremozhcem KHAZADRozrobniki Vinsent Rejmen i Paulo BarretoUpershe oprilyudnenij 2000 r Raundiv 8Tip SP merezha Poperednikom algoritmu KHAZAD vvazhayetsya rozroblenij v 1995 r Vinsentom Rejmenom i Dzhoanom Dajmenom shifr SHARK Avtori KHAZAD stverdzhuyut sho v osnovi algoritmu lezhit strategiya rozrobki kriptografichno stijkih algoritmiv shifruvannya Wide Trail strategy zaproponovana Dzhoanom Dajmenom Algoritm KHAZAD maye konservativni parametri i stvorenij dlya zamini isnuyuchih shifriv z 64 bitnim blokom takih yak IDEA i DES zabezpechuyuchi vishij riven bezpeki pri visokij shvidkosti vikonannya dzherelo ne vkazane 2746 dniv U shifri shiroko vikoristovuyut involyucijni peretvorennya sho minimizuye riznicyu mizh algoritmami shifruvannya i deshifruvannya Opis shifruKHAZAD iterativnij blokovij shifr z rozmirom bloku 64 bita i 128 bitnim klyuchem Vhidnij blok danih podayetsya u viglyadi ryadka z 8 bajt S blok i matricya peremishuvannya vibrani takim chinom yakij garantuye sho shifruvannya i rozshifruvannya odna i ta zh operaciya involyuciya za vinyatkom raundovih pidklyuchiv KHAZAD yak i algoritm AES Rijndael nalezhit do simejstva blokovih shifriv sho utvorilisya vid shifru SHARK Dane derevo opisano v knizi The Block Cipher Companion avtori Lars R Knudsen Matthew J B Robshaw Osnovni vidminnosti vid SHARK navedeni v tablici Osnovni vidminnosti mizh shiframi KHAZAD i SHARK SHARK KHAZAD Kilkist raundiv 6 8 Rozklad rozshirennya klyucha Afinne peretvorennya otrimane v rezultati roboti shifru v rezhimi zvorotnogo zv yazku po shifrovanomu tekstu Shema Fejstelya de funkciyeyu Fejstelya ye raundova funkciya shifru Neprivedenij mnogochlen polya G F 2 8 displaystyle displaystyle mathbb GF 2 8 x 8 x 7 x 6 x 5 x 4 x 2 1 displaystyle displaystyle x 8 x 7 x 6 x 5 x 4 x 2 1 0x1F5 x 8 x 4 x 3 x 2 1 displaystyle displaystyle x 8 x 4 x 3 x 2 1 0x11D Realizaciya S bloku Vidobrazhennya u u 1 displaystyle u rightarrow u 1 u poli G F 2 8 displaystyle displaystyle mathbb GF 2 8 afinne peretvorennya Rekursivna struktura P i Q miniblokiv Realizaciya matrici peremishuvannya Kod Rida Solomona Involyucijnij MDS kod Pochatkovij variant shifru KHAZAD nazvanij KHAZAD 0 zaraz ye zastarilim Potochnij finalnij vid shifru buv modifikovanij tweaked shob adaptuvati jogo pid aparatnu realizaciyu U cij formi KHAZAD i buv viznanij finalistom NESSIE Modifikaciya ne torknulasya bazovoyi strukturi shifru U nomu S blok yakij spochatku generuvavsya povnistyu vipadkovo bez chitkogo viznachennya bud yakoyi vnutrishnoyi strukturi zaminenij na rekursivnu strukturu novij blok zamini 8x8 skladenij z malenkih psevdovipadkovo generuyuchih 4x4 mini blokiv P i Q bloki Struktura algoritmuStruktura algoritmu rozshifruvannya Struktura algoritmu shifruvannya Zastosuvannyam do klyucha proceduri rozshirennya klyucha otrimuyut nabir raundovih klyuchiv Algoritm vklyuchaye 8 raundiv kozhen z yakih skladayetsya z 3 etapiv nelinijne peretvorennya g displaystyle gamma linijne peretvorennya 8 displaystyle theta dodavannya raundovogo klyucha s displaystyle sigma Pered pershim raundom vikonuyetsya vidbilyuvannya s k 0 displaystyle sigma k 0 Operaciya 8 displaystyle theta ne vikonuyetsya v ostannomu raundi V operatornomu viglyadi algoritm zapisuyetsya nastupnim chinom Shifruvannya s k 8 g s k 7 8 g s k 1 8 g s k 0 displaystyle displaystyle sigma k 8 circ gamma circ sigma k 7 circ theta circ gamma circ circ sigma k 1 circ theta circ gamma circ sigma k 0 Rozshifruvannya s k 0 g s 8 k 1 8 g s 8 k 7 8 g s k 8 displaystyle displaystyle sigma k 0 circ gamma circ sigma theta k 1 circ theta circ gamma circ circ sigma theta k 7 circ theta circ gamma circ sigma k 8 Nabir raundovij klyuchiv k 0 k 8 displaystyle k 0 k 8 otrimuyut shlyahom zastosuvannya do klyucha shifruvannya K displaystyle K proceduri rozshirennya klyucha Struktura raunduPeretvorennya raundu mozhna zapisati tak r k s k 8 g displaystyle rho k sigma k circ theta circ gamma Nelinijne peretvorennya g displaystyle gamma U kozhnomu raundi vhidnij blok rozbivayetsya na menshi bloki po 8 bajt yaki nezalezhno piddayutsya nelinijnomu peretvorennyu zmini tobto paralelno prohodyat cherez odnakovi S bloki kozhen S blok 8x8 bit tobto 8 bit na vhodi i 8 bit na vihodi Bloki zamini u vihidnomu i modifikovanomu tweaked shifri rozriznyayutsya Blok zamini pidibranij takim chinom shob nelinijne peretvorennya bulo involyucijnim tobto g g 1 displaystyle gamma gamma 1 abo g g x x displaystyle gamma gamma x x Linijne peretvorennya 8 displaystyle displaystyle theta 8 bajtnij ryadok danih mnozhitsya pobajtno na fiksovanu matricyu H displaystyle H rozmiru 8 h 8 prichomu mnozhennya bajt provoditsya v poli Galua G F 2 8 displaystyle mathbb GF 2 8 z polinomom sho ne privoditsya x 8 x 4 x 3 x 2 1 displaystyle displaystyle x 8 x 4 x 3 x 2 1 0x11D 8 x x H displaystyle theta x x times H Matricya H hex format 1 3 4 5 6 8 B 7 3 1 5 4 8 6 7 B 4 5 1 3 B 7 6 8 5 4 3 1 7 B 8 6 6 8 B 7 1 3 4 5 8 6 7 B 3 1 5 4 B 7 6 8 4 5 1 3 7 B 8 6 5 4 3 1 U vishezgadanomu poli Galua matricya H displaystyle H ye simetrichnoyu a i j a j i displaystyle a ij a ji H H T displaystyle H H T i ortogonalnoyu H 1 H T displaystyle H 1 H T Tobto H 1 H displaystyle H 1 H i peretvorennya sho zadayetsya ciyeyu matriceyu ye involyuciyeyu 8 8 x x H H x H H 1 x E x textstyle theta theta x x times H times H x times H times H 1 x times E x de E displaystyle E odinichna matricya Nakladennya raundovogo klyucha s k i displaystyle displaystyle sigma k i Nad 64 bitnij blok danih i 64 bitnim raundovim klyuchem vikonuyetsya pobitova operaciya XOR Rozshirennya klyuchaKomirka Fejstelya otrimannya raundovogo klyucha ki 128 bitnij 16 bajtnij klyuch K displaystyle K rozbivayetsya na 2 rivni chastini k 1 displaystyle displaystyle k 1 starshi 8 bajt z 15 go po 8 ij k 2 displaystyle displaystyle k 2 molodshi 8 bajt z 7 go po 0 ij Klyuchi k 0 k 8 displaystyle k 0 k 8 obchislyuyutsya za shemoyu Fejstelya k i f C i k i 1 k i 2 displaystyle k i f C i k i 1 oplus k i 2 Tut f x y displaystyle displaystyle f x y funkciya raundu algoritmu z vhidnim blokom x displaystyle x i klyuchem y displaystyle y C i displaystyle displaystyle C i 64 bitova konstanta j displaystyle j tij bajt yakoyi stanovit C i j S 8 i j displaystyle C i j S 8i j Struktura nelinijnogo peretvorennya i modifikaciya shifruOriginalnij shifr U pervisnomu varianti shifru KHAZAD 0 tablichna zamina predstavlyalasya klasichnim S blokom i opisuvalasya nastupnoyu matriceyu Tablichna zamina odnogo bajta v KHAZAD 0 Tut nomer stovpcya pershi 4 bita vhodu v hex predstavlenni nomer ryadka drugi 4 bita Znachennya komirki na yih peretini vihid S bloku 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 A7 D3 E6 71 D0 AC 4D 79 3A C9 91 FC 1E 47 54 BD 1 8C A5 7A FB 63 B8 DD D4 E5 B3 C5 BE A9 88 0C A2 2 39 DF 29 DA 2B A8 CB 4C 4B 22 AA 24 41 70 A6 F9 3 5A E2 B0 36 7D E4 33 FF 60 20 08 8B 5E AB 7F 78 4 7C 2C 57 D2 DC 6D 7E 0D 53 94 C3 28 27 06 5F AD 5 67 5C 55 48 0E 52 EA 42 5B 5D 30 58 51 59 3C 4E 6 38 8A 72 14 E7 C6 DE 50 8E 92 D1 77 93 45 9A CE 7 2D 03 62 B6 B9 BF 96 6B 3F 07 12 AE 40 34 46 3E 8 DB CF EC CC C1 A1 C0 D6 1D F4 61 3B 10 D8 68 A0 9 B1 0A 69 6C 49 FA 76 C4 9E 9B 6E 99 C2 B7 98 BC A 8F 85 1F B4 F8 11 2E 00 25 1C 2A 3D 05 4F 7B B2 B 32 90 AF 19 A3 F7 73 9D 15 74 EE CA 9F 0F 1B 75 C 86 84 9C 4A 97 1A 65 F6 ED 09 BB 26 83 EB 6F 81 D 04 6A 43 01 17 E1 87 F5 8D E3 23 80 44 16 66 21 E FE D5 31 D9 35 18 02 64 F2 F1 56 CD 82 C8 BA F0 F EF E9 E8 FD 89 D7 C7 B5 A4 2F 95 13 0B F3 E0 37 Dana tablicya povnistyu ekvivalentna tij sho vikoristovuyetsya v algoritmi Anubis she odin algoritm rozroblenij ta podanij na konkurs NESSIE timi zh avtorami Princip viboru S bloku Bud yaka buleva funkciya f G F 2 n G F 2 displaystyle f GF 2 n rightarrow GF 2 mozhe buti podana u viglyadi polinomu Zhegalkina algebrayichna normalna forma Nelinijnim poryadkom funkciyi f displaystyle f nazivayetsya poryadok polinoma Zhegalkina tobto maksimalnij z poryadkiv yiyi chleniv Yaksho a G F 2 n displaystyle alpha in GF 2 n vvedemo funkciyu l a i 0 n 1 a i x i displaystyle l alpha bigoplus i 0 n 1 alpha i cdot x i l a G F 2 n G F 2 displaystyle displaystyle l alpha GF 2 n rightarrow GF 2 Blok zamini ce vidobrazhennya G F 2 n G F 2 n displaystyle GF 2 n rightarrow GF 2 n Takozh na nogo mozhna divitisya yak na vidobrazhennya G F 2 n G F 2 n displaystyle GF 2 n rightarrow GF 2 n S x s 0 x s n 1 x displaystyle displaystyle S x s 0 x s n 1 x de G F 2 n G F 2 n displaystyle GF 2 n rightarrow GF 2 n Nelinijnij poryadok S bloku S displaystyle S n s displaystyle nu s minimalnij nelinijnij poryadok sered usih linijnih kombinacij komponentiv S displaystyle S n s min a G F 2 n n l a S displaystyle displaystyle nu s equiv min alpha in GF 2 n nu l alpha circ S d displaystyle displaystyle delta parametr S bloku d S 2 n max a 0 b c G F 2 n S c a S c b displaystyle displaystyle delta S equiv 2 n cdot max a neq 0 b c in GF 2 n mid S c oplus a oplus S c b znachennya 2 n d displaystyle 2 n cdot delta nazivayetsya diferencialnoyu rivnomirnistyu S displaystyle displaystyle S Korelyaciya dvoh bulevih funkcij c f g 2 1 n x f x g x 1 displaystyle displaystyle c f g equiv 2 1 n cdot x mid f x g x 1 l displaystyle displaystyle lambda parametr S bloku l S max i j 0 0 c l i l j S displaystyle displaystyle lambda S equiv max i j neq 0 0 left vert c l i l j circ S right vert U shifri KHAZAD 0 vikoristovuyetsya psevdorandomnij zgenerovanij S blok sho vidpovidaye nastupnim vimogam povinen buti involyuciyeyu d displaystyle displaystyle delta parametr ne povinen perevishuvati znachennya 8 2 8 displaystyle displaystyle 8 times 2 8 l displaystyle displaystyle lambda parametr ne povinen perevishuvati znachennya 16 2 6 displaystyle displaystyle 16 times 2 6 nelinijnij poryadok n displaystyle nu povinen buti maksimalnim a same rivnim 7 Modifikovanij shifr Koristuyuchis mozhlivistyu neznachnoyi zmini algoritmu protyagom pershogo raundu konkursu avtori Khazad takozh vnesli zmini v svij algoritm V novomu varianti specifikaciyi algoritmu vihidnij algoritm Khazad nazvanij yak Khazad 0 a nazva Khazad prisvoyena modifikovanomu algoritmu Panasenko S P Algoritmi shifruvannya Specialnij dovidnik U modifikovanij versiyi shifru S blok 8x8 zminenij i predstavlenij rekursivnoyu strukturoyu sho skladayetsya z mini blokiv P i Q kozhen z yakih ye malenkim blokom zamini z 4 bitami na vhodi i vihodi 4x4 Rekursivna struktura bloku zamini v modifikovanomu shifri KHAZAD Rekursivna struktura bloku zamini v modifikovanomu shifri KHAZAD Dana struktura P i Q miniblokiv ekvivalentna S bloku z nastupnoyu tabliceyu zamini Vidpovidnist vihidnih znachen vhidnim dlya mini bloku P u 0 1 2 3 4 5 6 7 8 9 A B C D E F P u 3 F E 0 5 4 B C D A 9 6 7 8 2 1 Vidpovidnist vihidnih znachen vhidnim dlya mini bloku Q u 0 1 2 3 4 5 6 7 8 9 A B C D E F Q u 9 E 5 6 A 2 3 C F 0 4 D 7 B 1 8 Rezultuyuchij S blok u modifikovanomu shifri KHAZAD Tut nomer stovpcya pershi 4 bita vhodu nomer ryadka drugij 4 bit Znachennya komirki na yih peretini vihid S bloku 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 BA 54 2F 74 53 D3 D2 4D 50 AC 8D BF 70 52 9A 4C 1 EA D5 97 D1 33 51 5B A6 DE 48 A8 99 DB 32 B7 FC 2 E3 9E 91 9B E2 BB 41 6E A5 CB 6B 95 A1 F3 B1 02 3 CC C4 1D 14 C3 63 DA 5D 5F DC 7D CD 7F 5A 6C 5C 4 F7 26 FF ED E8 9D 6F 8E 19 A0 F0 89 0F 07 AF FB 5 08 15 0D 04 01 64 DF 76 79 DD 3D 16 3F 37 6D 38 6 B9 73 E9 35 55 71 7B 8C 72 88 F6 2A 3E 5E 27 46 7 0C 65 68 61 03 C1 57 D6 D9 58 D8 66 D7 3A C8 3C 8 FA 96 A7 98 EC B8 C7 AE 69 4B AB A9 67 0A 47 F2 9 B5 22 E5 EE BE 2B 81 12 83 1B 0E 23 F5 45 21 CE A 49 2C F9 E6 B6 28 17 82 1A 8B FE 8A 09 C9 87 4E B E1 2E E4 E0 EB 90 A4 1E 85 60 00 25 F4 F1 94 0B C E7 75 EF 34 31 D4 D0 86 7E AD FD 29 30 3B 9F F8 D C6 13 06 05 C5 11 77 7C 7A 78 36 1C 39 59 18 56 E B3 B0 24 20 B2 92 A3 C0 44 62 10 B4 84 43 93 C2 F 4A BD 8F 2D BC 9C 6A 40 CF A2 80 4F 1F CA AA 42 Z tablic legko pomititi sho v pervisnomu varianti tak i v modifikovanomu S bloki ye involyucijnimi tobto S S x x displaystyle S S x x BezpekaPeredbachayetsya sho KHAZAD ye kriptostijkim nastilki naskilki kriptostijkim mozhe buti blokovij shifr z danimi dovzhinami bloku i klyucha Ce peredbachaye krim inshogo nastupne najbilsh efektivnoyu atakoyu na znahodzhennya klyucha shifru KHAZAD ye povnij perebir otrimannya z danih par vidkritij tekst shifrotekst informaciyi pro inshi taki pari ne mozhe buti zdijsneno bilsh efektivno nizh znahodzhennya klyucha metodom povnogo pereboru ochikuvana skladnist poshuku klyucha metodom povnogo pereboru zalezhit vid bitovoyi dovzhini klyucha i dorivnyuye 2 127 displaystyle 2 127 stosovno do shifru KHAZAD Takij velikij zapas nadijnosti zakladavsya v shifr z urahuvannyam vsih vidomih atak Isnuyut ataki lishe na skorochenij variant shifru z 5 raundami Frederic Muller 2003 Yak vidno niyakih skilki nebud serjoznih problem z kriptostijkosti algoritmu Khazad viyavleno ne bulo sho zaznacheno i ekspertami konkursu NESSIE Krim togo ekspertami vidznachena dosit visoka shvidkist shifruvannya danogo algoritmu Khazad buv viznanij perspektivnim algoritmom velmi cikavim dlya podalshogo vivchennya ale ne stav odnim z peremozhciv konkursu cherez pidozri ekspertiv sho struktura algoritmu mozhe mistiti prihovani vrazlivosti yaki mozhut buti viyavleni v majbutnomu Panasenko S P Algoritmy shifrovaniya Specialnyj spravochnik DostupnistShifr KHAZAD ne buv i nikoli ne bude zapatentovanij Vin mozhe vikoristovuvatisya bezkoshtovno dlya bud yakih cilej NazvaShifr nazvanij na chest Kazad duma Khazad dum abo Moriyi velicheznogo pidzemnogo korolivstva gnomiv v Imlistih gorah Seredzem ya z trilogiyi Dzh R R Tolkina Volodar persniv Div takozhSHARK Advanced Encryption Standard AES PrimitkiLars R Knudsen Matthew J B Robshaw The Block Cipher Companion Springer 2011 S 63 ISBN 978 3 642 17341 7 Joan Daernen Vincent Rijrnen The Design of Rijndael Springer 2002 S 160 ISBN 3 540 42580 2 Arhiv originalu za 6 travnya 2021 Procitovano 4 kvitnya 2018 Panasenko S P Algoritmy shifrovaniya Specialnyj spravochnik SPb BHV Peterburg 2009 S 282 287 ISBN 978 5 9775 0319 8 Frederic Muller A new attack against khazad 6 bereznya 2016 in Proceedings of ASIACRYPT 2003 S 347 358 Paulo Sergio L M Barreto Vincent Rijmen The Khazad Block Cipher larc usp br Arhiv originalu za 2 veresnya 2012 Procitovano 30 listopada 2016 LiteraturaPanasenko S P Algoritmy shifrovaniya Specialnyj spravochnik SPb BHV Peterburg 2009 576 s il ISBN 978 5 9775 0319 8PosilannyaOficijna storinka shifru KHAZAD Paulo S L M Barreto and Vincent Rijmen tweaked KHAZAD In First Open NESSIE Workshop KU Leuven 2000 Modificated submission to NESSIE selected for 2nd Phase Paulo S L M Barreto and Vincent Rijmen The KHAZAD Legacy Level Block Cipher 6 travnya 2021 u Wayback Machine original KHAZAD 0 Original submission to NESSIE Alex Biryukov Analysis of Involutional Ciphers Khazad and Anubis 4 bereznya 2016 u Wayback Machine In T Johansson editor Fast Software Encryption 2003 Lectures Notes in Computer Science Springer 2003 Frederic Muller A New Attack against Khazad Advances in Cryptology 6 bereznya 2016 u Wayback Machine List of NESSIE submissions as originally submitted 13 zhovtnya 2016 u Wayback Machine Modifications to NESSIE submissions selected for 2nd Phase 13 zhovtnya 2016 u Wayback Machine Deliverables of the NESSIE project 13 zhovtnya 2016 u Wayback Machine NESSIE Public Report D14 Report on the Performance Evaluation of NESSIE Candidates I 20 sichnya 2022 u Wayback Machine NESSIE Public Report D18 Update on the selection of algorithms for further investigation during the second round 20 sichnya 2022 u Wayback Machine