
- •Інформація. Основні властивості інформації. Безпека інформації.
- •Криптографія. Історія розвитку криптографії. Класичні техніки шифрування.
- •Симетричні алгоритми кодування інформації. Міжнародні стандарти шифрування даних.
- •Алгоритми des, гост 28147-89. Порівняльна характеристика.
- •Симетричні блокові алгоритми. Алгоритми tea, rc4/5/6.
- •Режими шифрування для випадку симетричних блокових алгоритмів.
- •Надійність криптографічних систем. Криптоаналіз. Основні методи криптоаналізу. Приклади застосування.
- •Асиметричні алгоритми шифрування даних. Математичні проблеми, що лежать в основі асиметричних криптоалгоритмів. Алгоритм rsa.
- •Електронні цифрові підписи та адміністрування ключами. Обмін ключами. Алгоритм Діффі – Хеллмана. Криптосистема Ель-Гамаля.
- •Кодування інформації. Архівація. Стеганографія.
Симетричні алгоритми кодування інформації. Міжнародні стандарти шифрування даних.
Шифрування з симетричними ключами — схема шифрування, у якій ключ шифрування, та ключ дешифрування збігаються, або один легко обчислюється з іншого та навпаки, на відміну від асиметричного, де ключ дешифрування важко обчислити. В даний час симетричні шифри - це:
блокові шифри. Обробляють інформацію блоками певної довжини (зазвичай 64, 128 біт), застосовуючи до блоку ключ в установленому порядку, як правило, кількома циклами перемішування і підстановки, званими раундами. Результатом повторення раундів є лавинний ефект - наростаюча втрата відповідності бітів між блоками відкритих і зашифрованих даних.
потокові шифри, в яких шифрування проводиться над кожним бітом або байтом вихідного (відкритого) тексту з використанням гамування. Потоковий шифр може бути легко створений на основі блочного (наприклад, ГОСТ 28147-89 в режимі гамування), запущеного в спеціальному режимі.
Більшість симетричних шифрів використовують складну комбінацію великої кількості підстановок і перестановок. Багато такі шифри виконуються в кілька (іноді до 80) проходів, використовуючи на кожному проході "ключ проходу". Безліч "ключів проходу" для всіх проходів називається "розкладом ключів" (key schedule). Як правило, воно створюється з ключа виконанням над ним якихось операцій, в тому числі перестановок і підстановок. Типовим способом побудови алгоритмів симетричного шифрування є мережу Фейстеля. Алгоритм будує схему шифрування на основі функції F (D, K), де D - порція даних, розміром вдвічі менше блоку шифрування, а K - "ключ проходу" для даного проходу. Від функції не потрібно оборотність - зворотна їй функція може бути невідома. Переваги мережі Фейстеля - майже повний збіг дешифрування з шифруванням (єдина відмінність - зворотний порядок "ключів проходу" у розкладі), що сильно полегшує апаратну реалізацію. Операція перестановки перемішує біти повідомлення по якомусь закону. В апаратних реалізаціях вона тривіально реалізується як заплутання провідників. Саме операції перестановки дають можливість досягнення "ефекту лавини". Операція перестановки лінійна - f (a) xor f (b) == f (a xor b). Операції підстановки виконуються як заміна значення якоїсь частини повідомлення (часто в 4, 6 або 8 біт) на стандартне, жорстко вбудоване в алгоритм інше число шляхом звернення до константної масиву. Операція підстановки привносить в алгоритм нелінійність. Найчастіше стійкість алгоритму, особливо до диференціального криптоаналізу, залежить від вибору значень в таблицях підстановки (S-блоках). Як мінімум вважається небажаним наявність нерухомих елементів S (x) = x, а також відсутність впливу якогось біта вхідного байта на якийсь біт результату - тобто випадки, коли біт результату однаковий для всіх пар вхідних слів, що відрізняються тільки в даному біті. Поширені алгоритми
AES ( англ. Advanced Encryption Standard ) - Американський стандарт шифрування
ГОСТ 28147-89 - вітчизняний стандарт шифрування даних
DES ( англ. Data Encryption Standard ) - Стандарт шифрування даних у США до AES
3DES (Triple-DES, потрійний DES)
RC6 (Шифр Ривеста)
Twofish
IDEA ( англ. International Data Encryption Algorithm )
SEED - корейський стандарт шифрування даних
Camellia - сертифікований для використання в Японії шифр
CAST (за ініціалами розробників Carlisle Adams і Stafford Tavares)
XTEA - найбільш простий у реалізації алгоритм