ШИФРОВАНИЕ СООБЩЕНИЙ РАЗЛИЧНЫМИ МЕТОДАМИ.




Основные понятия криптографии и стеганографии.

Проблема защиты информации от несанкционированного (самовольного) доступа (НДС) заметно обострилась в связи с широким распространением локальных и особенно глобальных компьютерных сетей. Защита информации необходима для уменьшения вероятности утечки (разглашения), модификации (умышленного искажения) или утраты (уничтожения) информации, представляющей определенную ценность для ее владельца.

Проблема защиты информации волнует людей несколько столетий. По свидетельству Геродота, уже в V веке до н.э. использовалось преобразование информации методом кодирования.

Одним из самых первых шифровальных приспособлений была скитала, которая применялась в V веке до н.э. во время войны Спарты против Афин. Скатала - это цилиндр, на который виток к витку наматывалась узкая папирусная лента (без пробелов и нахлестов). Затем на этой ленте вдоль оси цилиндра (столбцами) записывался необходимый для передачи текст. Лента сматывалась с цилиндра и отправлялась получателю. Получив такое сообщение, получатель наматывал ленту на цилиндр такого же диаметра, как и диаметр скиталы отправителя. В результате можно было прочесть зашифрованное сообщение.

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

Шифры появились в глубокой древности в виде криптограмм (по-гречески – тайнопись). Порой священные иудейские тексты шифровались методом замены. Вместо первой буквы алфавита записывалась последняя буква, вместо второй – предпоследняя и т. Д. Этот древний шифр назывался атбаш. Известен факт шифрования переписки Юлия Цезаря (100 – 44 до н.э.) с Цицероном (106 -43 до н.э.)

Шифр Цезаря реализуется заменой каждой буквы в сообщении другой буквой этого же алфавита, отстоящей от нее в алфавите на фиксированное число букв. В своих шифровках Цезарь заменял букву исходного открытого текста буквой, отстоящей от исходной буквы впереди на три позиции.

В Древней Греции (IIв до н.э.) был известен шифр, который создавался с помощью квадрата Полибия. Таблица для шифрования представляла собой квадрат с пятью столбцами и пятью строками, которые нумеровались цифрами от 1 до 5. В каждую клетку такой таблицы записывалась одна буква. В результате каждой букве соответствовала пара цифр, и шифрование сводилось к замене буквы парой цифр.

 

 

Идею квадрата Полибия проиллюстрируем таблицей с русскими буквами. Число букв в русском алфавите отличается от числа букв в греческом алфавите, поэтому и размер таблицы выбран иным (6 х 6). Заметим, что порядок расположения символов в квадрате Полибия является секретной информацией (ключом).

 

             
  А Б В Г Д Е
  Ё Ж З И Й К
  Л М Н О П Р
  С Т У Ф Х Ц
  Ч Ш Щ Ъ Ы Ь
  Э Ю Я . , -

Зашифруем с помощью квадрата Полибия слово КРИПТОГРАФИЯ: 26 36 24 35 42 34 14 36 11 44 24 63

Из примера видно, что в шифрограмме первым указывается номер строки, а вторым – номер столбца, В квадрате Полибия столбцы и строки можно маркировать не только цифрами, но и буквами.

В настоящее время проблемами защиты информации занимается криптология (kryptos – тайный, logos – наука). Криптология разделяется на два направления – криптографию и криптоанализ. Цели этих двух направлений криптологии прямо противоположны.

Криптография – наука о защите информации от несанкционированного получения ее посторонними лицами. Сфера интересов криптографии – разработка и исследование методов шифрования информации.

Под шифрованием понимается такое преобразование информации, которое делает исходные данные исходные данные нечитаемыми и трудно раскрываемыми без знания специальной секретной информации – ключа. В результате шифрования открытый текст превращается в шифрограмму и становится нечитаемым без использования дешифрирующего преобразования. Шифрограмма может называться иначе: зашифрованный текст, криптограмма, шифровка или шифротекст. Шифрограмма позволяет скрыть смысл передаваемого сообщения.

