Шифратор Цезаря.
Розробити програму, яка кодує текст введений з клавіатури або з файлу. У шифрі Цезаря кожна i-та буква алфавіту в початковому тексті замінюється на i-k-ту, де k - зміщення. Коди літер алфавіту йдуть по колі, після літери "я" йде буква "а". Шифрований файл легко декодується при відомому k.Шифр Цезаря
Опис
Принцип дії
Принцип дії полягає в тому, щоб циклічно зсунути алфавіт, а ключ — це кількість літер, на які робиться зсув.Шифр Цезаря — симетричний алгоритм шифрування підстановками. Використовувався римським імператором Юлієм Цезарем для приватного листування.
Математична модель
Якщо зіставити кожному символу алфавіту його порядковий номер (нумеруючи з 0), то шифрування і дешифрування можна виразити формулами:де — символ відкритого тексту,
— символ шифрованого тексту,
— потужність алфавіту, а
— ключ.
Для цього зрушимо алфавіт так, щоб він починався з четвертої букви (Г). Отже, беручи вихідний алфавіт
і зміщуючи всі літери вліво на 3, отримуємо:
де Г=А, Ґ=Б, Д=В, і т. д.
Використовуючи цю схему, відкритий текст «ШИФР ЦЕЗАРЯ» перетворюється на «ЮЙЧУ ЩЗЇГУВ». Для того, щоб одержувач повідомлення міг відновити вихідний текст, необхідно повідомити йому, що ключ — 3.
Приклад
Припустимо, що, використовуючи шифр Цезаря, з ключем, який дорівнює 3, небохідоно зашифрувати словосполучення «ШИФР ЦЕЗАРЯ».Для цього зрушимо алфавіт так, щоб він починався з четвертої букви (Г). Отже, беручи вихідний алфавіт
АБВГҐДЕЄЖЗИІЇЙКЛМНОПРСТУФХЦЧШЩЬЮЯ,
і зміщуючи всі літери вліво на 3, отримуємо:
ГҐДЕЄЖЗИІЇЙКЛМНОПРСТУФХЦЧШЩЬЮЯАБВ,
де Г=А, Ґ=Б, Д=В, і т. д.
Використовуючи цю схему, відкритий текст «ШИФР ЦЕЗАРЯ» перетворюється на «ЮЙЧУ ЩЗЇГУВ». Для того, щоб одержувач повідомлення міг відновити вихідний текст, необхідно повідомити йому, що ключ — 3.