ТЕМА. Методы защиты информации
Содержание
§1. Стеганография и криптография. 1
§2. Основные понятия. 2
§3. Ручные криптографические методы.. 3
§1. Стеганография и криптография
В любом, даже самом кратком изложении основ информационной безопасности присутствует раздел о криптографических и стеганографических средствах защиты информации.
Криптография и стеганография - два древнейших направления, развивавшиеся параллельно друг другу со времен зарождения письменности и предназначавшиеся для защиты информации от посторонних лиц. То и другое направление имеют единую цель: утаить по тем или иным причинам информацию от всех людей кроме «избранных» - тех, кто знает тайну о том, как прочесть секретные сведения.
В чем различие криптографии и стеганографии? Конечно же, в первую очередь, в способах достижения цели - цель одна, подходы разные.
Стеганография — это скрытие информации, когда сам факт наличия этой информации не очевиден, в то время как криптография - видоизменение письма таким образом, чтобы прочесть информацию мог только узкий круг лиц, обладающий правилом и ключом (тайной) для ее прочтения.
Словообразования «криптография» и «стеганография» имеют греческие корни: kryptos - тайна; steganos - секрет, тайна; graphy - запись. Смысловая нагрузка этих слов схожа несмотря на различия в написании. Однако в их определениях просматривается существенное различие в способах достижения цели. Общепризнанной классификации в этих областях нет до сих пор, но криптография и стеганография четко утвердились в мировой теории и практике области защиты информации.
Для лучшего понимания различий между криптографическими и стегано-графическими методами можно вспомнить наглядный пример совместного использования возможностей этих двух направлений в рассказе Эдгара По «Золотой жук». Старая карта пирата, найденная одним из персонажей рассказа, интриговала не одно поколение читателей, но наш интерес к ней сугубо исследовательский. Начертание карты проявилось только после нагревания поверхности бумаги с помощью свечи. До этого момента у персонажа не было ни малейшего подозрения о ее существовании на пожелтевшем от старости мятом листке бумаги.
Это не что иное, как один из стеганографических приемов, суть которого заключается в нанесении информации (которую требуется скрыть) на лист бумаги определенными органическими жидкостями, к примеру, молоком или лимонным соком. При высыхании поверхности листа нанесенная информация становится практически невидимой и проявляется лишь при его нагревании, что и было сделано в рассказе с помощью пламени свечи. А вот текстовая информация на этой карте предстала перед нами в виде непонятных знаков и цифр. Бессодержательность хаотичного их нагромождения, на первый взгляд, привела главного персонажа рассказа к мысли о тайном тексте, скрытом одним из способов криптографии.
§2. Основные понятия
Криптоанализ - применение специальных методов для исследования шифров с целью их раскрытия или подделки таким образом, чтобы они были приняты как подлинные при условии, что секретный ключ неизвестен.
Стеганоанализ - решение задачи обнаружения скрытых сообщений, их извлечение, удаление или модификация.
В области защиты информации существует достаточно устоявшаяся терминология, которая распространена не только в научной литературе, но и широко применяется в СМИ, кинофильмах, детективах и т. д. Большинством людей эти термины воспринимаются стереотипно и далеко не всегда правильно.
Исходное сообщение, к которому криптограф применяет свое искусство, называется открытым текстом сообщения или просто открытьт текстом, а результат его работы - шифрованным текстом сообщения - шифртекстом, или криптограммой.
Для управления процессом шифрования криптограф всегда использует секретный (закрытый) ключ. Часто, но не всегда, он передает этот секретный ключ каким-либо надежным способом человеку, которому он собирается позднее послать криптограмму, составленную с использованием этого ключа. Получатель с помощью ключа сможет впоследствии расшифровать криптограмму.
§3. Ручные криптографические методы
Рассмотрим типовые способы криптографического закрытия информации и некоторые простые, основанные на них, шифры (криптоалгоритмы).
Шеннон К. Э. выделил два общих принципа, используемых в практических шифрах: рассеивание и перемешивание.
Рассеивание - распространение влияния одного знака открытого текста на много знаков шифртекста, что позволяет скрыть статистические свойства открытого текста. Развитием этого принципа является распространение влияния одного знака ключа на много знаков шифртекста, что предотвращает восстановление ключа по частям.
Перемешивание — использование таких шифрующих преобразований, которые усложняют восстановление взаимосвязи статистических свойств открытого и шифрованного текста.
Добиться выполнения этих принципов нелегко, если учесть, что шифр должен не только затруднять раскрытие, но и обеспечивать легкость шифрования и дешифрования (при известном секретном ключе).
Существующие ручные шифры подразделяются на два вида преобразований: алфавитная подстановка и перестановка.
Moнo- и многоалфавитные подстановки - наиболее простой вид преобразований, заключающийся в замене символов исходного текста на другие (того же алфавита) по более или менее сложному правилу. Рассмотрим три типа ручных подстановок: 1) шифр Гая Юлия Цезаря; 2) шифр Гронсфельда; 3) подстановка Вижинера.
1) Историческим примером метода подстановки может служить шифр Гая Юлия Цезаря, который пользовался им, чтобы содержание его сообщений с арены боевых действий не стало известно противнику. Представим себе одно из его возможных посланий. Используя подстановку Цезаря, можно было получить шифртекст, представленный в правой части рис. 1.
Рис. 1. Шифр Гая Юлия Цезаря
Для того чтобы пользоваться шифром Цезаря, и отправитель, и получатель шифровки должны иметь к ней так называемый секретный (тайный) ключ. В нашем примере ключ - это буква под номером «7» (буква «3»). Отправитель сообщения создает шифртекст, просто складывая 7 с числами, соответствующих каждой букве шифртекста (рис. 2).
Рис. 2. Пример сдвига в шифре Цезаря с ключом «7»
Так, первая буква открытого текста «С» соответствует числу «16», складывая ее с «7», получаем число «23», которое соответствует букве «Ш» - первой букве шифртекста на рис. 2.
2) Подстановка Цезаря является самым простым вариантом подстановки. Она относится к группе моноалфавитных подстановок и, как все из этой группы, является нестойкой к частотному анализу. Поэтому была предложена модификация данного шифра - шифр Гронсфельда, который относится к многоалфавитным подстановкам.
Многоалфавитная подстановка определяется ключом, содержащим не менее двух различных подстановок.
Алгоритм Гронсфельда можно получить, если в преобразовании Цезаря применять для шифрования не постоянный коэффициент сдвига (в нашем примере - цифра 7), а ключ, состоящий из последовательности цифр. Знак в отрытом тексте сдвигается на заданное цифрой в ключе значение, а для смещения следующего знака берется очередная цифра ключа.
Для шифрования под сообщением пишут ключ. Если ключ короче сообщения, то его повторяют циклически. Криптограмму получают аналогично шифру Цезаря, но сдвигая каждую букву на соответствующую цифру ключа. Так, применяя в качестве ключа группу из четырех цифр 3712 и алфавит на рис. 2, получаем шифртекст.
Рис. 3. Шифровка с использованием алгоритма Гронсфельда
3) В приведенных методах каждый символ шифруется отдельным значением ключа, однако существуют схемы, где такое требование снято. Такая схема шифрования основывается на так называемой таблице Вижинера (рис. 4) и называется подстановка Вижинера.
Рис. 4. Таблица Вижинера
Таблица представляет собой квадратную матрицу с числом элементов SxS, где S - количество символов в алфавите. В первой строке матрицы записываются буквы в порядке очередности их в алфавите, во второй - та же последовательность букв, но с сдвигом влево на одну позицию, в третьей - с сдвигом на две позиции и т. д. Освободившиеся места справа заполняются вытесненными влево буквами, записываемыми в естественной последовательности, т. е. применяется принцип циклического сдвига.
Для шифрования текста устанавливается ключ, представляющий собой некоторое слово или набор букв. Далее из полной матрицы (см. рис, 6) выбирается подматрица шифрования, включающая в себя, первую строку и строки матрицы, первым символом (буквой) которой являются последовательно буквы ключа, например, МОРЕ. В итоге получается подматрица, изображенная на рис. 5.
Рис. 5. Подматрица шифрования, сформированная на основе
таблицы Вижинера
Процесс шифрования включает в себя следующую последовательность действий:
- под каждой буквой шифруемого текста записываются буквы ключа, повторяющие ключ требуемое число раз (рис. 6);
- шифруемый текст по подматрице заменяется буквами, расположенными на пересечениях линий, соединяющих буквы текста первой строки подматрицы и буквы ключа, находящейся под ней.
Рис. 6. Пример шифрования текста
Так, под первой буквой шифруемого текста оказалась буква «М» ключа. В первой строке подматрицы находим букву «3» , которая является первой буквой открытого текста, и выбираем из данной колонки подматрицы букву в той строке, начальный символ которой соответствует букве «М» ключа. Такой буквой оказалась буква «У» (см. рис. 5). Далее выполняется замена исходной буквы «3» на «У» в выходном тексте. Выходной текст делится на группы, например, по четыре знака. Для этого алгоритма может быть составлена программа ЭВМ.
Достоинства:
Раскрыть текст, полученный по данному алгоритму, только на основе статистических характеристик языка невозможно, так как одни и те же символы открытого текста могут быть заменены различными символами шифрованного текста. С другой стороны, различные символы открытого текста могут быть заменены одинаковыми знаками шифрованного текста.
Недостатки:
Ненадежность шифрования при небольшой длине ключа и сложность формирования длинных ключей. Так как в ключе не допускается повторение букв (в противном случае шифрование будет неоднозначным), а сам ключ должен легко запоминаться, последовательность букв, не имеющих определенного смысла, запомнить трудно.
Литература.
1. Методы и средства защиты информации: Учебное пособие / А.А. Симаков, А. И. Горев, А. Г. Малютин, Ю.А. Гудков; Омский гос. ун-т путей сообщения. Омск, 2007. С. 83-85, 94-99.