Кодування тексту та шифрування

Перейти до вправ за цією темою »

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

Базове кодування тексту використовувалося ще до появи комп’ютерів. Наприклад, азбука Морзе використовувалася для передачі повідомлень по телеграфу, а шрифт Брайля кодує текст, який читається на дотик. Для текстового кодування в комп’ютерах використовуються методи на основі двійкових чисел (нулів і одиниць).

Кодування не шифрує повідомлення. Якщо ми напишемо повідомлення PES азбукою Морзе (.–.|.|…), то будь-хто, хто знає цей код, зможе легко прочитати повідомлення. Щоб зберегти повідомлення в секреті, використовується шифрування. Люди люблять тримати речі в таємниці, тому шифрування використовується майже так само довго, як письмо. Уже в давнину широко використовувався, наприклад, добре відомий шифр Цезаря. Шифрування багато разів відігравало важливу роль в історії. Так, однією з ключових подій Другої світової війни став злам німецької шифрувальної машини Enigma.

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

Ви можете практикувати тему шифрування кількома способами:

  • Базові шифри – основні принципи шифрування (транспонування, підстановка), проілюстровані простими прикладами.
  • Шифри з ідеєю – ці шифри не використовуються для практичних цілей, але вони добре послужать для тренування мислення та перевірки основних криптоаналітичних навичок.
  • Шифрування: основні поняття та принципи – більш просунута тема, у якій детальніше розглядаються методи використання шифрування та основні концепції.
Вгору

Базове кодування тексту

Перейти до вправ за цією темою »

Зазвичай ми кодуємо інформацію як текст, який записуємо на папері за допомогою літер алфавіту. Однак написання літер на папері — не єдиний спосіб кодування тексту.

  • Азбука Морзе присвоює кожній літері код, що складається з крапок і тире. Раніше він використовувався в основному для передачі інформації за допомогою телеграфу.
  • У Міжнародному Кодексі Сигналів кожна літера має свій прапор. Текст закодовано у вигляді серії прапорів.
  • У прапорцевій сигналізації відповідна людина кодує літери, використовуючи різні положення рук, тримаючи кольорові прапорці. Як і алфавіт військово-морського прапора, він використовується, наприклад, серед моряків для зв’язку на великі відстані.
  • Шрифт Брайля кодує літери за допомогою нерівностей у сітці 2×3. Цей шрифт призначено для людей із вадами зору для читання на дотик.
  • Комп’ютери зберігають літери за допомогою числових кодів. Окрема тема стосується кодування тексту в комп’ютерах.
Вгору

Кодування тексту в компʼютерах

Перейти до вправ за цією темою »

У комп’ютері вся інформація зберігається у вигляді нулів і одиниць. Щоб зберігати текстову інформацію, нам потрібне кодування, яке перетворює текст на нулі та одиниці. У 60-х роках ХХ століття для цього була створена таблиця ASCII, яка присвоювала символам числа від 0 до 255, а потім ці числа записували у двійковій системі в один байт.

Однак ASCII дозволяло кодувати лише літери англійського алфавіту та деякі інші базові символи. Тому пізніше був розроблений стандарт Unicode, який дозволяє писати не лише основні літери, а й літери інших світових алфавітів та багато інших символів (як-от, символ сніговика: ☃). Ви можете дізнатися, які інші символи є в Unicode тут. У той час як Unicode призначає цифри символам, різні кодування (наприклад, UTF-8) визначають, як конвертувати ці числа в одиниці та нулі для збереження на комп’ютері.

Напр., Unicode кодує сніговика як число 2603 у шістнадцятковій системі. UTF-8 кодує це число у три байти зі значеннями 11 100 010, 10 011 000 і 10 000 011.

Вгору

Транспозиційні шифри

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

  • написання задом наперед (ДИНОЗАВР → РВАЗОНИД)
  • написання через одну літеру (ДИНОЗАВР → ДЗИАНВОР)
  • заміна сусідніх літер (ДИНОЗАВР → ИДОНАЗРВ)

Існують також більш складні шифри транспонування, які дозволяють шифрувати за допомогою пароля.

Шифри підстановки

З іншого боку, шифри підстановки зберігають порядок літер, але змінюють їхню форму. Базовий шифр заміни — це зсув у алфавіті (також званий шифром Цезаря), коли літери замінюються іншими літерами, наприклад, при зсуві на одну ми шифруємо ЛЬВІВ → МЮГЇГ (Л змінюється на М, Ь змінюється на Ю і так далі). Більш складним прикладом шифру підстановки є шифр Віженера.

Кодування подібне до шифрів підстановки, як-от, азбуки Морзе, Брайля або таблиці ASCII. Однак саме кодування не є шифром, оскільки воно не шифрує повідомлення. Коли ми пишемо повідомлення за допомогою азбуки Морзе, кожен, хто знає цей код, може легко його прочитати.

Вгору

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

Вгору
ЗВ’ЯЖІТЬСЯ З НАМИ

Дякуємо за ваше повідомлення, його було успішно відправлено.

Напишіть нам

Вам потрібна допомога?

Будь ласка, спочатку ознайомтеся з інструкціями.

Будь ласка, не надсилайте запитання пов'язані з відповідями або пояснення послідовності розв'язання. Якщо ви сповіщаєте про помилку, вкажіть, будь ласка, у чому вона полягає та додайте скріншот.

Про що йдеться у повідомленні?

Повідомлення Сповістити про помилку Зміст Управління Вхід до системи Ліцензія