Please use this identifier to cite or link to this item: https://er.chdtu.edu.ua/handle/ChSTU/7756
Title: Евристична модель засобу оцінки криптостійкості симетричних шифрів
Authors: Байрак, Анатолій Володимирович
Данілік, Ярослав Ігорович
Keywords: симетричні блочні шифри;алгоритм rc5;криптоаналіз;криптостійкість шифрів;евристична модель оцінювання;аналіз криптографічних алгоритмів
Issue Date: 2021
Abstract: Мета роботи – створення та тестування евристичної моделі оцінки криптостійкості симетричного шифру
URI: https://er.chdtu.edu.ua/handle/ChSTU/7756
Appears in Collections:125 Кібербезпека та захист інформації (Безпека інформаційних і комунікаційних систем)

Files in This Item:
File Description SizeFormat 
М_125_Данілік_Байрак.pdf
  Restricted Access
1.52 MBAdobe PDFView/Open Request a copy


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Extracted text
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
(повне найменування вищого навчального закладу) 
Факультет електронних технологій і робототехніки 
(повна назва факультету) 
 
Кафедра робототехнічних і телекомунікаційних систем та кібербезпеки  
(повна назва кафедри) 
 
 
 
 
Пояснювальна записка 
 
до кваліфікаційної роботи  
магістра 
(освітньо-кваліфікаційний рівень) 
 
 
на тему «Евристична модель засобу оцінки криптостійкості симетричних шифрів» 
 
 
 
Виконав студент II курсу, групи БІ-001 
 
Спеціальності 125 - «Кібербезпека», 
освітньої програми «Безпека 
інформаційних і комунікаційних систем» 
(шифр і назва спеціальності) 
Данілік Я.І. 
Керівник  Байрак А.В.  
(прізвище та ініціали) 
Рецензент Сагун А.В.  
(прізвище та ініціали) 
 
 
 
 
 
 
 
 
 
Черкаси 2021 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
(повне найменування вищого навчального закладу)  
Факультет електронних технологій і робототехніки                                                                             
(повна назва) 
Кафедра роботехнічних і телекомунікаційних систем та кібербезпеки  
(повна назва) 
Освітньо-кваліфікаційний рівень магістр  
 
Спеціальність 125 – «Кібербезпека»  
 
Освітня програма Безпека інформаційних і комунікаційних систем  
 
ЗАТВЕРДЖУЮ 
Завідувач кафедри д.т.н., проф. 
____________ В.В. Палагін 
“___” _____________ 2021 року 
 
З А В Д А Н Н Я 
НА КВАЛІФІКАЦІЙНУ РОБОТУ МАГІСТРА СТУДЕНТУ 
Даніліку Ярославу Ігоровичу 
 (прізвище, ім’я, по батькові) 
 
1. Тема роботи «Евристична модель засобу оцінки криптостійкості симетричних шифрів               _  
керівник роботи Байрак Анатолій Володимирович, асистент кафедри РСТК_____ _____________  
                                                                                     (прізвище, ім’я, по батькові, науковий ступінь, вчене звання) 
затверджені наказом Черкаського державного технологічного університету від  
«21» вересня 2021 року №289-1/01. 
2. Строк подання студентом роботи «20» грудня 2021 р. 
3.Вихідні дані до роботи опис  принципу алгоритму RC5, текстова вибірка для 
експериментального аналізу, евристична модель оцінки криптостійкості симетричних шифрів 
RC5RA, програмна реалізація евристичної моделі, тестування евристичної моделі.  _____________  
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити) 
Вступ, Список умовних позначень та скорочень, Розділ основні методи і задачі криптоаналізу, 
Розділ 2 Практичні аспекти застосування евристичного криптоаналізу до симетричних 
криптоалгоритмів, Розділ 3 Cиметричні блочні шифри з точки зору криптоаналізу, Загальні 
висновки, Список використаних джерел, Додатки.  
5. Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів): 
мультимедійна презентація “Евристична модель засобу оцінки криптостійкості симетричних 
шифрів” – 14 слайдів (додається до роботи).  
 
6. Консультанти розділів роботи  
Підпис, дата 
Розділ Прізвище, ініціали та посада консультанта 
завдання видав завдання прийняв 
    
    
 
7. Дата видачі завдання __________________ 
2 
 
 
КАЛЕНДАРНИЙ ПЛАН  
 
№ Строк виконання 
Назва етапів кваліфікаційної роботи магістра Примітка  
з/п етапів роботи 
1. П ошук і аналіз інформації по заданій темі 23.09.2021-  
30.09.2021 
2. Н аписання 1 розділу “основні методи і задачі 30.09.2021-  
криптоаналізу” 09.10.2021 
3. Н аписання 2 розділу роботи “практичні аспекти 10.10.2021-  
застосування евристичного криптоаналізу до 30.10.2021 
симетричних криптоалгоритмів” 
4. Н аписання 3 розділу “симетричні блочні шифри з 30.10.2021-  
точки зору криптоаналізу” 15.11.2021 
5. Н аписання вступу і висновків, складання списку 20.11.2021  
літератури 
6. О формлення кваліфікаційної роботи магістра 01.12.2021  
7. П одання роботи в ЕК 20.12.2021  
8. За хист роботи в ЕК 23.12.2021  
 
Студент ______________________Данілік Я.І. 
    (підпис)                           (прізвище та ініціали)  
Керівник роботи   ______________Байрак А.В. 
                                                  (підпис)            (прізвище та ініціали) 
 
3 
 
 
 
ЗМІСТ 
ВСТУП ..................................................................................................................... 7 
РОЗДІЛ 1 .................................................................................................................. 9 
ОСНОВНІ МЕТОДИ І ЗАДАЧІ КРИПТОАНАЛІЗУ ............................................... 9 
1.1 Криптоаналіз, його функції та задачі .............................................................. 9 
1.2 Види криптоаналізу ....................................................................................... 10 
1.2.1 Алгоритми та методи класичного криптоаналізу.................................... 10 
1.2.2 Алгоритми та методи сучасного криптоаналізу ...................................... 12 
1.3 Оцінка сучасних методів криптографії та криптоаналізу ............................. 12 
1.4. Особливості симетричних блочних шифрів у криптографії ........................ 13 
1.5 Класифікація методів криптоаналізу............................................................. 14 
1.5.1 Симетричні шифри з точки зору криптоаналізу...................................... 15 
РОЗДІЛ 2 ................................................................................................................ 18 
ПРАКТИЧНІ АСПЕКТИ ЗАСТОСУВАННЯ ЕВРИСТИЧНОГО 
КРИПТОАНАЛІЗУ ДО СИМЕТРИЧНИХ КРИПТОАЛГОРИТМІВ ..................... 18 
2.1 Частотний криптоаналіз симетричних криптоалгоритмів............................. 18 
2.2 Диференціальний криптоаналіз симетричних криптоалгоритмів ................. 21 
2.3 Лінійний криптоаналіз симетричного криптоалгоритму .............................. 23 
2.3.1 Модель диференціального криптоаналізу симетричного блочного шифра 
DES .................................................................................................................. 24 
2.4 Альтернативні методи криптоаналізу ........................................................... 35 
2.4.1 Інші методи криптоаналізу...................................................................... 35 
ЧДТУ.21.20103.006 ПЗ  
Змн. Арк. № докум. Підпис Дата  
     
 Розроб. Данілік Я.І.  Евристична модель засобу Літ. Арк. Акрушів 
  Перевір. Б айрак А.В.    
4 48 
  оцінки криптостійкості  
 Реценз. Сагун А.В.  
  Н. Контр. Б айрак А.В. симетричних шифрів ЧДТУ БІ-001 
  Зат верд. П алагін В.В.    
   
 
РОЗДІЛ 3 ................................................................................................................ 36 
СИМЕТРИЧНІ БЛОЧНІ ШИФРИ З ТОЧКИ ЗОРУ КРИПТОАНАЛІЗУ ............... 36 
3.1 Вибір симетричного блочного шифру для криптоаналізу ............................ 36 
3.2 Методика здійснення оцінки криптостійкості шифру евристичною моделлю
 ............................................................................................................................ 39 
3.3 Формування текстової вибірки для експериментального криптоаналізу ...... 43 
ЗАГАЛЬНІ ВИСНОВКИ ........................................................................................ 46 
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ................................................................ 47 
ДОДАТОК А .......................................................................................................... 49 
ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ ДЛЯ ПОБУДОВИ КРИПТОАНАЛІЗУ 
БЛОКОВОГО АЛГОРИТМУ НА ПРИКЛАДІ RC5RA .......................................... 49 
ДОДАТОК Б........................................................................................................... 51 
РЕЗУЛЬТАТИ ТЕСТУВАННЯ ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ............................... 51 
ДОДАТОК В .......................................................................................................... 53 
ПРЕЗЕНТАЦІЯ ДО КВАЛІФІКАЦІЙНОЇ РОБОТИ.............................................. 53 
 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
5 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
СПИСОК УМОВНИХ ПОЗНАЧЕНЬ ТА СКОРОЧЕНЬ 
   
FEAL – Fast data Encipherment Algorithm; 
CMEA – Cellular Message Encryption Algorithm; 
DVD – Digital Versatile Disc; 
DECT – Digital Enhanced Cordless Telecommunication; 
XOR – eXclusive OR; 
DES – Data Encryption Standard; 
RC5 – Ron’s Code 5 или Rivest’s Cipher 5; 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
6 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
ВСТУП 
 