Сфера интересов криптоанализа противоположная – разработка и исследование методов дешифрования (раскрытия) шифрограммы даже без знания секретного ключа.

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

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

Процесс получения криптоаналитиками открытого сообщения из шифрованного сообщения без заранее известного ключа называется вскрытием или взломом шифра.

Существует несколько классификаций шифров. По характеру использования ключа алгоритмы шифрования делятся на два типа: симметричные (с одним ключом, по-другому – с секретным ключом) и несимметричные (с двумя ключами или с открытым колючем). Несимметричные алгоритмы шифрования и дешифрования порой называют асимметричными.

Ключ 1(секретный) Ключ 1. (секретный)

В первом случае в шифраторе отправителя и дешифраторе получателя используется один и тот же ключ (Ключ 1). Шифратор образует шифрограмму, которая является функцией открытого текста. Конкретный вид функции преобразования (шифрования) определяется секретным ключом. Дешифратор получателя сообщения выполняет обратное преобразование по отношению к преобразованию, сделанному в шифраторе. Секретный ключ хранится в тайне и передается по каналу, исключающему перехват ключа криптоаналитиком противника или коммерческого конкурента.

Ключ 1(открытый) Ключ 2. (секретный)

 

 


Во втором случае (при использовании асимметричного алгоритма) получатель вначале по открытому каналу передает отправителю открытый ключ (Ключ 1), с помощью которого отправитель шифрует информацию. При получении информации получатель дешифрирует ее с помощью второго секретного ключа (Ключ 2). Перехват открытого ключа (Ключа 1) криптоаналитиком противника не позволяет дешифровать закрытое сообщение, так как оно рассекречивается лишь вторым секретным ключом (Ключ 2). При этом секретный Ключ 2 практически невозможно вычислить с помощью Ключа 1.

При оценки эффективности шифра обычно руководствуются правилом голландца Огюста Керкхоффа (1835 – 1903), согласно которому стойкость шифра определяется только секретностью ключа, т.е. криптоаналитику известны все детали процесса (алгоритма) шифрования и дешифрования, но неизвестно, какой ключ использован для шифрования данного текста.

Криптостойкостью разывается характеристика шифра, определяющая его устойчивость к дешифрованию без знания ключа (т.е. устойчивость к криптоанализу). Имеется несколько показателей криптостойкости, среди которых количество всех возможных ключей и среднее время, необходимое для криптоанализа.

Алгоритмы шифрования с открытым ключом используют так называемые необратимые или односторонние функции. Эти функции обладают следующим свойством: при заданном значении аргумента х относительно просто вычислить значение функции f(x). Однако, если известно значение функции y=f(x), то нет простого пути для вычисления аргумента х.

Все используемые в настоящее время криптосистемы с открытым ключом опираются на один из следующих типов необратимых преобразований.

1. Разложение больших чисел на простые множители (алгоритм RSA, авторы — Райвест, Шамир и Адлеман — Rivest, Shamr, Adleman).

2. Вычисление логарифма или возведение в степень (алгоритм DH, авторы Диффи и Хелман).

3. Вычисление корней алгебраических уравнений.

Рассмотрим простейший пример «необратимых» функций. Легко в уме найти произведение простых 11 и 13. Но попробуйте быстро в уме найти два простых числа, произведение которых равно 437. Подобные трудности возникают и при использовании вычислительной техники для отыскания двух простых сомножителей для очень большого числа: найти сомножители можно, но потребуется много времени.

Таким образом, в системе кодирования, основанной на разложении на множители, используются два разных ключа: один для шифрования сообщения, а второй — отличный от первого, но связанный с ним — для дешифрования. Ключ шифрования (открытый, не секретный ключ) основан на произведении двух огромных простых чисел, а ключ дешифрования (закрытый, секретный ключ) — на самих простых числах.

Заметим, что при операциях разложения простого числа на множители порой называют факторизацией.

Термин «необратимые» функции неудачен. Правильнее было бы их называть быстро (или просто) необратимые функции.

