Розробники | SAGE |
---|---|
Уперше оприлюднений | 1999 р. |
Раундів | 8 |
Тип | модифікована мережа Фейстеля |
KASUMI (з японської 霞 (хірагана かすみ, romaji kasumi), що означає "туман") - блочний шифр, що використовується в мережах стільникового зв'язку 3GPP. Також позначається A5/3 при використанні в GSM і GEA3 в GPRS.
KASUMI розроблений групою SAGE (Security Algorithms Group of Experts), яка є частиною Європейського Інституту по Стандартизації в області Телекомунікацій (ETSI)[1]. За основу був узятий існуючий алгоритм MISTY1 і оптимізований для використання в стільниковому зв'язку.
KASUMI використовує 64-бітний розмір блоку і 128-бітний ключ у 8-раундовій схемі Фейстеля. У кожному раунді використовується 128-бітний раундовий ключ, що складається з восьми 16-бітових підключів, отриманих з вихідного ключа фіксованою процедурою генерації підключів.
KASUMI розкладається в набір функцій (FL, FO, FI), які використовуються разом з пов'язаними з ними ключами (KL, KO, KI)
Вхідний блок даних I поділяється на дві рівні частини:
Потім для кожного :
де - раундова функція. - раундовий 128-бітний ключ
На виході
Обчислюється таким чином:
Для раундів 1,3,5,7:
Для раундів 2,4,6,8:
На вхід функції подається 32-бітний блок даних I і 32-бітний ключ 'KL i ', який поділяється на два 16-бітових підключа:
Вхідна рядок I поділяється на дві частини по 16 біт:
Визначимо:
Де - циклічний зсув вліво на 1 біт.
На виході .
На вхід функції подається 32-бітний блок даних і два ключі по 48 біт: .
Вхідний рядок I розділяється на дві частини по 16 біт: .
48-бітові ключі поділяються на три частини кожен:
Потім для визначимо:
На виході .
На вхід функції подається 16-бітний блок даних 'I і 16-бітний ключ 'KI i, j .
Вхід I поділяється на дві нерівні складові: 9-бітну ліву частину L 0 і 7-бітну праву R 0 :
Точно так же ключ KI i, j, поділяється на 7-бітну компоненту KI i, j, 1 і 9 - бітну компоненту KI i, j, 2 :
Функція використовує два S-блоку: S7 який відображає 7-бітний вхід в 7-бітний вихід, і S9 який відображає 9-бітний вхід в 9-бітний вихід.
Також використовуються ще дві функції:
Функція реалізується наступним набором операцій:
Функція повертає значення .
Кожен раунд KASUMI отримує ключі із загального ключа K наступним чином:
де 'C j ' визначаються за таблицею:
C1 | 0x0123 |
С2 | 0x4567 |
С3 | 0x89AB |
С4 | 0xCDEF |
С5 | 0xFEDC |
С6 | 0xBA98 |
С7 | 0x7654 |
С8 | 0x3210 |
Ключ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
K1<<<1 | K2<<<1 | K3<<<1 | K4<<<1 | K5<<<1 | K6<<<1 | K7<<<1 | K8<<<1 | |
K3' | K4' | K5' | K6' | K7' | K8' | K1' | K2' | |
K2<<<5 | K3<<<5 | K4<<<5 | K5<<<5 | K6<<<5 | K7<<<5 | K8<<<5 | K1<<<5 | |
K6<<<8 | K7<<<8 | K8<<<8 | K1<<<8 | K2<<<8 | K3<<<8 | K4<<<8 | K5<<<8 | |
K7<<<13 | K8<<<13 | K1<<<13 | K2<<<13 | K3<<<13 | K4<<<13 | K5<<<13 | K6<<<13 | |
K5' | K6' | K7' | K8' | K1' | K2' | K3' | K4' | |
K4' | K5' | K6' | K7' | K8' | K1' | K2' | K3' | |
K8' | K1' | K2' | K3' | K4' | K5' | K6' | K7' |
де X <<< n
- циклічний зсув на n біт вліво.
У 2001 році була представлена атака методом неможливих диференціалів. Автор - Ульріх Кен (2001).[2]
У 2003 році Елад Баркан, Елі Біхамом і Натан Келлер продемонстрували атаку з посередником на протокол GSM, що дозволяє обійти шифр A5/3 і таким чином зламати протокол. Однак, цей підхід не зламує шифр A5/3 безпосередньо. [3] Повна версія була опублікована пізніше, в 2006. [4]
У 2005 році Елі Біхамом, Орр Дункельман і Натан Келлер опублікували атаку на KASUMI методом бумеранга, яка зламує шифр швидше, ніж повний перебір. Для атаки потрібно обраних відкритих текстів, кожен з яких був зашифрований одним з 4 пов'язаних ключів, і має складність за часом, еквівалентну шифрування KASUMI. Ця атака показує небезпечність шифрування KASUMI в 3G мережах.
((cite web))
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
((cite web))
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
((cite web))
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
((cite web))
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
Мережа Файстеля, блок 64 біт : ГОСТ 28147-89 (Magma) | 3-DES | Blowfish | DES | FEAL | IDEA | KASUMI | RC5 | TEA | |