з найпростіших і найбільш широко відомих методів шифрування.
Шифр ??Цезаря - це вид шифру підстановки, в якому кожен символ у відкритому тексті замінюється буквою знаходиться на деяке постійне число позицій лівіше або правіше нього в алфавіті. Наприклад, в шифрі зі зрушенням 3, А була б замінена на Г, Б стане Д, і так далі.
Шифр ??названий на честь римського імператора Гая Юлія Цезаря, який використав його для секретного листування зі своїми генералами. Давньоримський історик Светоній не приводить фактів дешифрування листування Цезаря. Сам Цезар все життя ис пользовал один і той же ключ (зсув - 3). Цим шифром він користувався, зокрема, для обміну посланнями з Цицероном.
Крок шифрування, виконуваний шифром Цезаря, часто включається як частина більш складних схем, таких як шифр Віженера, і все ще має сучасне додаток в системі ROT13. Як і всі моноалфавитной шифри, шифр Цезаря легко зламуються і не має практично ніякого застосування на практиці.
Рис. 1
У дев'ятнадцятому сторіччі, особиста секція рекламних оголошень у газетах іноді використовувалася, щоб обмінюватися повідомленнями, зашифрованими з використанням простих шифрів. Кан (1967) описує випадки коли любителі брали участь у секретних комунікаціях, зашифрованих з використанням шифру Цезаря в Таймс raquo ;. Навіть пізніше, в 1915, шифр Цезаря знаходив застосування: російська армія використовувала це як заміну для більш складних шифрів, які виявилися занадто складними для військ; у німецьких та австрійських криптоаналітиків були лише невеликі труднощі в розшифровці цих повідомлень.
Шифр ??Цезаря зі зрушенням тринадцятеро також використовується в алгоритмі ROT13, простому методі заплутування тексту, широко використовуваного в Usenet, і використовується скоріше як спосіб приховування спойлерів, ніж як метод шифрування. Шифр Вижинера використовує шифр Цезаря з різними зрушеннями в кожній позиції в тексті; значення зсуву визначається за допомогою повторюваного ключового слова. Якщо ключове слово таке ж довге як і повідомлення, тоді цей шифр стає невзламиваемим доти поки користувачі підтримують таємницю ключового слова.
Ключові слова, коротше ніж повідомлення (наприклад, Complete Victory raquo ;, використовується Конфедерацією під час громадянської війни в США), вводять циклічний зразок, який міг би бути виявлений за допомогою поліпшеної версії частотного аналізу.
У квітні 2006, побіжний бос Мафії Бернардо Провенцано був спійманий в Сицилії частково через криптоаналізу його повідомлень, написаних з використанням варіації шифру Цезаря. Шифр Провенцано використовував числа, так, щоб A була написана як 4 raquo ;, B як 5 raquo ;, і так далі.
Часто для зручність використання шифру цезаря використовують два диска різного діаметру з намальованими по краях дисків алфавітами, насаджених загальну вісь. Спочатку диски повертаються так, щоб навпроти кожної літери алфавіту зовнішнього диска знаходилася та ж буква алфавіту малого диска. Якщо тепер повернути внутрішній диск на декілька символів, то ми отримаємо відповідність між символами зовнішнього диска і внутрішнього - шифр Цезаря. Що вийшов диск можна використовувати як для шифрування, так і для розшифровки (Рис.2).
Наприклад, якщо внутрішнє колесо повернути так, щоб символу A зовнішнього диска відповідав символ D внутрішнього диска, то ми отримаємо шифр зі зрушенням 3 вліво.
Рис. 2
. 5 Постановка завдання
Мета даного курсового проекту - розробити прикладну програму для криптографічного обробки даних шифром Цезаря на мові програмування C ++.
Розробляється прикладна програма повинна вирішувати наступні завдання:
§ Шифрування введеного користувачем повідомлення.
§ Дешифрування введеного користувачем повідомлення.
Цільовою аудиторією для даної програми можуть бути школярі, студенти СУЗов і ВНЗ для навчання основам шифрування, а саме шифрування і дешифруванню даних за допомогою шифру Цезаря. А так само програму можуть використовувати викладачі для перевірки завдань по шифрування і дешифруванню текстів шифром Цезаря і всі бажаючі користувачі для свого дозвілля.
Вхідний інформацією для даної прокладний програми є малі літери російського алфавіту і цифри (1,2) для вибору режиму роботи (шифрування або дешифрування повідомлення). Вихідною інформацією є тільки малі літери російського.
Прикладна програма використовує наступний алгоритм дій:
. Введення цифри 1 і 2 для вибору режиму роботи програми (1 - шифрування, 2 - дешифрування).