В 40-х годах ХХ в. американский инженер и математик Клод Шеннон предложил разрабатывать шифр таким образом, чтобы его раскрытие было эквивалентно решению сложной математической задачи. Причем, сложность задачи должна быть такой, чтобы объем необходимых вычислений превосходил бы возможности современных ЭВМ.

В асимметричных системах приходится применять длинные ключи (1024 бита и больше). Длинный ключ увеличивает время шифрования открытого сообщения. Кроме того, генерация ключей становится весьма длительной. Зато пересылать открытые ключи можно по незащищенным (не засекреченным, открытым) каналам связи. Это особенно удобно, например, для коммерческих партнеров, разделенных большими расстояниями. Открытый ключ удобно передавать от банкира сразу нескольким вкладчикам.

В симметричных алгоритмах используют более короткие ключи, поэтому шифрование и дешифрование происходит быстрее. НО в таких системах распределение (рассылка) ключей является сложной. Передавать ключи можно по закрытым (секретным) каналам. Использование курьеров для рассылки секретных ключей дорогая, сложная и медленная процедура.

В США для передачи секретных сообщений наибольшее распространение получил стандарт DES (D ata E ncryption S tandart).

Стандарт DES является блочным шифром. Он шифрует данные блоками по 64 бита. При шифровании используется ключ длиной 56 битов. Данный стандарт подвергается многократному детальному криптоанализу. Для его взлома были разработаны специализированные ЭВМ стоимостью, достигавшей 20 миллионов долларов. Были разработаны способы силового взлома стандарта DES на основании распределенных вычислений с использованием множества ЭВМ. Для увеличения криптостойкости в последствии был разработан способ DES- шифрования с использованием трех ключей — так называемый «тройной DES».

Можно утверждать, что на протяжении многих лет дешифрованию криптограмм помогает частотный анализ появления отдельных символов и их сочетаний. Вероятности появления отдельных букв в тексте сильно различаются. Для русского языка, например, буква «о» появляется в 45 раз чаще буквы «ф» и в 30 раз чаще буквы «э». Анализируя достаточно длинный текст, зашифрованный методом замены, можно по частотам появления символов произвести обратную замену и восстановить исходный открытый текст. В таблице приведены относительные частоты появления русских букв.

 

Буква частота Буква Частота Буква Частота Буква Частота
о 0,09 в 0,038 з 0,016 ж 0,007
е 0,072 л 0,035 ы 0,016 ш 0,006
а 0,062 к 0,028 б 0,014 ю 0,006
н 0,062 м 0,026 Ь,ъ 0,014 ц 0,004
и 0,053 д 0,025 г 0,013 щ 0,003
т 0,053 п 0,023 ч 0,012 э 0,003
с 0,045 у 0,021 й 0,01 ф 0,002
р 0.04 я 0,018 х 0,009    

 

Относительная частота появления пробела или знака препи-

нания в русском языке составляет 0,174. Приведенные цифры означают следующее: среди 1000 букв текста в среднем будет 174 пробела и знаков препинания, 90 букв «о», 72 буквы «е»

При поведении криптоанализа требуется по небольшому отрезку текста решить, что собой представляет дешифрованный текст: осмысленное сообщение или набор случайных символов. Часто криптоаналитики вскрывают шрифты на ЭВМ методом перебора ключей. В процессе криптоанализа прихордится перебирать миллиарды ключей со скоростью в несколько десятков миллионов ключей в секунду. Вручную выполнить анализ множества фрагментов дешифрованных текстов невозможно. Поэтому задачу выделения осмысленного текста (т.е. Обнаружение правильно дешифрированного текста) решают с помощью ЭВМ. В этом случае используют теоретические положения, разработанные в конце Х1Х в. петербургским математиком А.А. Марковым, так называемые цепи Маркова.

Следует заметить, что, по мнению некоторых специалистов, нет нераскрываемых шифров. Рассекретить (взломать) любую шифрограмму можно либо за большое время, либо за большие деньги. Во втором случае для дешифрования потребуется использование нескольких суперкомпьютеров, что приведет к существенным материальным затратам. Все чаще для взломов секретных сообщений используют распределенные ресурсы Интернет, распараллеливая вычисления и привлекая к расчетам сотни и даже тысячи рабочих станций.