У зв’язку з постійним збільшенням різного роду атак на інформацію зростає 
потреба в тестуванні надійності різного роду криптографічних систем. Розвиток 
систем захисту інформації передбачає необхідність тестування різного роду 
шифрів та виявлення показників їх надійності. В криптографії для знаходження 
вад в шифрах або для визначення показників стійкості використовують методи 
криптоаналізу. Різноманітність методів криптоаналізу пов’язана з їх 
можливостями, продуктивністю та інформативністю, різною точністю результату, 
яка досягається для різних типів криптоалгоритмів. 
Криптоаналіз симетричних та асиметричних шифрів суттєво відр ізняється. 
Проблема криптоаналізу симетричних шифрів пов’язана з великою кількістю 
базових видів шифрів, їх модифікованими та модернізованими варіантами. 
Актуальність роботи пов’язана з необхідністю пошуку засобу 
криптоаналізу з можливостями його застосування до декількох криптоалгоритмів. 
Новизна пояснюється знаходження і формулюванням евристичного 
алгоритму, який базується на засадах диференційного криптоаналізу, але має 
можливості налаштувати чутливість пошуку збігів диференціалів. 
Об’єкт – евристична модель оцінки криптостійкості симетричного шифру 
на базі диференційного методу. 
Предмет – симетрична блочна криптосистема зі змінною кількістю раундів 
шифрування. 
Мета роботи – створення та тестування евристичної моделі оцінки 
криптостійкості симетричного шифру. 
Для досягнення мети слід вирішити такі задачі: 
− Проаналізувати методи криптоаналізу, що вже існують, зокрема ті, що 
застосовуються для криптоаналізу симетричних шифрів; 
− розглянути евристичні моделі криптоаналізу симетричних шифрів; 
− сформулювати алгоритм та вимоги для застосування створеної 
евристичної моделі засобу оцінки криптостійкості; 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
7 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
− провести тестування створеної евристичної моделі та отримати якісні 
показники роботи для обраного симетричного криптоалгоритму шифрування. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
8 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
РОЗДІЛ 1 
 
ОСНОВНІ МЕТОДИ І ЗАДАЧІ КРИПТОАНАЛІЗУ 
 
1.1 Криптоаналіз, його функції та задачі 
 
Криптоаналізом називають науку про те, як дешифрувати зашифровану 
інформацію, не маючи в розпорядженні ключа для дешифрування. 
Криптоаналізом також називається сам процес такого дешифрування. 
Основною задачею криптоаналізу є визначення ключа шифрування, тому 
що отриманий внаслідок криптоаналізу ключ дозволяє дешифрувати будь-яке 
повідомлення, зашифроване даним методом. Однак, криптоаналіз може 
застосовуватися для: 
- аналізу криптосистеми,  
- аналізу зашифрованого криптосистемою або алгоритмом відкритого 
повідомлення; 
- аналізу  криптопротоколу. 
Під криптоаналізом розуміють методи виявлення вразливості, алгоритмів та 
протоколів шифрування.  
Перші методи криптоаналізу ґрунтувалися на лінгвістичних 
закономірностях природного тексту і реалізовувалися з використанням тільки 
ручки, олівця та паперу. В сучасному криптоаналізі трендом є використання 
математичних методів, для реалізації яких використовуються спеціалізовані 
криптоаналітичні комп'ютери. 
Взагалі, криптоаналіз еволюціонує разом із розвитком криптографії. 
Недосконалі шифри зламуються, на їх зміну приходять нові, більш досконалі. 
Криптоаналітики постійно знаходять і досліджують нові, витончені методи зламу 
системи шифрування. Поняття криптографії та криптоаналізу нерозривно 
пов'язані між собою: для того, щоб створити стійку систему, необхідно брати 
участь у всіх можливих способах атак на неї. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
9 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
1.2 Види криптоаналізу 
 
Хоча існує доволі багато методів криптоаналізу, проте ми виокремимо такі: 
- класичний; 
- сучасний криптоаналіз. 
 
1.2.1 Алгоритми та методи класичного криптоаналізу 
Перші класичні методи криптоаналізу були винайдені декілька віків тому. 
Фундаментальною згадкою про криптоаналіз є «Манускрипт про дешифрування 
криптографічних повідомлень», написаний арабським вченим Ал -Кінді у IX 
столітті. Ця наукова праця описувала метод частотного криптоаналізу. 
Частотний криптоаналіз є основним інструментом для зламу більшості 
класичних шифрів перестановки або заміни [1]. Цей метод заснований на 
визначенні про існування нетривіального статистичного розподілу символів, а 
також їх послідовностей одночасно у відкритому тексті і в шифротексті. Причому, 
такий розподіл буде зберігатися з точністю до заміни символів, як у процесі 
шифрування, так і в процесі дешифрування. 
Слід зазначити, що за умови досить великої довжини шифрованого 
повідомлення моноалфавітні шифри легко піддаються частотному аналізу. Якщо 
частота появи літери в природній мові і частота появи деякого присутнього в 
шифротексті символу приблизно однакові, то в цьому випадку з великою 
ймовірністю можна припустити, що цей символ буде саме тією літерою. 
Найпростішим прикладом частотного криптоаналізу може вважатися 
банальний підрахунок кількості кожного з символів природної мови, потім 
проходять процедури поділу отриманої кількості символів на кількість всіх 
символів у тексті і множення результату на сто. Це дозволяє представити 
остаточну відповідь у відсотках. Далі отримані відсоткові значення порівнюються 
з таблицею ймовірнісного розподілу букв для передбачуваної мови оригіналу. 
В період XV—XVI століть намітилася тенденція до використання 
поліалфавітних шифрів заміни. Найбільш відомим з таких шифрів є шифр 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
10 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
французького дипломата Блез де Виженера, в основі якого лежить викор истання 
послідовності декількох шифрів Цезаря з різними значеннями зсуву всередині. 
Протягом трьох століть шифр Віженера вважався повністю криптографічно 
стійким. Проте в 1863 році Фрідріх Касіскі запропонував свою методику зламу 
даного шифру [2]. 
Основна ідея методу криптоаналізу Касіскі полягає в наступному: якщо у 
відкритому тексті між двома однаковими наборами символів знаходиться такий 
блок тексту, що його довжина кратна довжині ключового слова, ці однакові 
набори символів відкритого тексту при шифруванні перейдуть в однакові відрізки 
шифротексту. На практиці це означає те, що за наявності в шифротексті 
однакових відрізків довжиною в три і більше символів значно зростає ймовірність 
того, що ці відрізки відповідають однаковим відрізкам відкритого тексту. 
Алгоритм роботи методу Касіскі [2]: 
1) у шифротексті здійснюється пошук пар однакових відрізків довжини 
три чи більше; 
2) обчислюється відстань між цими парами, тобто кількість символів, які 
розділяють стартові позиції парних відрізків; 
3) В результаті аналізу всіх пар однакових відрізків ми отримаємо 
сукупність відстаней d1, d2, d3, ... ; 
4) Довжина ключового слова буде дільником для кожної з  відстаней і, 
отже, для їхнього найбільшого спільного дільника. 
Наступним етапом свого розвитку криптоаналіз зобов’язаний винаходам 
шифрувальних роторних машин. Наприклад, таких як, «Енігма». Метою р оботи 
таких шифромашин було мінімізувати кількість відрізків шифротексту, що 
повторюються, статистика появи таких відрізків шифротексту використовувалася 
при зламі шифру Віженера (метод Касіскі). Польським криптоналітикам вдалося 
побудувати прототип дешифрувальної машини для версії «Енігми». Машина 
отримала назву «Бомба» за те, що при роботі видавала звуки схожі на цокання 
годинника. Модифіковані версії такої машини взяли на озброєння англійські 
криптоаналітики. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
11 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
1.2.2 Алгоритми та методи сучасного криптоаналізу 
З розвитком нових методів шифрування математичні перетворення ставали 
більш значущими. Так, наприклад, при частотному аналізі криптоаналітик 
повинен мати знання в сфері лінгвістики і статистиці. Теоретичні роботи з 
криптоаналізу шифрів машини «Енігма» виконувались переважно математиками, 
наприклад, Аланом Метісоном Тьюрінгом. Зараз, завдяки розвитку математики, 
криптографія досягла значного розвитку, а  кількість необхідних для злому 
елементарних математичних обчислень збільшилася. 
Використання апарату теоретичного криптоаналізу дає змогу ефективно 
зламувати сучасні шифри.  
Хоча за словами колишнього технічного директора Управління 
національної безпеки Брайана Сноу комерційна криптографія вже майже досягла 
рівня розвитку технологій, які використовуються розвідувальними службами, і 
тепер вони разом «дуже повільно просуваються в уже повністю дослідженій 
галузі» [3],  однак сьогодні залишається ефективним засобом зламу.  
 
1.3 Оцінка сучасних методів криптографії та криптоаналізу 
 
