ду (рисунок 1.3) і з формуванням контрольного коду і Зашифрування (малюнок 1.4) схематично показані на малюнку 1.2-1.4.
Малюнок 1.2
Малюнок 1.3
Малюнок 1.4
У ролі неповторюваного блоку даних nrb може виступати мітка часу, порядковий номер повідомлення і т.п. У ролі контрольного коду можуть виступати імітопріставкі або електронний підпис. Імітопріставкі називають контрольний код, який формується та перевіряється за допомогою одного і того ж секретного ключа. Використання блоку nrb дозволяє контролювати цілісність потоку повідомлень, захищаючи від повтору, затримки, переупорядковування або їх втрати. Цілісність потоку повідомлень можна також контролювати, використовуючи зашифрование зі зчепленням повідомлень.
Самий природний спосіб перетворення інформації з внесенням надмірності - це додавання до вихідних даних контрольного коду s фіксованою розрядності N i>, обчислюваного як деяка функція від цих даних
Виділення вихідних даних з перетвореного масиву p * є простим відкиданням контрольного коду s . Перевірка цілісності полягає в обчисленні для змістовної частини p * отриманого масиву даних контрольного коду s ?= F ( p ? ) і порівняння його з переданим значенням s . Якщо вони збігаються, повідомлення вважається справжнім, в іншому випадку - хибним:
Функція f формування контрольного коду повинна задовольняти наступним вимогам:
вона повинна бути обчислювально незворотною;
у противника має бути відсутня можливість сформувати помилковий масив даних з коректно обчисленим контрольним кодом.
Друге властивість можна забезпечити двома способами: або зробити функцію f залежною від деякого секретного параметра (ключа), або пересилати контрольний код окремо від даних, що захищаються. Найпростішим прикладом коду s є контрольна сума блоків масиву даних, однак таке перетворення непридатне для імітозащіти, т.к. контрольна сума не залежить від взаємного розташування блоків.
1.6 Захист від випадкових спотворень
Основним засобом захисту інформації від випадкових спотворень є перешкодостійкі коди. Найбільш яскравим представником є ?? CRC - коди (cyclic redundancy code). Циклічні коди володіють рядом достоїнств:
висока вірогідність виявлення спотворень;
залежність контрольного коду не тільки від усіх біт аналізованої інформаційної послідовності, але і від їх взаємного розташування;
високу швидкодію, пов'язане з отриманням контрольного коду в реальному масштабі часу;
простота апаратної реалізації і зручність інтегрального виконання;
простота програмної реалізації.
Циклічний код гарантує виявлення або виправлення помилок заданої ступеня кратності. Якщо кратність помилок перевищує задане значення, то застосовується код може їх не виявити, що робить непридатним для захисту від навмисних спотворень інформації.
Контроль цілісності здійснюється за допомогою ген...