Шифрувальна система на основі шифру Цезаря

Автор работы: Пользователь скрыл имя, 11 Ноября 2013 в 20:55, лабораторная работа

Краткое описание

Мета: створити просту криптографічну систему на основі шифру Цезаря та дослідити її роботу.
Теоретичні відомості
Під криптографією будемо розуміти галузь знань, що належить до методів і засобів перетворення повідомлень у незрозумілу для сторонніх осіб форму, а також перевірки істинності цих повідомлень.

Прикрепленные файлы: 1 файл

ЛАБ_Цезар_1.doc

— 57.00 Кб (Скачать документ)


ЛАБОРАТОРНА РОБОТА - Шифрувальна система на основі шифру Цезаря

Мета: створити просту криптографічну систему на основі шифру Цезаря та дослідити її роботу.

Теоретичні відомості

Під криптографією будемо розуміти галузь знань, що належить до методів і засобів перетворення повідомлень у незрозумілу для сторонніх осіб форму, а також перевірки істинності цих повідомлень.

Під криптоаналітикою будемо розуміти засоби і методи, спрямовані на подолання криптографічного захисту.

Сукупність  криптографії та криптоаналітики називається криптологією.

Розшифровуванням будемо називати відновлення вихідного повідомлення при відомому ключі шифрування.

Дешифруванням будемо називати процес відновлення вихідного повідомлення при невідомому ключі шифрування.

Таким чином, ті, кому призначено шифроване повідомлення, його розшифровують, а ті, хто перехоплює його, намагаються дешифрувати.

Клод Шеннон у своїй праці «Теория связи  в секретних системах» узагальнив накопичений до нього досвід розробки шифрів. З'ясувалося, що навіть у дуже складних шифрувальних системах можна виділити як складові частини шифри заміни, шифри перестановки та їх комбінації. Деякі відомості про ці прості шифри можна знайти в художній літературі, зокрема в «Золотому жуці» Едгара По і «Танцюючих чоловічках» Артура Конан Дойла.

Розглянемо  два приклади простих шифрів.

Шифр  сцитала. Цей шифр відомий із часів війни Спарти проти Афін у V ст. до н.е. Для його реалізації використовувалась т. зв. сцитала - циліндричний жезл певного діаметра. На сциталу намотували вузьку папірусну стрічку, на якій писали повідомлення вздовж осі сцитали. Коли стрічку знімали, на ній залишалися незрозумілі літери. Для розшифровки повідомлення адресат намотував стрічку на такий самий жезл і читав повідомлення. В цьому шифрі перетворення оригінального тексту в шифрований зводиться до перестановки літер оригінального тексту. Тому клас таких шифрів отримав назву шифру перестановки.

Шифр Цезаря. Цей шифр реалізує таке перетворення відкритого тексту: кожна літера замінюється третьою після неї літерою алфавіту, який вважається написаним по колу, тобто після «я» йде «а». Зауважимо, що Цезар замінював її третьою літерою, але можна замінювати й будь-якою іншою. Головне, щоб адресат цього повідомлення знав величину й напрямок зсуву. Клас шифрів, до якого належить шифр Цезаря, називається шифрами заміни.

Із цього, напевне, зрозуміло, що створення надійного шифру  є задачею непростою. Тому бажано збільшити час життя шифру, але тут зростає ймовірність того, що криптоаналітики супротивника зможуть розкрити шифр і прочитати зашифровані повідомлення. Якщо в шифрі є змінний «ключ», то його заміна приводить до того, що розроблені супротивником методи вже не дадуть ефекту.

Під ключем будемо розуміти змінний елемент шифру, який застосовується для шифрування конкретного повідомлення. Наприклад, у шифрі сцитала ключем є діаметр жезлу, а у шифрі Цезаря - величина і напрямок зсуву літер шифротексту відносно літер відкритого.

Описані міркування зумовили те, що безпека шифрованих повідомлень у першу чергу стала забезпечуватися ключем. Сам шифр, шифромашина або принцип шифрування прийнято вважати відомими суперникові й доступними для попереднього вивчення, але в шифрі з'явився невідомий елемент - ключ, від якого істотно залежать застосовувані перетворення інформації. Тепер користувачі, перш ніж обмінятися шифрованими.йювідомленнями, повинні обмінятися ключем, за допомогою якого можна прочитати зашифроване повідомлення. А для криптоаналітиків, які хочуть прочитати перехоплене повідомлення, основною задачею є знаходження ключа.