Неоднозначне відношення до ефективності методів криптоаналізу пов’язане 
з тим, що наразі невідомо, наскільки ефективні методи криптоаналізу, які 
застосовуються спецслужбами. За час розвитку та становлення сучасної 
комп'ютерної криптографії з’явилося багато зауважень, як до теор етичних, так і 
до практичних криптографічних методів, наприклад: 
- у 1998 р. було виявлено вразливість для атак на основі шифр отексту 
блочного шифру MADRYGA, запропонованого ще в 1984 р., який не набув 
широкої популярності; 
- ціла серія атак з боку практичного криптоаналізу зламала 
перспективний блоковий шифр FEAL, який був запропонований в якості заміни 
DES алгоритму шифрування. Саме через це даний шифр не набув широкого 
поширення; 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
12 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
- було встановлено, що за допомогою широкодоступних 
обчислювальних засобів можуть бути зламані за лічені години або хвилини, часом 
і в режимі реального часу потокові шифри A5/1, A5/2, блоковий шифр  CMEA, та 
стандарт шифрування DECT, що використовуються для захисту мобільного та 
бездротового телефонного зв'язку,  
- атака методом грубої сили (brut-force) допомогла зламати деякі з 
прикладних систем захисту, наприклад, CSS-систему захисту цифрового 
медіаконтенту на DVD-носіях. 
Таким чином, хоча найбільш надійні з сучасних шифрів є набагато 
стійкішими до криптоаналізу, ніж шифр машини «Енігма», проте криптоаналіз, як 
і раніше, відіграє важливу роль у дослідженнях, щодо покращення систем захисту 
інформації. 
 
1.4. Особливості симетричних блочних шифрів у криптографії 
 
В загальному, схему класифікації всіх криптографічних алгоритмів, що 
існують можна поділити на декілька типів так, як це зображено на рис.1.1 [4]. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
13 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
  
Рис.1.1 – загальна класифікація всіх криптографічних алгоритмів 
 
Ефективність використання симетричних блочних шифрів часто 
визначається високою швидкодією при необхідності захисту великих обсягів 
інформації. Особливо актуальним є використання даних шифрів є при захисту 
інформаційного трафіку, що передається в комп’ютерних локальних мережах та в 
мережі Internet.  
Особливістю симетричних блокових шифрів є те, що  метод симетричного 
шифрування застосовують до блоку відкритого тексту, який повинен мати певні 
розміри (кількість символів).  
 
1.5 Класифікація методів криптоаналізу 
 
Брюс Шнайер і Нільс Фергюсон в своїх роботах описують 4 основних і 3 
додаткових методів криптоаналізу [5]. 
Серед основних методів вони виділяють: 
- cipher-text only attack (атака на основі шифротексту); 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
14 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
- known plaintext attack (атака на основі відкритих текстів); 
- chosen plaintext attack (атака на основі підібраного відкритого тексту); 
- adaptive selected plaintext attack (атака на основі адаптивно підібраного 
відкритого тексту). 
Серед додаткових: 
– chosen ciphertext attack (атака на основі підібраного шифротексту); 
– chosen key attack (атака на основі обраного ключа); 
– rubber-hose cryptanalysis (бандитський криптоаналіз). 
Всі наведені вище методи за принципом своєї роботи умовно поділяються 
на групи: 
− частотний криптоаналіз; 
− диференціальний криптоаналіз; 
− лінійний криптоаналіз; 
− алгебраїчний криптоаналіз. 
 
1.5.1 Симетричні шифри з точки зору криптоаналізу 
При аналізі криптографічної стійкості симетричних блочних алгоритмів 
виходять з того факту, що: 
- якщо один і той самий алгоритм та один і той самий ключ використовується 
і для шифрування та для дешифрування повідомлень, то даний метод 
шифрування є симетричним.  
- природньо, що існуючий унікальний ключ шифрування симетричного 
криптоалгоритму має бути секретним (тобто, відомий тільки відпр авнику і 
отримувачу повідомлення). 
Звідси можна зробити висновок, що всі подібні методи шифр ування  також 
можна назвати шифрами з одним ключом (шифрами з секретним ключем). А для 
симетричних шифрів існує характерна нерозв’язувана проблема. Дана пр облема 
полягає у складнощах з передачею абоненту шифрування на іншому боці 
секретного ключа, а також в неможливості переконатись в автентичності 
отриманого абонентом ключа шифрування. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
15 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Під криптографічною системою розуміють всю сукупність засобів (шифр и, 
ключі та програмно-апаратні засоби), які забезпечують криптографічний захист 
інформації від загроз розкриття конфіденційності. Типова симетрична 
криптосистема має вид, показаний на рис.1.2 [6]. До особливостей такої 
криптографічної системи можна віднести те, що обидва учасники секретного 
каналу зв’язку повністю довіряють одне одному.  
 
 
 
Рис. 1.2. Схема симетричної криптосистеми з секретним ключем  
 
Криптосистема, наведена на рис.1.2 може функціонувати в 2-х режимах 
роботи: 
1) як повна система  - в якій і відправник, і одержувач можуть перебувати 
по черзі в одній або іншій ролі. В такому випадку системи шифрування та 
дешифрування повинні бути встановлені у відправника і у одержувача інформації;  
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
16 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
2) криптосистема односторонньої дії. В такій системі відправник може 
виключно відправляти, а одержувач тільки приймати шифроване повідомлення, 
використовуючи відповідні засоби шифрування або дешифрування у кожної зі 
сторін. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
17 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
РОЗДІЛ 2 
 
ПРАКТИЧНІ АСПЕКТИ ЗАСТОСУВАННЯ ЕВРИСТИЧНОГО 
КРИПТОАНАЛІЗУ ДО СИМЕТРИЧНИХ КРИПТОАЛГОРИТМІВ 
 
Під евристикою в загальному понятті розуміють будь-який підхід до 
вирішення проблем або самопізнання за умови використання в ньому практичного 
методу, який не може бути оптимальним, досконалим або раціональним. Такий 
прикладний метод достатній для досягнення негайного результату або 
наближення до такого результату [7,8]. 
Стосовно криптоаналізу, в сучасних джерелах відсутнє розуміння 
евристичних методів або моделей оцінки криптостійкості. Під цим терміном 
розуміємо стратегію криптоаналізу, що ґрунтується на відомому досвіді та 
методах вирішення аналогічних проблем. Розроблювана для  функціонування 
моделі стратегія залежить від використання легкодоступної інформації для 
управління вирішенням оцінки криптостійкості симетричних шифрів (зокрема 
блочних). 
Серед дійсних методів криптоаналізу блочних шифрів в тому чи іншому 
випадку евристичними можна вважати наступні: 
1) частотний; 
2) диференціальний; 
3) лінійний. 
 
2.1 Частотний криптоаналіз симетричних криптоалгоритмів 
 
Суть частотного криптоаналізу полягає у підрахунку частот. Відомо, що 
кожна літера в мовах, що не створені штучно (російській, англійській, 
український та ін.) зустрічається з певною частотою, наприклад, найчастіше в 
російському тексті зустрічається літера "о", другою за частотою зустрічається 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
18 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
літера "е", на третьому місці - літера "а", на четвертому - літера "і" і т.д  (р ис.2.1) 
[9].  
 
 
Рис.2.1 – Частотний розподіл літер російської абетки 
 
 В різних природніх мовах народів світу частотний розподіл літер  в текстах і 
словах може суттєво відрізнятися.  
Наприклад, в англійській мові частотний розподіл літер в словах 
відрізняється від російської (рис.2.2) [9]. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
19 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
Рис.2.2 - Частотний розподіл літер англійської абетки 
 
Припустимо, що існує шифротекст, отриманий методом перестановки букв 
за невідомим симетричним алгоритмом, (найпростіший приклад: кожну букву 
замінили на наступну за номерами в алфавіті, тобто відкритий "текст", а 
шифрований - "уєлту"). В задачі по знаходженню ключа криптоаналітикам 
потрібно визначити ключ шифру. 
Криптоаналітик підраховують частоту кожної літери у тексті, тобто, які 
літери найчастіше зустрічаються, дивляться за таблицею частот, звіряють та 
замінюють літери. Якщо, наприклад, у зашифрованому тексті найчастіше 
зустрічається літера "щ", то аналітики її замінюють на літеру "о", далі за частотою 
стоїть літера "ъ", аналітик розуміє, що з більшою ймовірністю це літер а "е". Він 
замінює її теж. Таким чином, підставляючи літери, криптоаналітик намагається 
отримати осмислений і зрозумілий текст. Отримуючи слово за словом паралельно  
збільшується кількість відомих літер і крок за кроком розшифровується весь 
текст. Відповідно чим більше слів у тексті, тим вищий шанс його відповідності 
таблиці частот. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
20 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Метод частотного криптоаналізу можна віднести до евристичної моделі 
оцінки криптостійкості у зв’язку з тим, що він не дає абсолютно чіткого 
визначення відкритого повідомлення. 
В огляді джерел даний метод не вказується, як ефективний 
криптоаналітичний, оскільки частотний аналіз малоефективний, якщо одній літері 
вихідного тексту відповідає цілий набір літер шифру, тобто, якщо це шифр  – 
омофон [10]. 
 
2.2 Диференціальний криптоаналіз симетричних криптоалгоритмів 
 
Диференціальний криптоаналіз - є загальною формою криптоаналізу. Такий 
криптоаналіз є універсальним. Він застосовується в першу чергу до блокових 
симетричних шифрів, до потокових шифрів та криптографічних хеш-функцій. 
Суть диференціального криптоаналізу полягає в дослідженні того, як відмінності 
у вхідній інформації можуть вплинути на результат різниці на виході 
криптографічного алгоритму. При застосуванні даного методу до блокового 
шифру, набір  методів з арсеналу моделі диференціального криптоаналізу  
використовуються для відстеження відмінностей у мережі перетворення, 
виявлення. Саме на тих ділянках, де криптоалгоритм виявляє поведінку, відмінну 
від випадкової, та використання таких властивостей, як відновлення секретного 
ключа (ключ криптографії). 
Диференціальний криптоаналіз, зазвичай, є різновидом криптографічної 
атаки з використанням відкритого тексту (в якості вхідних аргументів для 
криптографічного алгоритму). Це означає, що зловмисник або криптоаналітик 
повинен мати можливість отримати зашифровані тексти для деякого набор у 
відкритих текстів на вибір. Однак є розширення, які допускають відомий 
відкритий текст або навіть атаку лише зашифрованого тексту. У базовому методі 
використовують пари відкритого тексту, пов'язані з постійною різницею. 
 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