Есть и другое мнение. Если длина ключа равна длине сообщения, а ключ генерируется из случайных чисел с равновероятным распределением и меняется с каждым новым сообщением, то шифр невозможно взломать даже теоретически. Подобный подход впервые описал Г.Вернам в начале ХХ века, предложив алгоритм одноразовых шифроблокнотов.

Рассмотрим еще одну классификацию шифров. Множество современных методов шифрования можно разделить на четыре большие группы: методы замены (подстановки), перестановок, аддитивные (гаммирования и комбинированные методы.

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

Метод замены часто реализуется многими пользователями случайно при работе на ЭВМ. Если по забывчивости не переключить на клавиатуре регистр с латиницы на кириллицу, то вместо букв русского алфавита при вводе текста будут печататься буквы латинского алфавита. В результате исходное сообщение будет «зашифровано» латинскими буквами. Например, rhbgnjuhfabz — так зашифруется слово криптография.

В шифре перестановок все буквы открытого текста остаются без изменений, но перемещаются с их исходных позиций на другие места (примером является шифрование с помощью скиталы).

Так простейшая «шифровка» получена методом перестановки двух соседних букв РКПИОТРГФАЯИ.

В этом «секретном» сообщении легко узнать слово КРИПТОГРАФИЯ.

Более сложный алгоритм перестановок сводится к разбиению сообщения на группы по три буквы. В каждой группе получится криптограмма: РИКТОПРАГИЯФ.

Перестановки получаются в результате записи исходного текста и чтения шифрованного текста по разным путям некоторой геометрической фигуры.

В аддитивном методе буквы алфавита вначале заменяюся числами, к которым затем добавляются числа секретной псевдослучайной числовой последовательности (гаммы). Состав гаммы меняется в зависимости от использованного ключа. Обычно для шифрования используется логическая операция «Исключающее ИЛИ». При дешифровании та же гамма накладывается на зашифрованные данные. Метод гаммирования широко используется в военных криптографических системах. Шифры, получаемые аддитивным методом, порой называют поточными шифрами.

Комбинированные методы предполагают использование для шифрования сообщения сразу нескольких методов (например, сначала замена символов, а затем их перестановка).

Существует еще один подход к передаче секретных сообщений. Он сводится к сокрытию самого факта передачи информации. Такими способами шифрования занимается наука стеганография.

Если криптография делает открытое сообщение нечитаемым без знания секретного ключа, то стеганография разрабатывает такие методы шифрования, при которых сложно заметить сам факт передачи информации.

Стеганография использует специальные контейнеры, в которых прячется передаваемое сообщение. Например, секретный текст внедрения в безобидный рисунок какого то цвета на поздравительной открытке.

 

ШИФРОВАНИЕ СООБЩЕНИЙ РАЗЛИЧНЫМИ МЕТОДАМИ.

Рассмотрим как зашифровать сообщение методом замены (другими словами методом подстановки). Вначале используем шифр Цезаря. Предположим, что требуется зашифровать сообщение «ГДЕ АББА».

Циклический шифр Цезаря получается заменой каждой буквы открытого текста буквами этого же алфавита. Расположенными впереди через определенное число позиций, например через три позиции.

Циклическим он называется потому, что при выполнении замены вслед за последней буквой алфавита вновь следует первая буква алфавита. Запишем фрагмент русского алфавита:

А Б В Г Д Е Ё Ж З И К

А Б В Г Д Е Ё Ж З И К

В результате проведенного преобразования получается шифрограмма: ЁЖЗ ГДДГ.

В данном случае ключом является величина сдвига (число позиций между буквами). Число ключей этого шифра невелико (оно равно числу букв алфавита). Недостатком шифра Цезаря является невысокая криптостойкость. Объясняется это тем, что в зашифрованном тексте буквы по-прежнему располагаются в алфавитном порядке, лишь начало отсчета смещено на несколько позиций.

Замена может осуществляться на символы другого алфавита и с более сложным ключом (алгоритмом замены). Для простоты опять приведем лишь часть алфавитов. Линии показывают порядок замены букв русского алфавита на буквы латинского алфавита. Тогда фраза «ГДЕ АББА»:

А Б В Г Д Е

A B C D E F

В результате такого шифрования получится криптограмма:

СDB EFFE.

Рациональнее использованный в последнем случае ключ записать в виде таблицы:

 

А Б В Г Д Е
E F A C D B

 

При шифровании буквы могут быть заменены числами (в простейшем случае порядковыми номерами букв в алфавите). Тогда наша шифрограмма может выглядеть так: 4-5-6-1-2-2-1.

Замена символов открытого текста может происходить на специальные символы, например, на «пляшущих человечков», как у

К. Дойла или с помощью флажков, как это делается моряками.

Более высокую криптостойкость по сравнению с шифром Цезаря имеют аффинные криптосистемы.

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

Аффинные криптосистемы задаются при помощи двух чисел a и b. Для русского алфавита эти числа выбираются из условия a>=0, b<=32. Максимальное число символов в используемом алфавите обозначается символом y. Причем числа a и γ=33 должны быть взаимно простыми. Если это условие не будет выполняться, то две разные буквы могут отображаться (превращаться) в одну. Каждый код буквы открытого текста μ заменяется кодом буквы криптограммы по следующему правилу. Вначале вычисляется число

α=a*μ +b, а затем выполняется операция целочисленного деления числа α на число γ=33, т.е. α = β(mod(γ)). В качестве кода символа шифрограммы используется остаток от целочислен-

ного деления β.

Для определенности выберем такие числа а=5 и b=3.

Фрагмент процедуры, иллюстрирующей порядок шифрования, приведен в таблице.

 

Буква открытого текста А Б В Г Д Е .... Я
Код буквы открытого текста μ             ....  
Код буквы шифрограммы β.             ....  
Буквы шифрограммы Г З М С Ц Ы .... Ю

 

Предположим, что нужно зашифровать сообщение «ГДЕ АББА». В результате получим:

 

Открытый текст Г Д Е А Б Б А
Шифрограмма С Ц Ы Г З З Г

 

В рассмотренных шифрах каждой букве открытого текста соответствовала одна определенная буква криптограммы. Подобные шифры называются шифрами одноалфавитной замены.

Длинные сообщения, полученные методом одноалфавитной замены (другое название — шифр простой однобуквенной замены), раскрываются с помощью таблиц относительных частот. Для этого подсчитывается частота появления каждого символа, делится на общее число символов в шифрограмме. Затем с помощью таблицы относительных частот определяется, какая была сделана замена при шифровании.

Повысить криптостойкость позволяют шифры многоалфавитной замены(или шифры многозначной замены). При этом каждому символу открытого алфавита ставят в соответствие не один, а несколько символов шифровки.

Фрагмент ключа многоалфавитной замены:

 

А Б В Г Д Е
           
           
           

 

С помощью многоалфавитного шифра сообщение «ГДЕ АББА» можно зашифровать несколькими способами:

19- 83- 32- 48- 4 7- 12-

10-99-15-12 - 4 -14- 12 ит.д.

Для каждой буквы исходного алфавита создается некоторое множество символов шифрограммы так, что множества каждой буквы не содержат одинаковых элементов. Многоалфавитные шифры изменяют картину статистических частот появления букв и этим затрудняют вскрытие шрифта без знания ключа.

Рассмотрим еще один шифр многоалфавитной замены, который был описан в 1585 г. французским дипломатом Блезом Виженером. Шифрование производится с помощью таблицы Виженера.. Здесь,как и прежде, показана лишь часть таблицы для того, чтобы изложить идею метода.

Каждая строка в этой таблице соответствует одному шифру простой замены (типа шифра Цезаря). При шифровании открытое сообщение записывается в строку, а под ним помещают ключ. Если ключ оказывается короче сообщения, то ключ циклически повторяют. Шифровку получают, находя символ в матрице букв шифрограммы. Символ шифрограммы находится на пересечении столбца с буквой открытого текста и строки с соответствующей буквой ключа.

 

 

Таблица Виженера

  А Б В Г Д Е Строка букв открытого
А А Б В Г Д Е текста
Б Я А Б В Г Д  
В Ю Я А Б В Г  
Г Э Ю Я А Б В Матрица букв
Д Ь Э Ю Я А Б шифрограмм
Е Ы Ь Э Ю Я А  
.... .... .... .... .... .... ....  

Столбец ключа

Предположим, что нужно зашифровать сообщение «ГДЕ АББА». В качестве ключа выберем слово «ДЕВА». Тогда получим:

 

Сообщение Г Д Е А Б Б А
Ключ Д Е В А Д Е В
Шифровка Я Я Г А Э Ь Ю

 

В результате преобразования получится шифровка: ЯЯГ АЭЬЮ

 

Система Плейфера создает многоалфавитные шифры.

Шифрование производится с помощью квадрата (или прямоугольника), в который занесены буквы соответствующего национального алфавита. Буквы записываются в произвольном порядке. Этот порядок и конфигурация таблицы являются секретным ключом. Для определенности возьмем прямоугольную таблицу размером 8х4, в качестве букв алфавита — кириллицу, а буквы расположим в алфавитном порядке. Так как число русских букв 33, а число клеток — 32, исключим из таблицы букву Ё.

 

А Б В Г Д Е Ж З
И Й К Л М Н О П
Р С Т У Ф Х Ц Ч
Ш Щ Ъ Ь Ы Э Ю Я

 

Требуется зашифровать слово КРИПТОГРАФИЯ.

Рассмотрим порядок шифрования:

1. Открытый текст делится на блоки по две буквы. Буквы в одном блоке не должны быть одинаковыми. Произведем разделение исходного слова на блоки по две буквы КР-ИП-ТО-ГР-АФ-ИЯ

2. Если буквы шифруемого текста находятся в разных строках и столбцах, то в качестве заменяющих букв используются буквы, расположенные в углах прямоугольника,охватывающего буквы открытого текста. Например, блок КР заменяется символами ИТ.

3. Если буквы открытого текста попадают в одну строку, то шифрограмма получается путем циклического сдвига вправо на одну клетку. Например, блок ИП будет преобразован в ЙИ. Еще один пример к этому правилу. Если, предположим, требуется преобразовать блок КН, то получим ЛО.

4. Если обе буквы открытого текста попадают в один столбец, то для шифрования осуществляют циклический сдвиг на одну клетку вниз.

5. Блок ЖЦ будет преобразован в символы ОЮ, а блок ТЬ в символы ЪВ.

В соответствии с описанными правилами слово КРИПТОГРАФИЯ будет преобразовано в криптограмму: ИТЙИЦКАУДРПШ.

Заметим, что если блоки открытого текста состоят из одинаковых букв, то криптограмма тоже будет содержать одинаковые пары символов. По этой причине рассмотренный шифр относится к одноалфавмтным. Однако модификация этого шифра превращает его в многоалфавитную систему. Для этого используется несколько таблиц Плейфейера и производится многократное шифрование.

Рассмотрим примеры шифрования сообщения методом перестановок.

Идея этого метода криптографии заключается в том, что зхапись открытого текста и последующее считывание шифровки производится по разным путям некоторой геометрической фигуры (например, квадрата).

Для пояснения идеи возьмем квадратную таблицу (матрицу) 8х8, и будем записывать текст последовательно по строкам сверху вниз, а считывать по столбцам последовательно слева направо.

Предположим, что необходимо зашифровать сообщение:

НА ПЕРВОМ КУРСЕ ТЯЖЕЛО УЧИТЬСЯ ТОЛЬКО ПЕРВЫЕ ЧЕТЫРЕ ГОДА ДЕКАНАТ.

Н А   П Е Р В О
М   К У Р С Е  
Т Я Ж Е Л О   У
Ч И Т Ь С Я   Т
О Л Ь К О   П Е
Р В Ы Е   Ч Е Т
Ы Р Е   Г О Д А
  Д Е К А Н А Т

 

В результате преобразования получится шифровка:НМТЧОРЫ_ А_ЯИЛВРД_ КЖТЬЫЕЕПУЕЬКЕ_КЕРЛСО_ГАРСОЯ_ЧОНВЕ__ПЕДАО_УТЕТАТ.

Как видно из примера, шифровка и открытый текст содержат одинаковые символы, но они располагаются на разных местах.

Ключом в данном случае является размер матрицы, порядок записи открытого текста и считывания шифрограммы. Естественно, что ключ может быть и другим. Например, запись открытого текста по строкам может производиться в таком порядке: 48127653, а считывание криптограммы может происходить по столбцам в следующем порядке: 81357642.

Будем называть порядок записи в строки матрицы ключом записи, а порядок считывания шифрограммы по столбцам -ключом считывания.

Тогда правило дешифрирования криптограммы, полученной методом перестановок, можно записать так.

Чтобы дешифровать криптограмму, полученную с помощью матрицы n x n, нужно криптограмму разбить на группы символов по n символов в каждой группе. Крайнюю левую группу записать сверху — вниз в столбец, номер которого совпадает с первой цифрой ключа считывания. Вторую группу символов записать в столбец, номер которого совпадает со второй цифрой ключа считывания и т.д. Открытый текст считывать из матрицы по строкам в соответствии с цифрами ключа записи.

Рассмотрим пример дешифрации криптограммы, полученной методом перестановок. Известно, что при шифровании использована матрица 6 х 6, ключ записи 352146 и ключ считывания 425316. Текст шифрограммы таков:

ДКАГЧЬОВА_РУААКОЕБЗЕРЕ_ДСОХТЕСЕ_Т_ЛУ

Разобьем шифрограмму на группы по 6 символов:

ДКАГЧЬ ОВА_РУ ААКОЕБ ЗЕРЕ_Д СОХТЕС Е_Т_ЛУ

Затем первую группу символов запишем в столбец 4 матрицы

6 х 6, так как первая цифра ключа считывания - 4 (смотреть рис.а). Вторую группу из 6 символов запишем в столбец 2,(смотреть рис.б), третью группу символов - в столбец 5 (рис.в) пропустов две фазы заполнения матрицы, изобразим полностью заполненную матрицу (рис.г)

               
        Д      
        К      
        А      
        Г      
        Ч      
        Ь      
               
      О   Д    
      В   К    
      А   А    
          Г    
      Р   Ч    
      У   Ь    
                             

а)

 

