- •1. Опишіть використання методу частотного аналізу й криптології.
- •2. Від чого залежить стійкість шифру «одноразовий блокнот». Назвіть стандарти шифрування, побудовані на цьому шифрі.
- •3. Опишіть алгоритм генерування ключів у криптосистемі rsa
- •4. Як формувався шифр 4 квадратів для латинської абетки.
- •Опишіть шифр «Одноразовий блокнот» та виконайте його криптоаналіз:
- •Вкажіть кількість ключів у шифрі простої заміни для латинської та української абетки
- •Властивості ецп:
- •Які способи шифрування використовують шифр adfgvx:
- •Опишіть блокові шифри
- •Сформулюйте лему Безу ( утворення рівняння Діофанта)
- •1.Опишіть шифр Віженера та виконайте його криптоаналіз.
- •2.Алгоритм накладання і перевірки ецп в криптосистемі rsa.
- •3.Випишіть прості числа з проміжку (70,100), використовуючи розклад чисел на прості множники і алгоритм Евкліда,знайти нсд (442,24).
- •4.Як формувався ключ у гомофонних шифрах заміни.
- •1.Постановка задачі криптології. Симетрична і несиметрична криптосистеми, різниця між ними.
- •2.Алгоритм шифрування і дешифрування повідомлень в криптосистемі rsa.
- •3.Застосування несиметричних криптосистем
- •3. Опишіть шифри простої заміни та виконайте їх криптоаналіз
- •4. Основні кроки стандарту шифрування даних des
- •5. Генерування коротких ецп
- •6. На яких фактах будується метод частотного аналізу?
- •3. Виконайте криптоаналіз симетричних криптосистем. Сформулюйте основне припущення криптоаналізу (19 століття)
- •4. Призначення хеш-функцій у критптології
- •5. Способи утворення рівняння Діофанта
- •6. Як формувався ключ у шифрі Віженера? Віженера-Кардано?
- •1.Опишіть шифри зсуву та зробіть ї криптоаналіз.
- •4. Як переводили десяткове слово у двійкове у шифрі Одноразовий блокнот
- •1. Опишіть матричний шифр та виконайте його криптоаналіз.
- •2.Факторизація натуральних чисел.
- •3.Дайте пояснення терміну «контрольна криптографічна сума».
- •4.Вкажіть кількість ключів у шифрі зсуву для української та латинської абеток.
1.Опишіть шифри зсуву та зробіть ї криптоаналіз.
Шифр Цезара – це перший приклад шифру зсуву (заміни). Кажуть що цей шифр є шифром зсуву на 3 позиції. Цей та інші шифри зручно задавати таблицею, у верхньому рядку якої є алфавіт, у якому пишуть повідомлення, нижнім рядком – цей же алфавіт, але зсунутий на певну кількість позицій. Кожна буква в цьому шифрі замінюється іншою літерою віддаленої від першої на певну відстань. Наприклад, у шифрі із зсувом 4 «А» замінюється «Д», «Б» - «Е», «В» - «Ж» і так далі. Ключем в шифрі є величина зсуву. К-сть всіх можливих ключів 25 для лат. абетки і 32 для україн.
Шифр Цезаря має замало ключів — на одиницю менше, ніж літер в абетці. Тому перебрати усі ключі не складає особливої роботи. Дешифрування з одним з ключів дасть нам вірний відкритий текст.
Також зламати шифр Цезаря також можна, як і звичайний підстановочний шифр, у зв'язку з тим, що частота появи кожної літери в шифртексті збігається з частотою появи у відкритому тексті. Якщо припустити, що частота появи літер у відкритому тексті приблизно відповідає середньостатистичній відносній частоті появи літер в текстах мови, на якій написано повідомлення, тоді ключ знаходиться зіставленням перших декількох літер, що трапляються найчастіше у відкритому та зашифрованому текстах. Тобто за допомогою методу частотного криптоаналізу.
2.Взаємно прості числа — натуральні або цілі числа, які не мають спільних дільників більших за 1, або, інакше кажучи, якщо їх найбільший спільний дільник дорівнює 1. Таким чином, 2 і 3 — взаємно прості, а 2 і 4 — ні (діляться на 2). Будь-яке натуральне число взаємно просте з 1.
Алгоритм Евкліда обчислює найбільший спільний дільник (НСД) двох натуральних чисел a та b. Найбільший спільний дільник g — це найбільше натуральне число яке ділить як a так і b без залишку. Найбільший спільний дільник також записують як НСД(a, b) або, простіше, (a, b). Алгоритм будується на таких співвідношеннях:
НСД(а,b)= НСД(b,a)
НСД(а,b)= НСД(b, a mod b)
НСД(а,0)= a
3. Стійкість RSA грунтується на проблемі факторизації великих простих чисел. Дійсно, якщо зловмисникові вдасться розкласти n на дільники p і q , то для нього не складе труднощів обчислити j ( n ) , а потім у відповідності з генерацією ключів визначити секретний ключ користувача. Однак знаходження секретного ключа RSA не еквівалентне проблемі факторизації . Це означає , що T (RSA ) <= T, де T ( RSA) - трудомісткість визначення секретного ключа RSA , а T ( факторизації ) - трудомісткість факторизации числа n . Тобто можуть бути знайдені ефективні алгоритми визначення секретного ключа RSA , причому в той же час проблема факторизації не буде вирішена
Є кілька способів зламування RSA. Найефективніша атака: знайти закритий ключ, відповідний необхідному відкритому (public) ключу. Це дозволить нападаючому читати всі повідомлення, зашифровані відкритим (public) ключем і підробляти підписи. Таку атаку можна навести, знайшовши головні співмножники загального модуля n – p і q.
Інший спосіб зламати RSA у тому, щоб знайти метод обчислення кореня ступеня e з mod n. Зрозумівши корінь, можна розкрити зашифровані повідомлення й підробляти підписи, навіть знаючи закритий ключ.
Самий простий напад на повідомлення – атака по гаданому відкритого тексту. Нападаючий, маючи зашифрований текст, передбачає, що містить повний текст, наприклад, " Напад світанку " , потім шифрує гаданий текст відкритим (public) ключем одержувача і порівнює отриманий текст з які є зашифрованим текстом