21 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Різниця може бути визначена декількома способами, але зазвичай 
використовується операція виняткової диз’юнкції АБО (XOR). Потім зловмисник 
обчислює відмінності відповідних – вже шифрованих текстів, сподіваючись 
виявити статистичні закономірності в їх розподілі. Отримана пара різниць 
називається диференціалом. Статистичні властивості, які виявляються під час 
диференціального криптоаналізу залежать від природи S-блоків, що 
використовуються для шифрування, тому зловмисник аналізує відмінності виду: 
 
(Δ X , Δ Y ), 
 
де Δ Y = S (X ⊕ Δ X ) ⊕ S (X) (і ⊕ означає виняткову диз`юнкцію - XOR) 
для кожного такого S-блоку S. При базовій атаці очікується, що одна конкр етна  
різниця зашифрованого тексту буде виявлятися особливо часто; таким чином, 
можна зрозуміти, що шифр це не випадкове число (random). Більш складні 
варіанти дозволяють відновити ключ швидше, ніж вичерпаються можливості 
пошуку через повний перебір. 
У найпростішій формі відновлення ключа за допомогою диференціального 
криптоаналізу зловмисник повинен мати якомога більше зашифрованих текстів 
для великої кількості пар відкритого тексту, а потім передбачає, що різниця 
зберігається протягом не менше, ніж r – 1 раундів, де r – загальна кількість 
раундів. Потім зловмисник визначає, які ключі раунду (для останнього р аунду) 
можливі, припускаючи, що різниця між блоками до останнього раунду 
виправлена. 
У випадку коротких раундових ключів, це може бути досягнуто простим 
вичерпним дешифруванням пар зашифрованого тексту за один р аунд з кожним 
потенційно можливим раундовим ключем. Коли один ключ раунду вважався  
потенційним ключем раунду значно частіше, ніж будь-який інший ключ, 
передбачається, що це і є коректний ключ раунду. 
Для будь-якого конкретного симетричного блочного шифру необхідно 
ретельно добирати вхідну різницю, щоб атака була успішною. Також слід 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
22 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
провести аналіз внутрішньої будови алгоритму. Для цього існує стандартний 
спосіб - простежити шлях можливих відмінностей на різних етапах шифр ування, 
який називається диференціальною характеристикою. 
З того часу, як диференціальний криптоаналіз став відомим серед фахівців з 
криптоаналізу та криптографії, його методи широко використовують розробники 
шифрів. Фактично всі нові розробки симетричних блочних шифрів повинні 
супроводжуватись доказами стійкості алгоритму до даного виду атак.  
 
2.3 Лінійний криптоаналіз симетричного криптоалгоритму 
 
Лінійний криптоаналіз – специфічний метод атаки на симетричні шифри, 
спрямований на відновлення невідомого зловмиснику секретного ключа 
шифрування, за відомими відкритими повідомленнями і відповідним 
шифротекстом. 
У випадку атаки лінійним криптоаналізом вона зводиться до таких умов, 
що: 
1) зловмисник має велику кількість пар відкритого тексту,  
2) Він має отримані з використанням одного і того ж ключа шифрування 
K відповідні зашифровані повідомлення. 
Метою атакуючого є відновлення частково або повністю ключа K. 
Насамперед зловмисник проводить дослідження шифру і знаходить так 
званий статистичний аналог, тобто, рівняння наступного виду,  що виконується з 
ймовірністю P≠1/2 для довільної пари відкритого/шифрованого тексту та 
фіксованого ключа [11]: 
 
PI1 ⊕ PI2 ⊕… ⊕ PIa ⊕ CI1 ⊕ CI2 ⊕… ⊕ CIb = KI1 ⊕ KI2 ⊕… ⊕ KIc      (2.1) 
 
де Pn, Cn, Kn — n - біти тексту, шифротексту і ключа. 
 
Після того, як подібне рівняння буде знайдено , атакуючий може відновити 1 
біт інформації про ключ, використовуючи алгоритм 1 [11]. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
23 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Алгоритм 1 
 
1) Припустимо, що T — кількість текстів, для яких ліва частина рівняння 
(1) дорівнює 0, тоді: 
2) Якщо T>N/2, де N — кількість відомих відкритих текстів, тоді: 
a. припустити, що KI1 ⊕ KI2 ⊕… ⊕ KIc = 0 (коли ймовірність P>1/2) 
або 1 (коли ймовірність P<1/2). 
b. Інакше: 
припустити, що KI1 ⊕ KI2 ⊕… ⊕ KIc = 1 (коли P>1/2) або 0 (коли 
P<1/2). 
Вочевидь, успіх алгоритму залежить від значення |P-1/2| та від кількості 
доступних пар відкритого/шифрованого тексту N. Чим більша ймовірність P 
настання рівності (2.1), яка відрізняється від 1/2, тим менша кількість відкритих 
текстів N необхідна для проведення даного виду криптоаналізу. 
Виникають дві проблеми, які необхідно вирішити для успішної реалізації 
атаки: 
- визначення ефективного рівняння виду (2.1). 
- як за допомогою такого рівняння отримати більше одного біта 
інформації про ключ. 
Розглянемо вирішення цих питань з прикладу шифру DES. 
 
2.3.1 Модель диференціального криптоаналізу симетричного блочного 
шифра DES 
Коротко розглянемо принцип роботи алгоритму шифрування DES. Це 
необхідно для кращого розуміння атаки методом диференціального 
криптоаналізу. 
Шифр DES відноситься до симетричних блокових шифрів та базується на 
комірках Фейстеля. Шифр має розмір блоку 64 біта та фіксований ключ, розміром 
56 біт. Розглянемо схему шифрування алгоритму DES (рис.2.3). 
Взагалі, блокові шифри можуть використовуватись для виконання різних 
завдань із забезпечення конфіденційності інформації.  
Арк. 
ЧДТУ.21.20103.006 ПЗ  
24 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Тому для будь-якого симетричного блокового алгоритму шифрування 
визначено кілька режимів застосування. Кожен із режимів має свої особливості та 
сфери застосування. 
Симетричний блочний шифр DES являє собою класичну мережу Фейштеля 
з двома гілками. Алгоритм перетворює за кілька раундів 64-бітний вхідний блок 
даних на 64-бітний вихідний блок. Стандарт DES побудований на комбінованому 
використанні перестановки, заміни та гамування. Можна говорити про те, що 
даний шифр комбінований. Комбінований (композиційний) шифр – є 
криптографічним перетворенням даних, одержуваним внаслідок комбінації 
кількох поспіль застосованих простих шифрів. 
Таке поєднання різного типу криптоперетворень теоретично значно 
збільшує стійкість шифру до криптоаналізу у порівнянні з використанням тільки 
перестановок, замін або гамування.  
Шифровані дані при застосуванні даного шифру мають бути представлені у 
двійковому вигляді. 
Одним із варіантів використання алгоритму DES є так званий потрійний 
DES – Triple-DES (3-DES). Криптографічне перетворення в ньому відбувається за 
схемою: 
1. відправник спочатку шифрує повідомлення першим ключем 
2. потім розшифрує другим 
3. остаточно шифрує першим 
4. одержувач спочатку розшифровує першим ключем 
5. шифрує другим 
6. розшифровує першим.  
При цьому довжина ключа збільшується вдвічі та становить 112 біт. В 
якості альтернативи традиційному 3-DES пропонується метод триразового 
шифрування, що використовує три різні ключі – на кожному з етапів свій. 
Загальна довжина ключа у такому методі зростає до 56x3=168 біт. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
25 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
Рис.2.3 – Схема шифрування алгоритмом DES 
 
Як видно з рис.2.3, при шифруванні над текстом виконуються такі операції: 
1) початкова перестановка біт. На цьому етапі біти вхідного блоку 
перемішуються у визначеному порядку; 
2) після цього перемішані біти розбиваються на дві однакові половини, 
які надходять на вхід комірки Фейстеля. Для стандартного DES - алгоритму 
мережа Фейстеля має включати 16 раундів, але є інші варіанти реалізації даного 
алгоритму; 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
26 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
3) два блоки, отримані на останньому раунді криптоперетворення 
об'єднуються і над отриманим блоком проводиться ще одна перестановка.  
На кожному раунді виконання перетворень комірках Фейстеля обробляється 
32 молодших біти проходять через функцію f (рис.2.4): 
 
 
 
Рис.2.4 – схема раундового криптоперевторення в шифрі DES  
 
Розглянемо операції, що виконуються на цьому етапі: 
 
1. Вхідний блок проходить через функцію розширення E, яка перетворює 
32-бітовий блок в блок довжиною 48 біт. 
2. Отриманий в такий спосіб розширений блок додається до раундового 
ключа Ki. 
3. Результат попереднього кроку розбивається на 8 блоків , довжиною по 6 
біт кожен. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
27 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
4. Кожен із отриманих розбиттям повідомлення блоків Bi пр оходить чер ез 
функцію підстановки S-Boxi, яка замінює 6-бітну послідовність, одним 4-бітним 
блоком. 
5. Отриманий в результаті перетворення 32-бітовий блок пр оходить через 
перестановку P і повертається, як результат функції f. 
Найбільшу цікавість, з точки зору криптоаналізу шифру, для 
криптоаналітика при застосування до DES шифру методу диференціального 
аналізу становлять S - блоки, призначені для приховування зв’язків між вхідними 
і вихідними даними функції f.  
Для успішної атаки на шифр DES спочатку побудуємо статистичні аналоги 
для кожного з S-блоків, а потім поширимо їх на весь шифр. 
 
Аналіз S блоків 
 
Кожен S-блок приймає на вхід 6-бітну послідовність і для кожної такої 
послідовності повертається фіксоване 4-бітне значення. Тобто, існує всього 64 
варіанти вхідних та вихідних повідомлень. Таким чином, завдання криптоаналізу 
полягає в тому, щоб довести наявність та характер взаємозв'язку між вхідними та 
вихідними даними S блоків [11].  
Наприклад, для третього S-блоку шифру DES, 3-й біт вхідної послідовності 
дорівнює 3-му біту вихідної послідовності в 38 випадках з 64. Отже, при 
наявності такої закономірності, криптоаналітик знаходить наступний 
статистичний аналог для третього S-блоку: 
S3(x)[3] = x[3], який виконується з ймовірністю P=38/64. 
Обидві частини рівняння уособлюють собою 1 біт інформації. Тому, у випадку, 
коли ліва і права частини були незалежні одна від одної, рівняння мало б 
виконуватися з ймовірністю, що складає рівною 1/2. Таким чином, щойно 
продемонстровано зв'язок між вхідними та вихідними даними 3-го S-блоку 
алгоритму DES. 
Сформулюємо, яким чином можна знайти статистичний аналог S-блоку у 
загальному випадку. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
28 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Для S-блока Sa, 1 ≤ α ≤ 63 и 1 ≤ β ≤ 15, значення NSa(α, β) описує скільки 
разів з 64 можливих XOR вхідних бітів Sa накладених на біти α дорівнюють  XOR 
результату вихідних біт, накладених на біти β, тобто [12]: 
 
 
 
де символ • — логічна операція «І». 
Значення α і β, для яких NSa(α, β) найбільше відрізняється від 32, описує 
найефективніший статистичний аналог S-блоку Sa. 
Найбільш ефективний аналог був знайдений у 5-ому S-блоці шифру DES 
для значень α = 16 і β = 15 NS5(16, 15)=12. Це означає, що справедливим є 
наступне рівняння: Z[2]=Y[1] ⊕ Y[2] ⊕ Y[3] ⊕ Y[4], де Z — вхідна 
послідовність S-блоку, а Y — вихідна послідовність. 
З врахуванням того, що в алгоритмі DES перед входом до S -блоку дані 
складаються за модулем 2 з раундовим ключем, тобто Z[2] = X[2] ⊕ K[2] 
отримуємо: 
 
X[2] ⊕ Y[1] ⊕ Y[2] ⊕ Y[3] ⊕ Y[4] = K[2], 
 
де X та Y — вхідні та вихідні дані функції f без врахування перестановок. 
Отримане рівняння виконується на всіх раундах алгоритму DES з  
однаковою імовірністю, яка складає P=12/64. 
У наступній таблиці наведено список ефективних, тобто таких, що мають 
найбільше відхилення від нормованої імовірності P=1/2, статистичних аналогів 
кожного s-блоку алгоритму DES (таблиця 2.1). 
 
 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
29 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Таблиця 2.1 
Список ефективних статистичних аналогів s-блоків алгоритму DES 
№ S- Ефективне лінійне рівняння Ймовірність, 
боксу P 
1 x2y1y2y3y4 = k2  7/32 
2 x1x5y1y3y4 = k1k5 ¼ 
3 x1x5y1y2y3y4 = k1k5 ¼ 
4 x1x5y1y2y3y4 = k1k5 ¼ 
x1x3y1y2y3y4 = k k ¼ 
1 3 
x x x x y y  = k k k k ¼ 
1 3 5 6 2 3 1 3 5 6 
x1x3x5x6y1y4 = k1k3k5k ¼ 
6 
5 x2y1y2y3y4 = k2 3/16 
6 x2y2y3y4 = k2 9/32 
x1x5y1y3y4 = k2k5 
7 x1x2х3x5x6y2= k1k2k3k5k6 7/32 
8 x2y1y2y3y4 = k2 1/4 
x1x5y1y2y3 = k1k5 
 
Після побудови списку ефективних статистичних аналогів s-блоків 
алгоритму DES можна об’єднати отримані статистичні аналоги кількох р аундів 
DES і в результаті отримати статистичний аналог для всього шифру. Для цього 
розглянемо версію алгоритму DES з трьома раундами (рис.2.5) [11]: 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
30 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
 
Рис.2.5 – версія алгоритму DES з трьома раундами 
 
Застосуємо ефективний статистичний аналог 5-го s-блоку обчислення 
певних біт значення X(2). 
Ми знаємо що з ймовірністю 12/64 у f-функції виконується рівність виду: 
 
X[2] ⊕ Y[1] ⊕ Y[2] ⊕ Y[3] ⊕ Y[4] = K[2] 
 
 
де X[2] — другий вхідний біт 5-го S-блоку, він по суті є 26-м бітом 
послідовності, отриманої після розширення вхідних біт.  
Арк. 
ЧДТУ.21.20103.006 ПЗ  
31 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Аналізуючи функцію розширення можна встановити, що на місці 26 біта 
виявляється 17-й біт послідовності X(1). 
Аналогічним чином, значення Y[1],…, Y[4] по суті є, відповідно, 17-м, 18-м, 
19-м та 20-м бітом послідовності, отриманої до перестановки значення P. 
Дослідивши перестановку P, отримуємо що біти Y[1],…, Y[4] насправді є 
бітами Y(1)[3], Y(1)[8], Y(1)[14], Y(1) [25]. 
Біт ключа K[2], залучений до рівняння, є 26 бітом підключення першого 
раунду K1, отже, статистичний аналог набуває наступної форми: 
 
X(1)[17]⊕Y(1)[3]⊕Y(1)[8]⊕Y1[14]⊕Y(1)[25]=K1[26], звідки отримаємо 
наступне рівняння: 
 
X(1)[17]⊕K1[26]=Y(1)[3]⊕Y(1)[8]⊕Y(1)[14]⊕Y(1)[25]               (2.2) 
 
Для виразу (2.2) ймовірність його виконання складає P=12/64. 
Знаючи 3, 8, 14, 25 біти послідовності Y(1) можна  знайти 3, 8, 14, 25 біти 
послідовності X(2) таким чином: 
 
X(2)[3]⊕X(2)[8]⊕X(2)[14]⊕X(2)[25]=PL[3]⊕PL[8]⊕PL[14]⊕PL[25]⊕Y(1)[3]⊕
Y(1)[8]⊕Y(1)[14]⊕Y(1)[25] 
 
або, з врахуванням рівняння (2.2) отримаємо наступний вираз: 
 
X(2)[3]⊕X(2)[8]⊕X(2)[14]⊕X(2)[25]=PL[3]⊕PL[8]⊕PL[14]⊕PL[25]⊕X(1
)[17]⊕K1[26]                                                                                    
 
(2.3) 
 
Рівняння (2.3) виконується з ймовірністю 12/64. Знайдемо подібний вир аз, 
використовуючи останній раунд. На цей раз маємо рівняння наступного виду: 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
32 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
X(3)[17]⊕K3[26]=Y(3)[3]⊕Y(3)[8]⊕Y(3)[14]⊕Y(3)[25]. 
 
В зв’язку з тим, що існує рівність виду: 
 
 
X(2)[3]⊕X(2)[8]⊕X(2)[14]⊕X(2)[25]=СL[3]⊕СL[8]⊕СL[14]⊕СL[25]⊕Y(3)[3]
⊕Y(3)[8]⊕Y(3)[14]⊕ Y(3)[25] 
 
отримаємо, що: 
 
 
X(2)[3]⊕X(2)[8]⊕X(2)[14]⊕X(2)[25]=СL[3]⊕СL[8]⊕СL[14]⊕СL[25]⊕X(3)[17] 
⊕ K3[26] 
(2.4) 
 
Рівняння (2.4) виконується з імовірністю 12/64. 
Прирівнявши праві частини рівнянь (2.3) і (2.4) отримаємо наступну рівність: 
 
СL[3]⊕СL[8]⊕СL[14]⊕СL[25]⊕X(3)[17]⊕K3[26]=PL[3]⊕PL[8]⊕PL[14]⊕PL[2
5]⊕X(1)[17]⊕K1[26]  
 
Дана рівність виконується з імовірністю (12/64)2+(1-12/64)2. 
З урахуванням того, що X(1) = PR, а X(3) = CR отримуємо статистичний 
аналог такого виду: 
 
       СL[3,8,14,25]⊕CR[17]⊕PL[3,8,14,25]⊕PR[17]=K1[26]⊕K3[26]     (2.5) 
 
Статистичний аналог (2.5) виконується з ймовірністю (12/64)2+(1-
12/64)2=0.7. 
Описаний вище статистичний аналог можна представити графічно 
наступним чином (біти на малюнку пронумеровані з права наліво починаючи з 
нуля) (рис.2.6) [11]: 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
33 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
 
Рис.2.6 – графічне представлення статистичного аналогу 
 
Всі біти в лівій частині рівняння (2.5) відомі зловмиснику або 
криптоаналітику, відповідно, він може застосувати алгоритм 1 і дізнатися 
значення K1[17]⊕K3[17]. Покажемо, як за допомогою даного статистичного 
аналогу можна отримати не 1, а 12 біт основного ключа шифрування K. 
 
 
 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
34 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
2.4 Альтернативні методи криптоаналізу 
 
Алгебраїчна атака націлена на аналіз вразливості в математичних частинах 
алгоритму та використання його внутрішніх алгебраїчних стр уктур. Однак пр о 
ефективність такої атаки мало відомостей в джерелах інформації. 
 
          2.4.1 Інші методи криптоаналізу 
Практично доказово існують лише 4 групи методів криптоаналізу за 
принципом роботи їх алгоритмічної частини: частотний, диференціальний, 
лінійний та алгебраїчний криптоаналіз. Проте з появою та стрімким розвитком 
обчислювальних можливостей сучасних процесорів, кластерних, 
багатопроцесорних технологій широкого розвитку і поширення набувають 
системи машинного навчання та штучного інтелекту. В зв’язку з цим можна 
говорити про можливість застосування таких технологій в дійсних методах 
криптоаналізу, або, навіть появі нових – евристичних методів на їх основі.  
Арк. 
ЧДТУ.21.20103.006 ПЗ  
35 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
РОЗДІЛ 3 
 
СИМЕТРИЧНІ БЛОЧНІ ШИФРИ З ТОЧКИ ЗОРУ КРИПТОАНАЛІЗУ 
 
Метод диференціального криптоаналізу є теоретичним досягненням. Його 
застосування на практиці обмежується високими вимогами до часу та обсягу 
даних. 
В зв’язку з тим, що диференціальний криптоаналіз є в першу чергу методом 
для розкриття шифру з обраним відкритим текстом, диференціальний 
криптоаналіз часто важливо реалізувати на практиці. Він може бути використаний 
для розкриття зашифрованого повідомлення з відомим відкритим текстом, але у 
разі реалізації всіх 16 раундів алгоритму DES це робить його навіть менш 
ефективним, ніж відкриття методом грубою силою. 
При практичній реалізації даний метод потребує великого обсягу пам'яті 
для збереження можливих ключів. Ефективність методу також залежить від 
структури S-блоків алгоритму, що зламується. 
  
 3.1 Вибір симетричного блочного шифру для криптоаналізу 
 
Принцип роботи криптоалгоритму RC5 досить добре описаний в багатьох 
джерелах. Його основною відмінністю від шифру DES та його базових 
модифікацій є те, що деякі з його основних параметрів можна змінювати [12]. 
Відомо, що в алгоритмі, крім секретного ключа, присутні й деякі інші, а саме: 
- розмір слова w (у бітах). Алгоритм RC5 шифрує блоки повідомлення, 
розбиті на дві однакові частини (далі позначаються A і B відповідно). Допустимі 
значення w – це натуральні числа 16, 32 або 64. Але рекомендований розмір слова 
32 біта; 
- кількість раундів R-алгоритму. В якості такого параметру допустимо 
використовувати будь-яке ціле число в діапазоні від 0 до 255 включно; 
- розмір секретного ключа b (в байтах) може змінюватися. Це будь-яке 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
36 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
ціле число в діапазоні від 0 до 255 включно. 
При шифруванні для двох блоків повідомлення A і B у подвійній 
імплементації, класичний алгоритм RC5 виконується таким чином, що перед 
першим раундом реалізуються операції накладання розширеного ключа S. Дана 
операція відповідає аналітичному виразу, наведеному в (3.1): 
 
                     A = (A+ S ) mod 2w, B = (B + S ) mod 2w.  (3.1) 
0 1
 
Наступні дії виконуються у кожному раунді шифрування RC5 (3.2): 
 
              A= ((AB)  B)+ S  
2i , B = ((B A)  A)+ S ,  (3.2) 
2i+1
 
де A, B – блоки повідомлень у бінарному кодуванні (класичний розмір 
кожного блоку 32, 64 або 128 біт); 
Si - S-key extension table; 
w – половина довжини блоку тексту (половина кількості біт у блоці – 32, 64 
або 128 бітів). 
Схема одного раунду роботи блочного шифру сімейства RC5 з виділеною 
функцією зсуву показано на рис. 3.1 [13]. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
37 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
 
Рис.3.1 - схема одного раунду роботи блочного шифру сімейства RC5 з виділеною 
функцією зсуву 
 
На рис. 3.1 значками «>>» та «<<» показано функцію зсуву. В алгоритмі RC5 
їх можна використовувати для підвищення його криптостійкості. 
Рекурентні залежності (3.1) та (3.2) лежать в основі класичної криптосистеми 
RC5. Ці вирази передбачають використання мережі Фейстеля, в якій після 
операцій додавання по модулю та операції XOR позиції блоків A та B змінюються 
місцями. Після чого відбувається наступне криптоперетворення.  Цей принцип 
блокового обміну є основою роботи алгоритму RC5.  
Дешифрування виконується у зворотному порядку, аналогічно з іншим 
симетричними алгоритмами. 
Вважається, що зараз необхідна криптостійкість алгоритму RC5 цілком 
достатня [13,14]. Однак у зв’язку зі швидким розвитком можливостей хмарних 
дата центрів, зростають і можливості криптоаналізу. 
Проаналізувавши опис, можна визначити, що структура алгоритму RC5 
дуже проста як для реалізації, так і для оцінки її криптоаналітичної стійкості.  
Арк. 
ЧДТУ.21.20103.006 ПЗ  
38 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
3.2 Методика здійснення оцінки криптостійкості шифру евристичною 
моделлю 
 
В експериментальному процесі криптоаналізу симетричних блочних шифрів 
використовують лінійний та диференціальний криптоаналіз. Для криптоаналізу 
використовувалися прості відкриті тексти. Взагалі, атака на основі відомих 
відкритих текстів, при якій у шифротексті присутні стандартні уривки, а їх зміст 
наперед відомий аналітику, є ефективною у багатьох випадках [15]. 
Описано декілька методик криптоаналізу класичного шифру RC5, які 
можуть бути застосовані до нього в повному обсязі. У роботах Kaliski and Yin 
виявлено, що атака методом лінійного криптоаналізу на класичний RC5 з 6 
раундами з використанням 257 відомих відкритих текстів з вимогами до 
відкритого повідомлення практично завершується розкриттям шифр у вже навіть 
після 6 раундів шифрування [16]. 
Диференційна атака Kaliski and Yin на RC5-32/12/16 з використанням 263 
вибраних відкритих текстів описана в [14]. Методика поліпшення ефективності 
цієї атаки до 512 разів було дано Кнудсеном та Мейєром. Ідея даного виду 
криптоаналізу в тому, щоб знайти такі відкриті тексти, щоб не було повторів у 
перших кількох півраундах шифрування. 
Після того, як ці відкриті тексти будуть ідентифіковані, диференціальний 
криптоаналіз Каліски та Інь [14] може бути успішно здійснений з більшою 
ймовірністю. 
Спираючись на дані, отримані при проведенні посиленого 
диференціального криптоаналізу в роботі [13,16] і на доведеному  в ній же факті 
про те, що алгоритм RC5 заснований на ротації, яка залежить від даних, стає 
зрозуміло, що ймовірність того, що диференціальна пара зможе уникнути 
відмінностей у кількості поворотів набагато вище, ніж очікується р озробниками 
алгоритму RC5. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
39 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
Це викликає слабкі лавинні властивості та високу ключову залежність 
властивостей шифру. Виходячи з цього факту, для евристичної моделі засобу 
оцінки криптостійкості симетричних блочних шифрів слід використовувати 
диференціальний криптоаналіз (атаку) на підставі статистики даних про 
послідовності вхідних та вихідних бітів з метою визначення ступені залежності 
між ними. 
При побудові моделі засобу криптоаналізу використовувалося поняття 
«диференціала». 
Диференціал циклу і визначається, як пара (a ,b) i така, що пара різних 
відкритих текстів x, x* з різницею a, може призвести до пари вихідних текстів y, 
y* після циклу і, що мають різницю b (для відповідного поняття різниці). 
Імовірність появи i-циклового диференціала (a,b) i - це умовна ймовір ність 
P(D y(i)=b | D x= a) того, що різниця D y(i) пари шифротекстів(y, y*) після циклу  і 
дорівнює b за умови, що пара текстів (x, x *) має різницю D для x = a. Пр ичому, 
відкритий текст x, підключі циклів (циклові ключі) до (1), до (2), ..., до (i) є 
незалежними та рівноймовірними. 
Запропонована модель базується на диференціальному методі 
криптоаналізу, який був запропонований Е. Біхамом та А. Шаміром у 1990 р . [17]. 
Аналітичний вираз, який сформований на базі запропонованої евр истичної 
моделі оцінки криптостійкості дозволяє отримати значення показника ймовірності 
появи диференціалу. Для запропонованих тестових прикладів цей вир аз вигляд, 
наведений в (3.1): 
 
(3.1) 
 
 
Зовнішній вигляд інтерфейсу користувача програмного засобу, в якому 
реалізований програмний код евристичної моделі криптоаналізу для 
симетричного блочного шифру RC5RA та 5 його модифікацій, показаний на р ис. 
3.2. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
40 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
 
 
Рис. 3.2. Зовнішній вигляд інтерфейсу користувача (GUI) програмного 
засобу, який виконує криптоаналіз симетричного блочного шифру RC5RA та його 
модифікацій 
 
Програмний код додатку, що реалізує евристичну модель засобу оцінки 
криптостійкості симетричного блочного шифру наведений в додатку А. 
Схема роботи запропонованої моделі оцінки криптостійкості блочного 
шифру наведена на рис.3.3. 
Приймемо значення різниці текстів на виході передостаннього циклу, що 
використовується при визначенні можливого підключення до останнього р аунду, 
як A=T x 0,75. В такому випадку "коректна" пара текстів дозволяє визначити 
правильний ключ, тоді як "некоректна" пара визначає випадковий ключ. 
 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
41 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
 
  
Рис.3.3 – принципова схема роботи алгоритму запропонованої моделі 
оцінки криптостійкості блочного шифру 
 
На рис.3.3 наведені наступні умовні позначення: 
 - N-раундова характеристика; 
р – відкритий текст 
Т – різниця шифротекстів 
∑ - різниця шифротексту і набору різниць проміжних результатів 
шифрування для кожного пройденого раунду. 
За підсумками отриманого «диференціала» проводилася оцінка 
«диференціала» інших пар шифрованих текстів. Ця оцінка гр аничного  значення 
складає для конкретної евристичної моделі 25%, для випадків, коли кількість 
раундів в криптоалгоритмі набуває значення від 10 до 14, як це показано в таблиці 
3. Це означає, що з ймовірністю 0,25 при даних такої структури можна  р озкрити 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
42 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
половину ключа або весь ключ повністю. Наприклад, якщо в отриманих 
значеннях, довжиною 8 біт, відрізняються тільки два останніх (крайні праві біти), 
а перші шість бітів є абсолютно ідентичними, то вважаємо, що евристична модель 
виконала релевантний з точки зору криптоаналітики результат. А сам шифр 
успішно зламаний. 
 
 3.3 Формування текстової вибірки для експериментального 
криптоаналізу 
 
Можна припустити, що для блокового симетричного шифру RC5 або 
модифікацій на його базі немає підтверджених прямих залежностей між 
розмірами або кратностями файлів вибірок з відкритим текстом для шифр ування 
на отриманий результат шифрування. Або, тим більше впливу цих властивостей 
на криптостійкість отриманого зашифрованого тексту чи появи колізій. 
Обираємо набори вхідних даних для шифрування у вигляді відкритих 
текстових повідомлень, що включають дані, взяті по аналогії з роботою [13]: 
- тестові набори текстових даних довжиною від 81 до 1968 Кілобайт, та 
- графічні - довжиною від 351 до 3412 Кілобайт. 
Для обраного методу криптоаналізу (атака на основі відомих відкритих 
текстів, при якій у шифротексті присутні стандартні уривки, а їх зміст заздалегідь 
відомий аналітику) визначено криптостійкість базового алгоритму RC5RA та 
отриманих модифікацій RC5RA при застосуванні 5 нелінійних функцій. 
У порівнянні з класичною реалізацією, при значеннях кількості раундів 
шифрування від 10 до 14 (табл. 3) поліпшення стійкості залишило від 212 разів 
(при використанні першої функції) до 268435456 рази (при використанні п'ятої 
функції зміщення). 
Дослідження стійкості криптоалгоритму RC5RA, який модифікований 
користувацькими функціями зсуву проводилося також з використанням 
пропонованої евристичної моделі диференціального аналізу. Тестовий набір 
даних (текстів) складався з перших 5 символів латинської абетки. Ці спеціально 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
43 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
підготовлені тексти містили по 2 і 4 однакових символи відповідно. Для різних 
пар текстів із даної вибірки і обчислювався «диференціал». 
 
Таблиця 3.1 
 
Таблиця кількості вхідних (простих) текстів, необхідних для злому 
модифікованого алгоритму RC5RA з різною кількістю раундів за допомогою 
евристичної моделі оцінки криптостійкості 
 
Number of rounds/ r =10 r =11 r =12 r =13 r =14 
Number of nonlinear 
function 
Перша функція 246 250 256 262 280 
Друга функція 246 252 258 266 288 
Третя функція 246 254 260 266 290 
Четверта функція 246 254 262 266 292 
П`ята функція 246 256 264 268 296 
Простий зсув 244 246 250 254 262 
 
На основі результатів тестування отриманих в ході роботи евристичної 
моделі засобу оцінки криптостійкості на симетричному блочному шифрі RC5RA 
та 5 його модифікаціях, які наведені в таблиці 3 (за кількістю текстів), можна 
порекомендувати використовувати кількість раундів у криптоалгоритмі, яка буде 
не менше 11. Це дозволяє отримати дійсно стійкий результат. 
Таким чином, після застосування даної моделі криптоаналізу можна вважати, 
що практична криптостійкість отриманої модифікації RC5RA досягається при 
кількості раундів, яка більша за 16. Результати роботи програмної реалізації 
евристичної моделі оцінки криптостійкості наведені в додатку Б. 
В таблиці 3.1 наведено таблицю кількості вхідних (простих) текстів, 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
44 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
необхідних для злому класичного алгоритму RC5RA та 5 його модифікацій з 
використання алгоритму евристичної моделі оцінки криптостійкості 
симетричного блочного шифру з різною кількістю раундів (від 10 до 14). 
 Як очевидно з аналізу таблиці 3.1, кількість відкритих текстів, необхідних 
евристичній моделі для зламу модифікованого RC5RA для 10 раундів з класичним 
раундовим зсувом дорівнює 244, для 14 раундів – сягає 262. В той же час, найбільш 
криптостійка модифікація даного шифру показала, відповідно 246 для10 р аундів і 
296 для 14 раундів. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
45 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
ЗАГАЛЬНІ ВИСНОВКИ 
 
 Мета роботи, яка полягала в створенні та тестуванні евристичної моделі 
засобу оцінки криптостійкості симетричного шифру досягнута. Для досягнення 
мети були здійснені наступні кроки магістреського наукового дослідження : 
− проаналізовано дійсні методи криптоаналізу (зокрема ті, що 
застосовуються для криптоаналізу симетричних шифрів) та обрано засіб, на якому 
базується евристична модель – диференціальний криптоаналіз; 
− розглянуто дійсні евристичні моделі криптоаналізу симетричних 
шифрів, тобто такі, які надають наближені оцінки криптостійкості шифрів: 
частотний; диференціальний; лінійний та алгебраїчний. 
− детально розглянуто принцип проведення диференціального  
криптоаналізу для симетричного блочного шифру DES, який базується на 
комірках Фейстеля, що дало змогу виділити основні етапи роботи такого засобу 
криптоаналізу;  
− сформульовано алгоритм роботи та вимоги для застосування 
створеної евристичної моделі засобу оцінки криптостійкості і показник евристики 
для її роботи.  
− проведено програму реалізації евристичної моделі мовою 
програмування та виконано її тестування. 
− отримано якісні показники роботи для симетричного блочного 
криптоалгоритму шифрування RC5RA та його 5 модифікацій. 
У результаті виконання роботи були виявлені проблемні моменти, які 
полягають у тому, що для кожного конкретного виду симетричного алгоритму в 
реальних умовах тестування бажано формулювати ad-hoc метод кр иптоаналізу, 
що застосовується для кожної з отриманих п'яти модифікацій алгоритму RC5RA. 
Це необхідно для з'ясування повного спектру криптографічної стійкості 
конкретного алгоритму та його модифікацій в симетричних криптосистемах. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
46 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 
 
1. "A worked example of the method from bill's "A security site.com"". 
Archived from the original on 2013-10-20. Retrieved 2012-12-31. 
2. M. W. Bowers (pseudonym Zembie), "Major F. W. Kasiski – 
Cryptologist", The Cryptogram, Vol. XXXI(3) (January–February 1964) pp. 53,58–59. 
3. Curtis, Sophie (13 November 2014). "Ex-NSA technical chief: How 9/11 
created the surveillance state". The Daily Telegraph. 
4. Глинчук Л.Я.  Криптологія: навч.-метод. посіб. / Людмила 
Ярославівна Глинчук – Луцьк: Вежа-Друк, 2014. – 164 с. 
5. Нильс Фергюсон, Брюс Шнайер. Практическая криптография = 
Practical Cryptography: Designing and Implementing Secure Cryptographic 
Systems. — М. : Диалектика, 2004. — 432 с. — 3000 экз. — ISBN 5-8459-0733-
0, ISBN 0-4712-2357-3. 
6. Класифікація шифрів [Електронний ресурс] // StudFiles. – 2021. – 
Режим доступу до ресурсу: https://studfile.net/preview/7854303/page:3/. 
7. S. E. Goodman, S. T. Hedetniemi, Introduction to the Design and Analysis 
of Algorithms, McGraw-Hill, 1977. 
8. Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman, Data Structures and 
Algorithms, Addison-Wesley. 
9. Элементы криптоанализа. Оценка частотности символов в тексте 
[Електронний ресурс] // StudFiles. – 2021. – Режим доступу до ресурсу: 
https://studfile.net/preview/3619192/page:16/. 
10.  Frequency analysis [Електронний ресурс] // Wikipe. – 2021. – Режим 
доступу до ресурсу: https://en.wikipedia.org/wiki/Frequency_analysis. 
11. Mitsuro M. Linear Cryptoanalysis of DES Cipher (I) [Електронний 
ресурс] / Matsui Mitsuro // Computer & Information Systems Laboratory – Режим 
доступу до ресурсу: http://www.cs.bilkent.edu.tr/~selcuk/teaching/cs519/Matsui-
LC.pdf. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
47 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
12. Biryukov, A., Kushilevitz, E. (1998) Improved cryptanalysis of RC5. In: 
Nyberg K. (eds) Advances in Cryptology — EUROCRYPT'98. EUROCRYPT 1998. 
Lecture Notes in Computer Science, vol 1403. Springer, Berlin, Heidelberg. 
https://doi.org/10.1007/BFb0054119. 
13. Sahun, A., Khaidurov, V., Lakhno, V., Opirskyy, I., Chubaievskyi, V., 
Kryvoruchko, O., & Desiatko, A. (2021). Devising a method for improving crypto 
resistance of the symmetric block cryptosystem RC5 using nonlinear shift 
functions. Eastern-European Journal of Enterprise Technologies, 5(9 (113), 17–29. 
https://doi.org/10.15587/1729-4061.2021.240344 
14. RC5-72 / Overall Project Stats. Aggregate Statistics (2021), 
https://stats.distributed.net/projects.php?project_id=8. 
15. Kaliski, B. S., Yin, Y. L. (1995). On Differential and Linear Cryptanalyszs 
of the RC5 Encryption Algorithm, Lecture Notes in Computer Science 963, Advances 
in Cryptology - CRYPTO'95, Springer-Verlag, pp.171-184. 
16. Knudsen, L. R., Meier, W. (1997). Differential Cryptanalysis of RC5. 
European Transactions on Telecommunications, Vol. 8, N. 5, pp.445-454. 
17. Eli Biham, Adi Shamir Differential Cryptanalysis of DES-like 
Cryptosystems // Springer-Verlag. — 1998. 
Арк. 
ЧДТУ.21.20103.006 ПЗ  
48 
Зм н. Арк. № докум. Підпис Дата    
     
 
 
ДОДАТОК А 
ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ ДЛЯ ПОБУДОВИ КРИПТОАНАЛІЗУ 
БЛОКОВОГО АЛГОРИТМУ НА ПРИКЛАДІ RC5RA 
 
Програмна реалізація переведення текстових даних у двійкові на основі 
кодової системи символів Windows має вигляд. 
 
def Text2Bits(Text): 
    Bin = [] 
    for i in range(len(Text)): 
        temp = []; M = ord(Text[i]) 
        for j in range(w): 
            temp.append(M%2);  M //= 2 
        temp.reverse() 
        for j in range(w): 
            Bin.append(temp[j]) 
        return Bin 
     
 
Програмна реалізація зчитування вхідного тексту для шифрування має 
такий вигляд: 
 
def readData(): 
    File = open("MyFile.txt","r")  
    Text = File.read()     
    File.close() 
    Text2Bits(Text) 
     
    return Text 
 
Програмна реалізація переведення двійкової послідовності після 
декодування даних в текстові на основі кодової системи символів Windows. 
 
def Bits2Text(Bits): 
    Text = '' 
49 
 
 
    for i in range(len(Bits) // w): 
        temp = Bits[i*w : (i+1)*w] 
        Summ = 0; x = 1 
        for j in range(w): 
            Summ += temp[w-j-1]*x;  x *= 2 
        symbol = chr(Summ) 
        Text += symbol 
        
 return Text 
50 
 
 
ДОДАТОК Б 
РЕЗУЛЬТАТИ ТЕСТУВАННЯ ПРОГРАМНОЇ РЕАЛІЗАЦІЇ 
(сформована база отриманих зашифованих повідомлень для криптоаналізу) 
 
RC5RA 
round 1 state v: 
0xc3d5d89c 0x5761e51b 0xc234b092 0x026283d4 0xb690038d 0x41c06d20 
0xa596dbfd 0xbbab134e 0x9cd3f3bf 0x0a68fb34 0x066f7293 0x1cfce4be 
0x872ea9a0 0x5dd49082 0xb6dce80a 0x7ece20ff 
round 2 state v: 
0xfd716a6f 0x7a8b79db 0x542f084f 0x726d63ab 0x812ef66d 0x64d764eb 
0x2bd45bce 0xc9d7e8d5 0x99925a0f 0xbd2fe585 0xd7385b07 0xc354b9ea 
0x8084b710 0x6ee8463f 0x3146ee0f 0x1ec1af6f  
round 3 state v: 
0x36273688 0x0809799e 0x02726883 0xb9e61853 0x8d8cb821 0x7c662b9f 
0xcb92a0b8 0x6c4944ab 0x88f7b9db 0xfdd628e9 0xed9ee3fd 0x90503b32 
0xa25319dc 0xd6ad5011 0xd15cd4cf 0x190b4401  
round 4 state v: 
0xb30a3ea2 0x761e8de2 0x703e50ad 0xc9f7516c 0x76e15e4e 0x2a8f9215 
0x54dd3a4f 0x896cc218 0xe0c9bd39 0x8eed7e55 0xc9247c34 0x7333a200 
0xdb592e47 0xeb1bf1e9 0x6a564766 0x077f564e  
round 5 state v: 
0x98588135 0x5e37a51f 0x7ed6f986 0x64a287a3 0xa95310de 0xbe377498 
0x6f3e9538 0xa601bf80 0x3c5f167a 0xc297cd37 0x19c75f61 0xa83bf1f9 
0x795dbbc9 0x25115fc3 0xefa2bb63 0x2a17ecba  
round 6 state v: 
0x61327d61 0x2f951d69 0x0d293b98 0xd4f5a302 0xf1d84d71 0x1111b592 
0xe82621f7 0x796bb374 0x080d4dce 0xf2df7609 0x0893f079 0xae418da5 
0xb70cf882 0x367620ba 0x92761dea 0x2cb5b695  
round 7 state v: 
0xabe3b6a2 0xfa134282 0xe0b9c603 0xdb17723b 0xe24094e6 0x11a15a2c 
0x8cc6ed59 0xa8068d43 0xa74c4889 0x5a1675d2 0xc674b34b 0x8ab0af6a 
0xe518e351 0x1e819b2b 0xd1714e37 0xfe0639ce  
round 8 state v: 
0xe65bea81 0x7c89222a 0xfa2ba6ca 0x95a5752f 0x1bfa040a 0x84c463eb 
0x83d7e628 0x04300d9e 0x3a641d84 0x94d52ca1 0x8d84a6c8 0x2ee9c2ed 
0x8d8f8bd4 0xd2ed2e69 0x295ff8b6 0x213e5c83  
round 9 state v: 
0x7d6d7d58 0x303365f6 0xf61ce946 0xb00af02b 0xf162c025 0xb7963fe1 
0x8d0b26b6 0x44e26465 0xf8259d8f 0x91a0e7c0 0xea047a65 0xdecb9510 
0x2da60e5a 0x726c45c6 0x62a9efc7 0xb3b5e1c6  
round 10 state v: 
0x2c924883 0x6818b903 0x3a1a3e91 0x9657aa26 0x581cba51 0x6959c50d 
0x7179625f 0x42467f43 0x3b9c7fa0 0xe933cdbc 0xd2665e3b 0xe096638c 
0x343189f7 0xb61c48d2 0xd7639b2f 0x24035abc  
round 11 state v: 
0x9f1fd05b 0x0b8aee43 0x9e10b776 0xa62d9ac3 0xb25bcb6c 0xc2c03b66 
0x3d8c4f56 0xcea39822 0x51ddf63c 0x97805a87 0x4865354e 0xb87ef7f0 
0xf4caf434 0xdec72e55 0x6ee3cac5 0x6b53d3b3  
round 12 state v: 
0x2e90266e 0xb6f726d8 0xa5e355ee 0x0b95af84 0x9f041b04 0xf393e27d 
0x212f2d15 0x0abad7e8 0xd67851a8 0xe0de18e7 0xf68133a9 0x4c272dc6 
0xdb047375 0x808c8666 0xea29448e 0x4167d048  
51 
 
 
round 13 state v: 
0x361992b2 0x0bab6824 0x170b136b 0x2872d16f 0x32ea860b 0xe35e8881 
0xc43f59f7 0xd7c3ab26 0xf8d4ac7e 0x1bca89b1 0xe56499c7 0xd2045b98 
0x08b00bd6 0x6fe8edfa 0xb123c77e 0x4fb6549a  
round 14 state v: 
0xa2fb9dfa 0xcce4ad3e 0xabc52312 0x5bb67cbc 0xb5323cb4 0x7c614d05 
0x62e41f62 0x7c2d5a9f 0x67583d79 0xb6b6bff5 0x408f1bf8 0x4dd60c0c 
0xf9709978 0xd7e7a994 0x27e6457f 0xc1ef42aa  
 
Result Code: 
0xab064f10 0xce0179de 0x5f397fcd 0x6b54dfa2 0x17b30df7 0x6a9f4722 
0xc39532a5 0xa4c4d8ab 
**********************************************************           
 
52 
 
 
ДОДАТОК В 
ПРЕЗЕНТАЦІЯ ДО КВАЛІФІКАЦІЙНОЇ РОБОТИ 
 
 
 
53 
 
 
 
 
54 
 
 
 
 
55 
 
 
 
 
56 
 
 
 
 
57 
 
 
 
 
58 
 
 
 
 
59