У криптографії, код автентифікації повідомлення ланцюгуванням шифроблоків (CBC-MAC) — техніка побудови кода автентифікації повідомлення з блочного шифру. Повідомлення шифроване деяким алгоритмом блочного шифрування в (режимі CBC) для створення ланцюга блоків таких, що кожен блок залежить від правильного шифрування попередніх блоків. Ця взаємозалежність гарантує. що зміна в будь-якому біті відкритого тексту спричинить зміну в останньому зашифрованому блоці, яку не можна передбачити або запобігти без знання ключа блочного шифру.
Для обчислення CBC-MAC повідомлення користувач шифрує в режимі CBC з нульовим ініціалізаційним вектором. Наступне зображення є нарисом обчислення CBC-MAC повідомлення з блоків секретним ключем і PRP (блочним шифром):
Отримуємо PRF
Безпека з повідомленнями встановленої і змінної довжини
Якщо використовний блочний шифр безпечний (тобто є псевдовипадковою переставкою), тоді CBC-MAC безпечний для повідомлень встановленого розміру. Однак, не є безпечним для повідомлень змінної довжини. Отже, кожен окремий ключ треба використовувати для повідомлень встановленої і відомої довжини. Нападник, який знає правильну пару повідомлення-тег (тобто CBC-MAC) і може утворити третє повідомлення чий CBC-MAC також буде . Це робиться простим XOR-енням першого блоку з і тоді приєднанням до ; тобто через утворення .
Цю проблему не можна розв'язати через додавання блоку з розміром повідомлення наприкінці. Існує три головних способи зміни CBC-MAC так, щоб убезпечити його для повідомлень змінної довжини
:- Додавання довжини повідомлення в перший блок (англ. length-prepend CBC MAC). Це може бути проблематичним якщо довжина повідомлення не відома, коли почалось опрацювання.
- Використання різних ключів для повідомлень різних довжин (англ. input-length key separation).
- ECBC-MAC, XCBC-MAC.
Також, для захисту цілісності повідомлень змінної довжини, можна розглянути інші режими, наприклад, (фактично різновид XCBC-MAC) або HMAC.
ECBC-MAC
XCBC-MAC
Переваги
- Робить найменшу кількість викликів блочного шифру для MAC такого типу
- Правильно обробляє повідомлення будь-якої довжини
- Блочний шифр викликається лише з одним ключем:
- Блочний шифр викликається лише в напрямку шифрування
- Дозволяє обробку по ходу
- Легкий у втіленні, знайомий користувачам
- Вільний
- XCBC — це PRF (не тільки MAC)
- – Безпечна PRF завжди є MAC
- – Не використовується нонс/IV
- – Тегі коротші
- – Тегі можна обрізати
- – Інші застосування
- • Розділення ключа
- • PRG
- • Протоколи квитування (підтвердження) зв'язку
- Доведеннєво безпечний (припускаючи, що E є PRP)
Вади
- Обмежені можливості розпаралелювання (притаманно CBC-MAC)
- Довжина ключа
Порівняння різновидів CBC-MAC
Ім'я | Домен | #E викликів | #E ключів | Довжина ключа | #E викликів до обробки |
---|---|---|---|---|---|
CBC-MAC | 0 | ||||
EMAC | 0 | ||||
RMAC | 0 | ||||
XCBC | 0 | ||||
TMAC | 0 | ||||
XCBC+kst | 3 або 4 | ||||
TMAC+kst | 2 або 3 | ||||
OMAC | 1 |
«#E викликів до обробки» — позначає кількість викликів блочного шифру в попередньому опрацюванні. Ці виклики можна робити без повідомлення. Для XCBC+kst і TMAC+kst за блочний шифр припускаємо AES.
kst — техніка розділення ключів (англ. key separation technique).
Примітки
- M. Bellare, J. Kilian and P. Rogaway. The security of the cipher block chaining message authentication code. [ 5 лютий 2012 у Wayback Machine.] JCSS 61(3):362-399, 2000.
- Kaoru Kurosawa, Tetsu Iwata. Two-key CBC MAC [ 9 травня 2012 у Wayback Machine.] стор. 3, 2002
- Fast Software Encryption: 10th International Workshop, FSE 2003, Lund, Sweden, February 24-26, 2003 : Revised Papers, Том 10, стор. 143
Посилання
- XCBC: Версія CBC MAC для опрацювання повідомлень довільної довжини [ 4 червня 2011 у Wayback Machine.] на сайті NIST. (англ.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
U kriptografiyi kod avtentifikaciyi povidomlennya lancyuguvannyam shifroblokiv CBC MAC tehnika pobudovi koda avtentifikaciyi povidomlennya z blochnogo shifru Povidomlennya shifrovane deyakim algoritmom blochnogo shifruvannya v rezhimi CBC dlya stvorennya lancyuga blokiv takih sho kozhen blok zalezhit vid pravilnogo shifruvannya poperednih blokiv Cya vzayemozalezhnist garantuye sho zmina v bud yakomu biti vidkritogo tekstu sprichinit zminu v ostannomu zashifrovanomu bloci yaku ne mozhna peredbachiti abo zapobigti bez znannya klyucha blochnogo shifru Dlya obchislennya CBC MAC povidomlennya m displaystyle m koristuvach shifruye m displaystyle m v rezhimi CBC z nulovim inicializacijnim vektorom Nastupne zobrazhennya ye narisom obchislennya CBC MAC povidomlennya z blokiv m1 m2 mx displaystyle m 1 m 2 cdots m x sekretnim klyuchem k displaystyle k i PRP F K X X displaystyle F K times X to X blochnim shifrom Otrimuyemo PRF FCBC K X L X displaystyle F CBC K times X leq L to X Bezpeka z povidomlennyami vstanovlenoyi i zminnoyi dovzhiniYaksho vikoristovnij blochnij shifr bezpechnij tobto ye psevdovipadkovoyu perestavkoyu todi CBC MAC bezpechnij dlya povidomlen vstanovlenogo rozmiru Odnak ne ye bezpechnim dlya povidomlen zminnoyi dovzhini Otzhe kozhen okremij klyuch treba vikoristovuvati dlya povidomlen vstanovlenoyi i vidomoyi dovzhini Napadnik yakij znaye pravilnu paru povidomlennya teg tobto CBC MAC m displaystyle m t displaystyle t i m displaystyle m t displaystyle t mozhe utvoriti tretye povidomlennya m displaystyle m chij CBC MAC takozh bude t displaystyle t Ce robitsya prostim XOR ennyam pershogo bloku m displaystyle m z t displaystyle t i todi priyednannyam m displaystyle m do m displaystyle m tobto cherez utvorennya m m m1 t m2 mx displaystyle m m m 1 oplus t m 2 dots m x Cyu problemu ne mozhna rozv yazati cherez dodavannya bloku z rozmirom povidomlennya naprikinci Isnuye tri golovnih sposobi zmini CBC MAC tak shob ubezpechiti jogo dlya povidomlen zminnoyi dovzhini 33 Dodavannya dovzhini povidomlennya v pershij blok angl length prepend CBC MAC Ce mozhe buti problematichnim yaksho dovzhina povidomlennya ne vidoma koli pochalos opracyuvannya Vikoristannya riznih klyuchiv dlya povidomlen riznih dovzhin angl input length key separation ECBC MAC XCBC MAC Takozh dlya zahistu cilisnosti povidomlen zminnoyi dovzhini mozhna rozglyanuti inshi rezhimi napriklad faktichno riznovid XCBC MAC abo HMAC ECBC MACXCBC MACpad b b if b nb10 0 if b lt n displaystyle pad b begin cases b amp mbox if b n b10 0 amp mbox if b lt n end cases Perevagi Robit najmenshu kilkist viklikiv blochnogo shifru dlya MAC takogo tipu Pravilno obroblyaye povidomlennya bud yakoyi dovzhini Blochnij shifr viklikayetsya lishe z odnim klyuchem k1 displaystyle k 1 Blochnij shifr viklikayetsya lishe v napryamku shifruvannya Dozvolyaye obrobku po hodu Legkij u vtilenni znajomij koristuvacham Vilnij XCBC ce PRF ne tilki MAC Bezpechna PRF zavzhdi ye MAC Ne vikoristovuyetsya nons IV Tegi korotshi Tegi mozhna obrizati Inshi zastosuvannya Rozdilennya klyucha PRG Protokoli kvituvannya pidtverdzhennya zv yazku dd Dovedennyevo bezpechnij pripuskayuchi sho E ye PRP Vadi Obmezheni mozhlivosti rozparalelyuvannya pritamanno CBC MAC Dovzhina klyucha k 2n displaystyle k 2n Porivnyannya riznovidiv CBC MACIm ya Domen E viklikiv E klyuchiv Dovzhina klyucha E viklikiv do obrobkiCBC MAC 0 1 n m displaystyle 0 1 n m M n displaystyle M n 1 displaystyle 1 k displaystyle k 0EMAC 0 1 displaystyle 0 1 1 d M 1 ne displaystyle 1 mathcal d M 1 n mathcal e 2 displaystyle 2 2k displaystyle 2k 0RMAC 0 1 displaystyle 0 1 1 d M 1 ne displaystyle 1 mathcal d M 1 n mathcal e 1 M displaystyle 1 M 2k displaystyle 2k 0XCBC 0 1 displaystyle 0 1 1 d M ne displaystyle 1 mathcal d M n mathcal e 1 displaystyle 1 k 2n displaystyle k 2n 0TMAC 0 1 displaystyle 0 1 1 d M ne displaystyle 1 mathcal d M n mathcal e 1 displaystyle 1 k n displaystyle k n 0XCBC kst 0 1 displaystyle 0 1 1 d M ne displaystyle 1 mathcal d M n mathcal e 2 displaystyle 2 k displaystyle k 3 abo 4TMAC kst 0 1 displaystyle 0 1 1 d M ne displaystyle 1 mathcal d M n mathcal e 2 displaystyle 2 k displaystyle k 2 abo 3OMAC 0 1 displaystyle 0 1 1 d M ne displaystyle 1 mathcal d M n mathcal e 1 displaystyle 1 k displaystyle k 1 E viklikiv do obrobki poznachaye kilkist viklikiv blochnogo shifru v poperednomu opracyuvanni Ci vikliki mozhna robiti bez povidomlennya Dlya XCBC kst i TMAC kst za blochnij shifr pripuskayemo AES kst tehnika rozdilennya klyuchiv angl key separation technique PrimitkiM Bellare J Kilian and P Rogaway The security of the cipher block chaining message authentication code 5 lyutij 2012 u Wayback Machine JCSS 61 3 362 399 2000 Kaoru Kurosawa Tetsu Iwata Two key CBC MAC 9 travnya 2012 u Wayback Machine stor 3 2002 Fast Software Encryption 10th International Workshop FSE 2003 Lund Sweden February 24 26 2003 Revised Papers Tom 10 stor 143PosilannyaXCBC Versiya CBC MAC dlya opracyuvannya povidomlen dovilnoyi dovzhini 4 chervnya 2011 u Wayback Machine na sajti NIST angl