Шифрування методом перестановки. Види і способи шифрів

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

Перевернуті групи

Для ознайомлення з шифруванням методом перестановки згадаємо один з найпростіших прикладів. Алгоритм його полягає в поділ повідомлення на n блоків, які потім перевертаються задом наперед і міняються місцями. Розглянемо приклад.

  • “День ішов, і неба повітря темний”.

Розділимо це повідомлення на групи. У даному випадку n = 6.

  • “Деньух одили небав взд ухтем ний”.

Тепер розгорнемо групи, записавши кожну з кінця.

  • “хуьнед вабен дзо метху йын”.

Переставимо певним чином місцями.

  • “илидо метху йын хуьнед вабен дзо”.

Для незнаючого людини в такому вигляді повідомлення являє собою не більш ніж нісенітницю. Але, зрозуміло, той, кому адресоване повідомлення, відає алгоритмом розшифровки.

Серединна вставка

Алгоритм даного шифрування трохи складніше шифрування методом перестановки:

  1. Розділити повідомлення на групи з парною кількістю символів.
  2. У середину кожної групи вставити додаткові літери.

Розглянемо на прикладі.

  1. “Земні тварі вів до сну”.

  2. “Земн ыетв аріу води лкосну”.

  3. “Зеамн ыеабтв араиу воабди лкоасну”.

В даному випадку в середину груп були вставлені чергуються літери “а”і “аб”. Вставки можуть бути різними, в різній кількості і не повторюватися. Крім цього, можна розвернути кожну групу, перемішати їх і т. д.

Шифрограма “Сендвіч”

Ще один цікавий і простий приклад шифрування методом перестановки. Для його використання потрібно відкритий текст розділити на 2 половини і одну з них посимвольно вписати між літер іншого. Покажемо на прикладі.

  • “Від їхніх праць; лише я один, бездомний”.

Розділимо на половини з рівною кількістю букв.

  • “Отихтрудовлишь яодинбездомный”.

Тепер запишемо першу половину повідомлення з великим інтервалом між літерами.

  • “О т і х т р у д о л і ш ь”.
Дивіться також:  Старий Хаген-Эскерра - перший в світі безстатевий осіб

І в цих проміжках розмістимо букви другої половини.

  • “Оятоидхитнрбуедзодволминшыьй”.

Нарешті згрупуємо букви в свого роду слова (необов’язкова операція).

  • “Оятои дхі тнрбуе дзодвол миншыьй”.

Зашифрувати текст цим методом дуже легко. Отриманий рядок-нісенітницю непосвяченому доведеться розгадувати деякий час.

Перестановки “маршрутом”

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

Покажемо на прикладі, як зашифрувати текст. Спробуйте самі визначити маршрут запису і маршрут складання шифрограми.

  • “Приготовлялся витримати війну”.

Будемо записувати повідомлення в таблицю розмірами 3×9 клітин. Розмірність таблиці можна визначити, виходячи з довжини повідомлення, або використовувати деяку фіксовану таблицю кілька разів.

п р і г про т про в л
р е д и в я з л я
ж а т ь в про ї н у

Шифр будемо складати, починаючи з верхнього правого кута таблиці.

  • “Ляунлвосйоятоввьыгидтаерпрж”.

Звернення описаних кроків не представляє праці. Досить просто зробити все навпаки. Даний спосіб є дуже зручним, тому що дозволяє легко запам’ятати процедуру шифрування і розшифровки. А також він є цікавим, тому що використовувати для шифру можна будь-яку фігуру. Наприклад, спіраль.

Вертикальні перестановки

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

  • “І з тяжким шляхом, та з состраданьем”

Дивіться також:  Селенитовый бульйон: характеристика, склад, особливості застосування

Використовуємо таблицю розміром 4х8 клітин і запишемо в неї наше повідомлення звичайним чином. А для шифрування використовуємо ключ 85241673.

і з т я г про з т
н и м п у т е м
і з з про з т р а
д а н ь е м

Ключ наведено нижче.

8 5 2 4 1 6 7 3

Тепер, використовуючи ключ як вказівки на порядок, випишемо стовпці в рядок.

  • “Гусетмснтмаяпоьсысаоттмсеринид”.

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

Зворотна розшифровка вертикальної перестановки

Вертикальна перестановка становить інтерес тим, що розшифровка повідомлення не є простим наслідуванням алгоритмом від зворотного. Тому, хто знає ключ, відомо, скільки стовпців в таблиці. Щоб дешифрувати повідомлення, потрібно визначити кількість довгих і коротких рядків у таблиці. Це дозволить визначити початок, звідки починати записувати шифрограму в таблицю, щоб прочитати відкритий текст. Для цього розділимо довжину повідомлення на довжину ключа і отримаємо 30/8=3 і 6 у залишку.

Таким чином, нам стало відомо, що у таблиці 6 довгих стовпців і 2 коротких, заповнених літерами не до кінця. Подивившись на ключ, ми бачимо, що шифрування почалося з 5-го стовпця, і він повинен бути довгим. Так ми знаходимо, що перші 4 літери шифрограми відповідають п’ятому за рахунком стовпця таблиці. Тепер можна записати всі букви місцями і прочитати таємне послання.

Решітка Карданних

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

Трафарет Карданних виготовляється за наступним принципом: вирізані клітинки при повороті на 90° не повинні перекривати один одного. Тобто після 4 поворотів трафарету навколо своєї осі прорізу в ньому не повинні збігатися ні разу.

Дивіться також:  Андре-Марі Ампер: біографія, внесок у науку

Використовуємо для прикладу просту ґрати Кардано (на малюнку нижче).

Використовуючи цей трафарет, зашифруем фразу “Про Музи, я звернуся до вас з воззваньем”.

Про М
У
З И
До
В А
М

Заповнюємо осередку трафарету літерами за правилом: спочатку справа наліво, а потім зверху вниз. Коли комірки закінчаться, повертаємо трафарет на 90° за годинниковою стрілкою. Таким способом отримуємо наступну таблицю.

Я
Про Б Р
А Щ
у
З Ь

І ще раз повертаємо на 90°.

З
В Про
З
В А
Н
Ь Е

І останній поворот.

М

Після об’єднання 4 таблиць в одну отримуємо підсумкове зашифроване послання.

Я Про М М Г З
В Про У Б Про Р
Г З А З Щ И
В Г До Г А У
Г В Г Н Г А
М З Ь Ь Е Г

Хоча послання може залишитися і таким, але для передачі зручніше буде отримати звичну на вигляд шифрограму. Для цього порожні клітинки можна заповнити випадковими літерами і виписати стовпці в один рядок:

  • “ЯВГВГМ ООЗГВС МУАКГЬ МБЗГНЬ ГОЩАГЕ СРЫУАГ”

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

Аналіз шифрів перестановки

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