Принципи частотного криптоаналізу. Встановлено, що в будь-якій мові літери абетки зустрічаються неодноразово. Якщо взяти достатньо великий текст (близько мільйона символів) загального змісту та підрахувати частоту, з якою кожна літера абетки зустрічається в цьому тексті, ми побачимо, що найчастіше в українських текстах зустрічається літера «О» (0.082), а в російських та англійських - «Е» (0.071 та 0.12 відповідно). Звичайно, в залежності від тематики тексту, частотні характеристики його змінюються, але тенденція залишається незмінною.

На цьому  факті грунтується метод частотного криптоаналізу. Якщо метод шифрування «перехопленої шифровки» не приховує частотних особливостей мови (а саме таким і є шифр Цезаря), то криптоаналітики виконують такі дії:

  1. Підраховують відносні частоти, з якими кожна літера абетки зустрічається в «перехопленому» повідомленні. Робиться це за формулою: частота = кількість / довжина; де кількість - скільки разів літера зустрічається в повідомленні; довжина - кількість літер у повідомленні.
  2. Літеру з найбільшою відносною частотою ототожнюють із літерою, яка має найбільшу частоту в частотній таблиці.
  3. Визначають величину зсуву.
  4. Пробують дешифрувати повідомлення з визначеною в п. З величиною зсуву. Якщо отримано логічний зв'язний текст, повідомлення вважається дешифрованим. Якщо зв'язного тексту не отримано, процедуру продовжують.
  5. Літеру з найбільшою відносною частотою ототожнюють із літерою, яка має другу найбільшу частоту в таблиці.
  6. Пробують дешифрувати повідомлення, перебираючи частотну таблицю, поки не отримують зв'язного тексту.

Наведеним методом  Вам необхідно користуватися  для криптоаналізу в цій лабораторній роботі.

 

Практична частина

  1. Підгрупа розбивається на пари за бажанням.
  2. Один із членів пари пише програму шифрування та розшифрування тексту шифром Цезаря. Програма шифрування повинна читати файл із набраним текстом; шифрувати текст із довільним зміщенням, значення якого вводиться з клавіатури; виводити зашифрований текст у файл. Програма розшифровування повинна задовольняти такі умови: читати файл із зашифрованим текстом; розшифровувати його; видавати на екран розшифрований текст.
  3. Другий із членів пари пише програму криптоаналізу методом частотного аналізу. Програма криптоаналізу повинна задовольняти такі вимоги: а) читати «перехоплений» зашифрований файл; б) розраховувати відносну частоту, з якою зустрічається кожний символ у «перехопленому» файлі; в) підставити замість літер, щой найчастіше зустрічаються в повідомленні, відповідні літери з частотної таблиці (див. Додаток ); г) визначати ключ, тобто величину зсуву; д) розшифровувати повідомлення з цим значенням зсуву та виводити розшифроване повідомлення на екран.
  4. Перший із пари зашифровує повідомлення і передає його для криптоаналізу другому. Другий дешифрує отримане повідомлення методом частотного криптоаналізу і знаходить правильний ключ шифрування (величину зміщення).

Звіт  із лабораторної роботи повинен містити:

  1. Протоколи дій обох членів пари.
  2. Розшифровані тексти та значення ключа, знайдені за допомогою криптоаналізу.

 

Додаток

Частотна таблиця літер російської мови

 

А

0,069

Б

0,013

В

0,038

Г

0,014

Д

0,024

Е, Е

0,071

Ж

0,007

3

0,016

И

0,064

Й

0,010

К

0,029

Л

0,039

М

0,027

Н

0,057

0

0,094

П

0,026

Р

0,042

С

0,046

Т

0,054

У

0,023

Ф

0,003

X

0,008

Ц

0,005

Ч

0,012

III

0,006

Щ

0,004

Ъ

0,001

ЬІ

0,015

Ь

0,013

Э

0,002

Ю

0,005

Я

0,017

ПРОБІЛ

0,146

       


Информация о работе Шифрувальна система на основі шифру Цезаря