Современные информационные технологии/ 4.Информационная безопасность

 

К.э.н, Алдажаров К.

Казахский экономический университет им.Т.Рыскулова

 

Использование Excel при реализации метода Виженера

 

    

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

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

Рисунок 1. Таблица Виженера для русского алфавита

 

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

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

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

Для автоматизации процесса вышеперечисленных алгоритмов шифрования и расшифрования можно применить некоторые функции Excel, а именно:

1.     ДЛСТР, которая позволяет определить длину строки, что необходимо пользователю, для кодировки (декодирования) исход­ной строки.

2.     ПСТР,  разделяет кодируемый (декодирования) текст на отдельные символы.

3.     ПОИСКПОЗ производит поиск индекса (номера позиции) символа в массиве ячеек А1:А33 (рис. 2), что соответствует первой строке таблицы Виженера.

4.     ЕСЛИ позволяет, получив номер символа в алфавите, произвести сдвиг нумерации алфа­вита для кодируемой последовательности символов. При этом используется следующие формулы:

ЕСЛИ(G6+H6-1>33;G6+H6-34;G6+H6-1),     (1)

ЕСЛИ(G6-H6+1<0; G6-H6+34; G6-H6+1),     (2)

где G6 – позиция символа кодируемого (декодируемого) текста, H6 - позиция символа ключа.

5.     ИНДЕКС позволяет, выбрать символы из алфавита в соответствии с новыми номерами.

Приведенные функции реализованы на расшифровке следующей шифрограммы: ЖЧРВЧЛУБЪСВЁКЭЧЭЧЪАМДКЬТЦЩВЖЧОЙЧКЭТКЗЖЙСЗЬЙБЕФЙБЧЫЛЁЯЫЛЖАЖДЦЩЬКДГЕАРОЫЮЗКТРЮЮЬТЦЩДБВФВШУЕМШКЩНЦВЦ. При этом в качестве ключа испльзуется слово ЖИЗНЬ. Результаты реализации приведены на рис.2.

Рисунок 2. - Фрагмент документа Excel