- •1. Розділ 1 " Прикладна криптологія "
- •Основні поняття криптології. Шифрування та кодування. Стеганографія та криптографія. Алгоритми та протоколи.
- •Шифрування методом Цезаря. Зламування методу Цезаря.
- •Криптостійкість шифрів
- •Шифрування методом простої підстановки. Статистичні властивості мови. Зламування методу простої підстановки.
- •Поліалфавітні шифри (Гронсфельда, Тритеніуса, Віженера). Зламування методу Віженера.
- •Криптостійкість ключів.
- •Перестановочні шифри. Статистичні властивості криптограм перестановок.
- •Методи генерації псевдовипадкових послідовностей.
- •Симетричні шифри. Блочні та потокові шифри. Режими роботи блочних шифрів.
- •Стандарт шифрування dеs.
- •Стандарт шифрування rc5.
- •Характеристики
- •Шифрування
- •Дешифрування
- •Створення підключів
- •Стандарт шифрування idea.
- •Стандарт шифрування aes.
- •Криптоаналіз блочних та потокових шифрів.
- •Асиметрична криптографія.
- •Метод Райвеста-Шамира-Адлемана (rsа).
- •Перевірка чисел на взаємну простоту (розширений алгоритм Евкліда). Теореми Міллера-Рабіна та Ферма.
- •Зламування криптограм rsа.
- •Дискретне логарифмування.
- •Метод ель-Гамаля. Розшифровування криптограм ель-Гамаля.
- •Автентифікація користувача. Цифровий підпис. Стандарт dsa.
- •Шифрування з використанням еліптичних кривих.
- •Забезпечення цілісності інформації. Алгоритми хешування. Стандарт md5.
- •Забезпечення цілісності інформації. Алгоритми хешування. Стандарт sha-1.
- •Забезпечення цілісності інформації. Алгоритми хешування. Стандарт ripemd-160.
- •Реализация ripemd-160
- •Автентифікація користувача. Коди автентичності повідомлень.
- •Управління ключами. Обмін ключами по схемі Діффі-Хеллмана.
Стандарт шифрування dеs.
Комбінувати можна будь-які методи шифрування і в будь-якій кількості, однак на практиці найбільше поширення одержали наступні комбінації: підстановка + гамування, перестановка + гамування, гамування + гаммімрованіе, підстановка + перестановка. Типовим прикладом комбінованого шифру є національний стандарт США криптографічного закриття даних DES.
DES (Data Encryption Standart) це симетричний алгоритм шифрування, тобто один ключ використовується як для зашифровування, так і для розшифрування повідомлень. Розроблений фірмою IBM і затверджений урядом США в 1977 як офіційний стандарт.
DES має блоки по 64 біт і заснований на 16 кратною перестановці даних, також для зашифрування використовує ключ в 56 біт. Існує кілька режимів DES, наприклад Electronic Code Book (ECB) та Cipher Block Chaining (CBC). 56 біт - це 8 семібітових ASCII символів, тобто пароль не може бути більше ніж 8 букв. Якщо додатково використовувати тільки букви і цифри, то кількість можливих варіантів буде істотно менше максимально можливих 2 ^ 56.
Для його застосування в різних додатках були визначені 4 режиму його роботи.
ECB - Electronic Codebook (електронна шифрувальна книга)
ECB є найпростішим режимом шифрування, коли відкритий текст обробляється блоками по 64 біта, кожен з яких шифрується з одним і тим же ключем (рис. 1). Найважливішою особливістю цього режиму є те, що однакові 64-бітові блоки відкритого тексту, якщо такі зустрічаються у вихідному повідомленні, у зашифрованому тексті також будуть представлені однаковими блоками. Тому при передачі досить довгих повідомлень режим ECB може не забезпечити необхідний рівень захисту інформації.
При розбитті вихідного повідомлення на блоки, до останнього блоку додається заповнювач, якщо його довжина не дорівнює 64 біта.
CBC - Cipher Block Chaining (зчеплення шифрованих блоків)
Режим CBC вирішує проблему однакових шифрованих блоків відповідних однаковим блокам відкритого тексту. Цього домагаються за допомогою режиму зчепленого шифрування. Вхідний значення алгоритму шифрування задається XOR-сумою поточного блоку відкритого тексту і отриманого на попередньому кроці блоку шифрованого тексту.
Дешифрування відбувається за аналогічною схемою: блок відкритого тексту виходить як XOR-сума вихідного блоку алгоритму дешифрування і попереднього блоку шифрованого тексту.
Щоб отримати перший блок шифрованого тексту, розглядається XOR-сума деякого ініціалізаційний вектора (IV) і першого блоку відкритого тексту. При дешифрування, для відновлення першого блоку відкритого, необхідно також виконати операцію XOR по відношенню до того ж вектору IV і першого блоку на виході алгоритму дешифрування. У зв'язку з цим значення IV, також як і ключ шифрування, повинно бути відомо як відправнику, так і одержувачу повідомлення.
CFB - Cipher Feedback (шифрована зворотній зв'язок)
Алгоритм шифрування DES є блоковим шифром з розміром блоку 64 біта. Але його можна перетворити до потокового шифру, використовуючи режим CFB або OFB. Це позбавляє від необхідності доповнювати повідомлення до кратності 64 бітам, а також дозволяє використовувати цей алгоритм у системах реального часу, де дані необхідно шифрувати і передавати далі по мірі їх надходження.
Передбачається, що одиницею передачі даних є j бітів (зазвичай це значення дорівнює 8). Як і в режимі CBC, відбувається зчеплення елементів відкритого тексту, тому шифрований текст, що відповідає будь-якому елементу відкритого тексту, буде залежати від усіх попередніх елементів відкритого тексту.
Розглянемо процес шифрування. На вході функції шифрування розміщується 64-бітовий регістр зсуву, який спочатку містить деяке значення ініціалізаційний вектора (IV). Після шифрування значення даного регістра, беруться його крайні зліва j бітів, які складаються операцією XOR з першими j бітами відкритого (P1), що в результаті дає j бітів шифрованих даних (C1). Далі значення регістра зсуву зміщується вліво на j бітів, а крайні справа j бітів заміщуються значенням C1. Потім весь процес повторюється до тих пір, поки не зашифруйте всі дані.
Для дешифрування використовується та ж схема, але для отримання чергової порції відкритого тексту за допомогою операції XOR складаються шифровані дані та одержані на виході функції шифрування дані.
OFB - Output Feedback (зворотній зв'язок з виходу)
Даний режим багато в чому подібний до режиму CFB, за винятком того, що в регістр зсуву подаються крайні ліві j бітів результату функції шифрування, а не порція шифрованого тексту.
Режим OFB, в порівнянні з CFB, володіє тим перевагою, що вплив можливих спотворень бітів при передачі даних не поширюється на наступні порції даних. З іншого боку, цей режим забезпечує меншу захист даних, ніж CFB.
