Топ новостей


РЕКЛАМА



Календарь

Шифр Віженера: вразлива криптосистема, з якої в результаті зросли одноразові шифр-блокноти

Більшість «історичних» і фігурують в художній літературі і кіно шифрів належать до одного і того ж виду - моноалфавитной шифрів. Про головну слабкість даної кріптосхеми - можливість злому шифру шляхом аналізу частоти використання символів - ми вже сказали досить , І усвідомлена вона була задовго до появи обчислювальної техніки.

Один з найзнаменитіших і цікавих шифрів, покликаних вирішити цю проблему, - це так званий шифр Віженера. Названий ім'ям французького дипломата XVI століття, він був насправді винайдений незалежно один від одного різними людьми. Що цікаво, Блеза Віженера при цьому серед них не було, він лише переконав свого часу Генріха III використовувати його, а назва це шифр отримав вже в XIX столітті.

Перше його опис можна знайти ще в XVI столітті в «Трактаті про шифри» Леона Баттіста Альберті, більш відомого тим, що він вперше виклав математичні основи перспективи в живописі. Ідея була досить простою, проте все одно означала вихід криптографії на новий рівень - поліалфавітних шифри.

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

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

Ваш покірний слуга один раз сам - швидше від нудьги, ніж за потребою, - «розшифрував» саме таким чином email, що прийшов йому в невірної кодуванні, це не вимагало ніяких особливих навичок або серйозних обчислювальних потужностей.

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

Більшість «історичних» і фігурують в художній літературі і кіно шифрів належать до одного і того ж виду - моноалфавитной шифрів

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

Раз вже ми говоримо про різні старожитності, нехай нашої ключової фразою буде VINTAGE. В такому випадку, щоб зашифрувати фразу THINK ABOUT, нам потрібно повторити ключову фразу так, щоб отримати стільки ж букв, скільки в вихідному повідомленні:

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

Наприклад, перша буква замінюється на той символ, який стоїть на перетині рядка T і стовпці V, тобто на «O»

Розшифровка виробляється, відповідно, в зворотному порядку: ми перебираємо по черзі рядки, відповідні буквах ключової фрази, знаходимо в них чергові знаки зашифрованого повідомлення і записуємо літери, які позначають колонки, в яких вони стоять.

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

В цілому шифр мав репутацію дуже надійного. Його називав невзламиваемим математик Чарльз Лутвідж Доджсон (більш відомий як письменник Льюїс Керролл), і вихваляв журнал Scientific American, однак набагато більш широке поширення набула його модифікація, відома як шифр Гронсфілда. Він відрізнявся тим, що алфавітів заміни в ньому було всього 10 (по числу цифр), а ключова фраза була не словом, а числом.

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

Першим успішну атаку на шифр Віженера (якщо бути зовсім точним - на одну з його модифікацій, але метод можна застосовувати і до оригінальної версії) здійснив в 1854 році ще один знаменитий англієць - Чарльз Беббідж, один з піонерів обчислювальної техніки. Але опублікував схему аналізу вже інший дослідник - Фрідріх Касіскі через дев'ять років.

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

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

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

У підсумку ця ідея була реалізована у вигляді одноразового шифрувального блокнота. І ось такі шифри з використанням одноразових блокнотів якраз і стали на якийсь час принципово невзламиваемимі і набули широкого поширення в цивільній і військовій криптографії. Але про це іншим разом.


Реклама



Новости