- •Вступ. Історія розвитку криптографії
- •Література
- •Розділ 1. Традиційні симетричні криптосистеми
- •1.1. Основні поняття та визначення
- •1.2. Шифрування методом переставляння
- •1.2.1. Шифр переставляння за описом Плутарха
- •1.2.2. Шифрувальні таблиці
- •1.2.3. Застосування магічних квадратів
- •1.3. Шифрування методом простої заміни
- •1.3.1. Полібіанський квадрат
- •1.3.2. Система шифрування Цезаря
- •1.3.3. Афінна система підставлянь Цезаря
- •1.3.4. Система шифрування Цезаря з ключовим словом
- •1.3.5. Шифрувальні таблиці Трісемуса
- •1.3.6. Біграмний шифр Плейфера
- •1.3.7. Криптографічна система Хілла
- •1.3.8. Система омофонів
- •1.4. Шифрування методом складної заміни
- •1.4.1. Система шифрування Віженера
- •1.4.2. Шифр Гронсфельда
- •1.4.3. Шифр "подвійний квадрат" Уїтстона
- •1.4.4. Одноразова система шифрування
- •1.4.5. Шифрування методом Вернама
- •1.4.6. Роторні машини
- •1.5. Шифрування методом гамування
- •1.5.1. Накладання гами шифру на вхідний текст
- •1.5.2. Методи генерування псевдовипадкових послідовностей чисел
1.4.2. Шифр Гронсфельда
Шифр складної заміни, який називається шифром Гронсфельда12, є модифікацією шифру Цезаря з числовим ключем. Для цього під буквами початкового повідомлення записують цифри числового ключа. Якщо ключ коротший за повідомлення, то його запис циклічно повторюють. Зашифрований текст отримують приблизно, як у шифрі Цезаря, але відраховують за алфавітом не третю букву (як це робиться в шифрі Цезаря), а вибирають ту букву, яка зміщена за алфавітом на відповідну цифру ключа. Наприклад, застосовуючи як ключ групу з чотирьох початкових цифр числа e (основи натуральних логарифмів), а саме 2.718, отримуємо для початкового повідомлення СХІДНИЙ ЕКСПРЕС такий зашифрований текст:
Мудрий не все каже, що знає, а дурень не все знає, що каже.
Повідомлення |
В |
О |
С |
Т |
О |
Ч |
Н |
Ы |
Й |
|
Э |
К |
С |
П |
Р |
Е |
С |
С |
Ключ |
2 |
7 |
1 |
8 |
2 |
7 |
1 |
8 |
2 |
|
7 |
1 |
8 |
2 |
7 |
1 |
8 |
2 |
Зашифрований текст |
Д |
Х |
Т |
Ь |
Р |
Ю |
О |
Г |
Л |
|
Д |
Л |
Щ |
С |
Ч |
Ж |
Щ |
У |
Щоб зашифрувати першу букву В повідомлення, використовуючи першу цифру ключа 2, потрібно відрахувати другу за порядком букву В у алфавіті
В |
Г |
Д |
|
1 |
2 |
тобто, виходить перша буква шифротекста Д.
Необхідно зазначити, що шифр Гронсфельда розкривається відносно легко, якщо врахувати, що в числовому ключі кожна цифра має тільки десять значень, а значить є тільки десять варіантів зчитування кожної букви зашифрованого тексту. З іншого боку, шифр Гронсфельда допускає подальші модифікації, які поліпшують його стійкість, зокрема подвійне шифрування різними числовими ключами.
Шифр Гронсфельда є за своєю сутністю окремим випадком системи шифрування Віженера.
1.4.3. Шифр "подвійний квадрат" Уїтстона
У 1854 р. англієць Чарльз Уїтстон13 розробив новий метод шифрування біграмами, який називають "подвійним квадратом". Свою назву цей шифр отримав за аналогією з Полібіанським квадратом. Шифр Уїтстона відкрив новий етап в історії розвитку криптографії. На відміну від Полібіанського квадрата, шифр "подвійний квадрат" використовує відразу дві таблиці, розміщені на одній горизонталі, а шифрування йде біграмами, як у шифрі Плейфера. Ці не такі вже й складні модифікації привели до появи на світ якісно нової криптографічної системи ручного шифрування. Шифр "подвійний квадрат" виявився дуже надійним і зручним і застосовувався Німеччиною навіть в роки другої світової війни.
Пояснимо процедуру шифрування цим шифром на конкретному прикладі. Нехай є дві таблиці з випадково розташованими в них буквами українського алфавіту (рис. 4.12). Перед шифруванням початкове повідомлення розбивають на біграми. Кожна біграма шифрується окремо. Першу букву біграми знаходять в лівій таблиці, а другу букву – в правій таблиці. Потім у думках будують прямокутник так, щоб букви біграми знаходилися в його протилежних вершинах. Інші дві вершини цього прямокутника дають букви біграми зашифрованого тексту.
Рис. 4.12. Дві таблиці з випадково розташованими символами українського алфавіту для шифру "подвійний квадрат"
Припустимо, що шифрується біграма початкового тексту ИЛ. Буква И знаходиться в стовпці 1 і рядку 2 лівої таблиці. Буква Л знаходиться в стовпці 5 і рядку 4 правої таблиці. Це означає, що прямокутник утворений рядками 2 і 4, а також самими стовпцями 1 лівої таблиці і 5 правої таблиці. Отже, в біграму зашифрованого тексту входять буква О, розташована в стовпці 5 і рядку 2 правої таблиці, і буква В, розташована в стовпці 1 і рядку 4 лівої таблиці, тобто отримуємо біграму зашифрованого тексту ОВ.
Якщо обидва символи біграми повідомлення знаходяться в одному рядку, то і букви зашифрованого тексту беруть з цього ж рядка. Першу букву біграми зашифрованого тексту беруть з лівої таблиці в стовпці, яка відповідає другій букві біграми повідомлення. Друга ж буква біграми зашифрованого тексту береться з правої таблиці в стовпці, який відповідає першій букві біграми повідомлення. Тому біграма повідомлення ТО перетворюється на біграму зашифрованого тексту ЖБ. Аналогічно шифруються всі біграми повідомлення:
Повідомлення: ПР ИУЛ ЕТ АЮ _Ш ЄС ТЕ ГО
Зашифрований текст: ПЕ 0В ЩН ФМ ЕШ РФ БЖ ДЦ
Шифрування методом "подвійного квадрата" дає надзвичайно стійкий до розкриття і простий в застосуванні шифр. Зламування зашифрованого тексту "подвійного квадрата" вимагає великих зусиль, при цьому довжина повідомлення повинна бути не менше тридцяти рядків.