Симетричні криптосистеми
|
|
{{{img}}} | ||
Імя | Галина | |
Прізвище | Суханя | |
По-батькові | Петрівна | |
Факультет | ФІС | |
Група | СНс-43 | |
Залікова книжка | ПКс-08-100 |
Зміст
Симетричні криптосистеми
Симетричні криптосистеми – спосіб шифрування, в якому для шифрування і дешифрування застосовується один і той же криптографічний ключ. Ключ алгоритму повинен зберігатися в секреті обома сторонами. До винаходу схеми асиметричного шифрування єдиним існуючим способом було симетричне шифрування.
Алгоритми шифрування і дешифрування даних широко застосовуються в комп'ютерній техніці в системах приховування конфіденційної і комерційної інформації від не коректного використання сторонніми особами. Головним принципом у них є умова, що особа яка приймає повідомлення, заздалегідь знає алгоритм шифрування, а також ключ до повідомлення, без якого інформація є всього лише набір символів, що не мають сенсу.
Симетричні криптоалгоритми виконують перетворення невеликого (1 біт або 32-128 біт) блоку даних в залежності від ключа таким чином, що прочитати оригінал повідомлення можна тільки знаючи цей секретний ключ.
Класифікація симетричних криптоалгоритмів
Криптографічних алгоритмів існує безліч. В загальному вони призначені для захисту інформації. Симетричні криптоалгоритми відносяться до криптоалгоритмів з ключем. Вони поділяються на:
1. Потокові шифри – побітна обробка інформації. Шифрування і дешифрування в таких схемах може обриватися в довільний момент часу, як тільки з'ясовується, що потік що передається перервався, і також відновлюється при виявленні факту продовження передачі.
1.1 Скремблер – це набір біт, які міняються на кожному кроці по визначеному алгоритму. Після виконання кожного наступного кроку на його виході появляється шифруючий біт (0 або 1), який накладається на поточний біт інформаційного потоку операцією XOR.
2. Блочні шифри – перетворення блоку вхідної інформації фіксованої довжини. і отримують результуючий блок того ж обсягу. Схема застосовується при пакетній передачі інформації та кодування файлів.
2.1 Шифр ТЕА - один із самих простих в реалізації, але стійких криптоалгоритмів;
2.2 Мережа Фейштеля – метод оборотних перетворень тексту, при якому значення, обчислені від однієї з частин тексту, накладається на інші частини. Часто структура мережі виконується таким чином, що для шифрування і дешифрування використовується один і той же алгоритм - різниця полягає лише в порядку використання матеріалу ключа.
2.3 Стандарт AES – стандарт блочних шифрів США з 2000 року.
Потокові шифри
Головною відмінною рисою потокових шифрів є побітна обробка інформації. Як наслідок, шифрування і дешифрування в таких схемах може обриватися в довільний момент часу, як тільки з'ясовується, що потік що передається перервався, і також відновлюється при виявленні факту продовження передачі. Подібна обробка інформації може бути представлена у вигляді автомата, який на кожному своєму такті:
-генерує за будь-яким законом один біт шифрувальної послідовності;
- яким-небудь оборотним перетворенням накладає на один біт відкритого потоку даний шифрувальний біт, отримуючи зашифрований біт.
Всі сучасні потокові шифри діють за даною схемою. Біт шифрування, що виникає на кожному новому кроці автомата, як втім і цілий набір таких біт, прийнято позначати символом γ (гамма), а самі потокові шифри отримали через це другу назву - шифри гамування.
Шифри гамування набагато швидші за своїх найближчих конкурентів - блокових шифрів - у тому випадку, якщо потокове шифрування реалізується апаратно. Базові схеми шифрів гамування влаштовані просто i як би "самі просяться" в апаратну реалізацію - це й не дивно, якщо взяти до уваги історію та основну мету їх створення. У тих же випадках, коли з яких-небудь причин дані алгоритми реалізовані програмно, їх швидкість порівняна з блочними шифрами, а іноді і набагато нижче за них.
Трьома основними компонентами, над якими обчислюється функція, що породжує гаму, є:
- ключ;
- номер поточного кроку шифрування;
- прилеглі від поточної позиції біти вихідного і / або зашифрованого тексту.
Ключ є необхідною частиною гаммуючого шифру. Якщо ключ і схема породження гами не є секретним, то поточний шифр перетворюється на звичайний перетворювач-кодер - скремблер.
Скремблер
Скремблер (від англ. Scramble - перемішувати, збивати) - це набір біт, які міняються на кожному кроці по визначеному алгоритму.
Останнім часом сфера застосування скремблюючих алгоритмів значно скоротилася. Це пояснюється в першу чергу зниженням обсягів побітної послідовної передачі інформації, для захисту якої були розроблені дані алгоритми. Практично повсюдно в сучасних системах застосовуються мережі з комутацією пакетів, для підтримки конфіденційності якій використовуються блокові шифри. А їх крипостійкість перевершує, і часом досить значно, крипостійкість скремблера.
Суть скремблювання полягає в побітній зміні проходящого через систему потоку даних. Практично єдиною операцією, яка використовується у скремблері є XOR - "побітне виключення АБО". Паралельно проходження інформаційного потоку в скремблер за певним правилом генерується потік біт - кодуючий потік. Як пряме, так і зворотне шифрування здійснюється накладенням по XOR кодує послідовності на вихідну.
Генерація кодуючої послідовності біт проводиться циклічно з невеликого початкового об'єму інформації - ключа за наступним алгоритмом. З поточного набору біт вибираються значення певних розрядів і складаються з XOR між собою. Всі розряди зсуваються на 1 біт, а тільки що отримане значення ( "0" або "1") поміщається в наймолодший розряд який звільнився. Значення, що знаходилося в самому старшому розряді до зсуву, додається у кодує послідовність, стаючи черговим її бітом (рис.1.2).
З теорії передачі даних криптографія запозичила для запису подібних схем двійкову систему запису. По ній зображений на малюнку скремблер записується комбінацією "100112" - одиниці відповідають розрядами, з яких знімаються біти для формування зворотного зв'язку.