нкціонованих змін даних:
формування за допомогою функції зашифрування Ek блочного шифру коду аутентифікації повідомлень - MAC (Message Authentification Code) ;
формування за допомогою незворотною функції стиснення h ( x ) (хеш-функції) інформації коду виявлення маніпуляцій з даними - MDC (Manipulation Detection Code).
Код аутентифікації повідомлень ( MAC ) використовується для захисту при передачі даних з використанням секретного ключа, що вимагає попереднього розподілу ключів. Контрольний код зберігається разом з захищеними даними і у супротивника відсутня можливість його обчислення.
імітопріставкі ГОСТ 28147-89 є класичним прикладом коду MAC . Код аутентифікації може формуватися в режимах зчеплення блоків шифротекста CBC (Ciphertext Block Chaining) або зворотного зв'язку по шифротекст CBF (Ciphertext Feedback), забезпечують залежність останнього блоку шифротекста від всіх блоків відкритого тексту. У разі використання перетворення Ek для вироблення контрольного тексту вимоги до нього дещо відрізняються від вимог при його використанні для зашифрування оскільки не потрібно властивість оборотності, а також крипостійкість може бути знижена, наприклад, за рахунок зменшення числа раундів шифрування. У разі вироблення коду MAC перетворення завжди виконується в одну сторону, при цьому в розпорядженні противника є тільки залежний від всіх блоків відкритого тексту контрольний код, в той час як при зашифрованих у нього є набір блоків шифротекста, отриманих з використанням одного секретного ключа. Схема алгоритму формування MAC показана на малюнку 1.7.
Малюнок 1.7
Код виявлення маніпуляцій з даними - MDC використовується при разової передачі даних для контролю цілісності, що зберігається. Оскільки контрольний код передається окремо від даних, що захищаються, необхідний автентичний канал для його передачі. Оскільки секретної інформації немає, то у противника є можливість обчислення контрольного коду.
MDC є результат дії хеш-функції. Інакше кажучи, MDC це хеш-образ повідомлення p , до якого застосували хеш-функцію, тобто s = h ( p ). Основна вимога до хеш-функції полягає в тому, щоб не існувало способу визначення масиву даних p , що має задане значення хеш-образу h ( p ), відмінного від перебору по всій множині можливих значень p . Найбільш простий спосіб побудови хеш-функції заснований на використанні обчислювальної незворотності щодо ключа k функції зашифрування Ek будь-якого блокового шифру. Навіть при відомих блоках відкритого p та закритого текстів c = Ek ( p ) ключ k не може бути визначений інакше, як перебором по безлічі всіх можливих значень. Таким чином, схема формування х...