← До всіх практик
ЛАБОРАТОРІЯ · ВІД ІНФОРМАТИКИ ДО КРИПТОГРАФІЇ

Практика 4 · Перший секретний ключ

📖 Історія: перехоплене повідомлення

Буч надсилає волонтерам літеру A — умовний сигнал «усе гаразд». Зловмисник може прочитати звичайні байти. Тому Буч домовився з волонтерами про секретний однобайтовий ключ. Ваше завдання — перевірити, як працює перетворення XOR.

Інформатика: символ A → код ASCII 65 → байт 01000001. Криптографія: застосуємо до цього байта ключ і отримаємо інший байт — шифротекст. Повторне XOR із тим самим ключем відновить вихідний байт.

🧪 Інтерактивний симулятор XOR

Виберіть ключ від 0 до 255. Зверніть увагу: біти шифротексту змінюються разом із ключем, а повторне XOR відновлює початковий байт.

Відкритий байт01000001
Ключ00101010
Шифротекст01101011
Після розшифрування01000001
💡 Чому XOR можна застосувати двічі?Для кожного біта виконується (дані XOR ключ) XOR ключ = дані. Спробуйте це перевірити на першому біті.

🔍 Завдання 1. Підберіть ключ

Знайдіть ключ, за якого літера A (65) перетвориться на число 107 (HEX 6B). Уведіть знайдений ключ.

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

🛡️ Завдання 2. Чи надійний такий шифр?

Ви передаєте багато повідомлень і кожного разу використовуєте той самий однобайтовий ключ. Чи достатньо цього для реального захисту листування?

💡 ПідказкаУсього 256 однобайтових ключів. Їх можна швидко перебрати. У реальній криптографії потрібні сучасні алгоритми та безпечне керування ключами.

🧠 Завдання 3. Поясніть різницю

Чому запис A як 01000001 — це кодування, а перетворення цього байта за секретним ключем — шифрування?

Зразок міркуванняКодування задає загальновідомий спосіб представлення символу байтами. Шифрування перетворює ці байти з використанням ключа, щоб захистити інформацію. Простий однобайтовий XOR тут лише демонструє принцип, а не забезпечує реальну безпеку.