б)

             
    О   Д А  
    В   К А  
    А   А К  
        Г О  
    Р   Ч Е  
    У   Ь Б  
               
    С О З Д А Е
    О В Е К А  
    Х А Р А К Т
    Т   Е Г О  
    Е Р   Ч Е Л
    С У Д Ь Б У
                           

в) г)

 

В результате дешифрования получим открытый текст:

 

ХАРАКТЕР ЧЕЛОВЕКА СОЗДАЕТ ЕГО СУДЬБУ

Естественно, что описанная процедура дешифрования криптограммы производится компьютером автоматически с помощью заранее разработанных программ.

Для повышения криптостойкости методы замены и перестановки используют в сочетании с аддитивным методом.

При шифровании аддитивным методом вначале открытый текст шифруют методом замены, преобразуя каждую букву в число. Затем к каждому числу добавляют секретную гамму (псевдослучайную числовую последовательность). Технически добавление гаммы в криптографических системах осуществляется поразрядно (поточный шифр): на каждый бит открытого текста поочередно накладывается бит секретной гаммы.

Генератор потока ключей — гаммы выдает поток битов: γ1,γ2...γi. Этот поток битов и поток битов открытого текста р12....рi подвергаются поразрядно логической операции «Исключающее ИЛИ». Результаты всех преобразований поместим в таблицу.

 

 

Открытый текст Г Д Е А Б Б А
Десятичное число              
Двоичное число              
Гамма(десятичная)              
Гамма(двоичная)              
Результ. (двоичный)              
Результ (десятич.)              
Шифрограмма г Ц б Л ь Ц Г

 

Для наглядности результат шифрования (шифрограмма) переведен с помощью таблицы СР — 1251 в буквы.

Из таблицы видно, что открытый текст был



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2018-01-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: