
- •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.Вкажіть кількість ключів у шифрі зсуву для української та латинської абеток.
4. Призначення хеш-функцій у критптології
Хеш-функція — функція, що перетворює вхідні дані будь-якого (як правило, великого) розміру в дані фіксованого розміру. Хешування (іноді гешування, англ. hashing) — перетворення вхідного масиву даних довільної довжини у вихідний бітовий рядок фіксованої довжини. Такі перетворення також називаються хеш-функціями абофункціями згортки, а їх результати називають хешем, хеш-кодом або дайджестом повідомлення (англ. message digest).
Хешування застосовується для порівняння даних: якщо у двох масивів хеш-коди різні, масиви гарантовано розрізняються; якщо однакові - масиви, швидше за все, однакові. У загальному випадку однозначної відповідності між вихідними даними і хеш-кодом немає в силу того, що кількість значень хеш-функцій менше, ніж варіантів вхідного масиву; існує безліч масивів, що дають однакові хеш-коди - так звані колізії. Ймовірність виникнення колізій відіграє важливу роль в оцінці якості хеш-функцій. Існує безліч алгоритмів хешування з різними характеристиками (розрядність, обчислювальна складність, крипостійкість тощо). Вибір тієї чи іншої хеш-функції визначається специфікою розв'язуваної задачі. Найпростішими прикладами хеш-функцій можуть служити контрольна сума або CRC. Криптографічна хеш-функція повинна забезпечувати:
стійкість до колізій (два різні набори даних повинні мати різні результати перетворення);
необоротність (неможливість обчислити вхідні дані за результатом перетворення).
Хеш-функції також використовуються в деяких структурах даних — хеш-таблицях і декартових деревах. Вимоги до хеш-функції в цьому разі інші:
добра перемішуваність даних;
швидкий алгоритм обчислення.
Наприклад, під час запису текстових полів в базі даних може розраховуватися їх хеш-код і дані можуть поміщатися в розділ, що відповідає цьому хеш-коду. Тоді при пошуку даних треба буде спочатку обчислити хеш-код тексту і відразу стане відомо, в якому розділі їх треба шукати, тобто, шукати треба буде не по всій базі, а тільки по одному її розділу (це сильно прискорює пошук).
Побутовим аналогом хешування в даному випадку може служити розміщення слів у словнику за алфавітом. Перша буква слова є його хеш-кодом, і при пошуку ми переглядаємо не весь словник, а тільки потрібну букву.
5. Способи утворення рівняння Діофанта
Якщо А і Б додатні взаємопрості, то існують такі числа x i y, для яких мають місце рівняння Діофанта ax+by=1. Пошук х і у виконують рухаючись по алгоритму Евкліда знизу вверх.
6. Як формувався ключ у шифрі Віженера? Віженера-Кардано?
Шифр Віженера — поліалфавітний шифр, який у якості ключа використовує слово. Якщо пронумерувати літери алфавіту від 0 до 32 (а → 0, б → 1, в → 2, …), то шифрування Віженера є можливим представити формулою Ci = (Pi + Kj) mod 33, де Kj — j-та літера ключового слова. Ключове слово повторюється, поки не отримано гаму, рівну довжині повідомлення.
У шифрі Віженера-Кардано, подібно до шифру Віженера, крипто текст отримують сумуванням відкритого тексту із послідовністю букв такої ж довжини. Проте цю послідовність записують дещо інакше, ніж у шифрі Віженера – спочатку записують ключ, а справа до нього дописують відрізок самого відкритого тексту.
8 варіант