Криптографическое преобразование информации
Защита информации методом криптографического преобразования заключается в преобразовании ее составных частей (слов, букв, слогов, цифр) с помощью специальных алгоритмов либо аппаратных решений и кодов ключей, т.е. в приведении ее к неявному виду. Для ознакомления с шифрованной информацией применяется обратный процесс: декодирование (дешифрование). Использование криптографии является одним из распространенных методов, значительно повышающих безопасность передачи данных в сетях ЭВМ, данных, хранящихся в удаленных устройствах памяти, и при обмене информацией между удаленными объектами.
Для преобразования (шифрования) обычно используется некоторый алгоритм или устройство, реализующие заданный алгоритм, которые могут быть известны широкому кругу лиц. Управление процессом шифрования осуществляется с помощью периодически меняющегося кода ключа, обеспечивающего каждый раз оригинальное представление информации при использовании одного и того же алгоритма или устройства. Знание ключа позволяет просто и надежно расшифровать текст. Однако без знания ключа эта процедура может быть практически невыполнима даже при известном алгоритме шифрования.
Даже простое преобразование информации является весьма эффективным средством, дающим возможность скрыть ее смысл от большинства неквалифицированных нарушителей. Структурная схема шифрования информации представлена на рис. 2.1.
Коды и шифры использовались в течение многих веков задолго до появления ЭВМ. Между кодированием и шифрованием не существует ощутимой разницы. Заметим только, что в последнее время на практике слово «кодирование» употребляют, когда речь идет о цифровом представлении информации при ее обработке на технических средствах, а «шифрование» относится к преобразованию информации в целях защиты от НСД. В настоящее время некоторые методы шифрования хорошо проработаны и являются классическими.
Для построения средств защиты информация от НСД необходимо иметь представление о некоторых традиционных методах шифрования: подстановки, перестановки, гаммирования, аналитических, комбинированных и др.
Специалистами сформирована следующая система требований к алгоритму шифрования:
• зашифрованный текст должен поддаваться чтению только при наличии ключа шифрования;
• число операций, необходимых для определения использованного ключа шифрования по фрагменту шифрованного текста и соответствующего ему открытого текста, должно быть не меньше общего числа возможных ключей;
• знание алгоритма шифрования не должно влиять на надежность защиты;
• незначительные изменения ключа шифрования должны приводить к существенному изменению вида зашифрованного текста;
• незначительные изменения шифруемого текста должны приводить к существенному изменению вида зашифрованного текста даже при использовании одного и того же ключа;
• структурные элементы алгоритма шифрования должны быть неизменными;
• в процессе шифрования должен осуществляться постоянный контроль за шифруемыми данными и ключом шифрования;
• длина шифрованного текста должна быть равной длине исходного открытого текста;
• не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемых в процессе шифрования;
• любой ключ из множества возможных должен обеспечивать надежную защиту информации;
• алгоритм должен допускать как программную, так и аппаратную реализацию.
Современные методы защитных преобразований можно классифицировать на группы: перестановка, замена (подстановки), аддитивные, аналитические и комбинированные методы.
Методы перестановки и подстановки обычно характеризуются короткой длиной ключа, а их надежность защиты определяется сложностью алгоритмов преобразования.
Для аддитивных методов характерны простые алгоритмы преобразования, а их надежность основана на увеличении длины ключа.
Все перечисленные методы относятся к так называемому симметричному шифрованию: один и тот же ключ используется для шифрования и дешифрования.
В последнее время появились методы несимметричного шифрования: один ключ для шифрования (открытый), второй - для дешифрования (закрытый).
Суть методов перестановки состоит в том, что входной поток исходного текста делится на блоки, в каждом из которых выполняется перестановка символов.
Перестановки в классической криптографии обычно получаются в результате записи исходного текста и чтения шифрованного текста по различным путям геометрической фигуры.
Простейшим примером перестановки является запись исходного текста по строкам некоторой матрицы и чтение его по столбцам этой матрицы. Последовательность заполнения строк и чтение столбцов может быть любой и задается ключом. Таким образом, для матрицы размерностью 8x8 (длина блока 64 символа) возможно 1,6 × 109 ключей, что позволяет на современных ЭВМ путем перебора расшифровать заданный текст. Однако для матрицы размерностью 16 × 16 (длина блока 256 символов) имеется 1,4 × 1026 ключей, и перебор их с помощью современных средств весьма затруднителен.
Примером применения метода перестановки может быть также восьми-элементная схема (рис. 2.3), обладающая совокупностью маршрутов, носящих название маршрутов Гамильтона.
Последовательность заполнения схемы каждый раз соответствует нумерации ее элементов. Если длина шифруемого текста не кратна числу элементов, то при последнем заполнении в свободные элементы заносится произвольный символ. Выборка из таблицы для каждого заполнения может выполняться по своему маршруту, при этом маршруты могут использоваться как последовательно, так и в порядке, задаваемом ключом.
Для методов перестановки характерны простота алгоритма, возможность программной реализации и низкий уровень защиты, так как при большой длине исходного текста в шифрованном тексте проявляются статистические закономерности ключа, что и позволяет его быстро раскрыть. Другой недостаток этих методов - легкое раскрытие, если удается направить в систему для шифрования несколько специально подобранных сообщений.
Существуют и другие способы перестановки, которые можно реализовать программным и аппаратным путем. Например, реализованный аппаратным путем блок перестановки для преобразования информации использует электрические цепи, по которым она передается параллельным способом. Преобразование текста заключается в «перепутывании» порядка разрядов в цифровой кодограмме путем изменения электрического монтажа схемы в блоке. Для дешифрации на приемном пункте устанавливается другой блок, восстанавливающий порядок цепей.
Методы шифрования заменой (подстановкой) заключаются в том, что символы исходного текста (блока), записанные в одном алфавите, заменяются символами другого алфавита в соответствии с принятым ключом преобразования .
Одним из простейших методов является прямая замена исходных символов их эквивалентом из вектора замен. Для очередного символа исходного текста отыскивается его местоположение в исходном алфавите. Эквивалент из вектора замены выбирается как отстоящий на полученное смещение от начала алфавита. При дешифровании поиск производится в векторе замен, а эквивалент выбирается из исходного алфавита. Полученный таким способом текст имеет сравнительно низкий уровень защиты, так как исходный и шифрованный тексты имеют одинаковые статистические характеристики.
Более стойкой к раскрытию является схема шифрования, основанная на использовании таблицы Вижинера (рис. 2.4). Таблица представляет собой квадратную матрицу с числом элементов К, где К - количество символов в алфавите. В первой строке матрицы записываются буквы в порядке очередности их в алфавите, во второй - та же последовательность букв, но со сдвигом влево на одну позицию, в третьей - со сдвигом на две позиции и т.д. Освободившиеся места справа заполняются вытесненными влево буквами, записываемыми в порядке очередности.
Для шифрования текста устанавливается ключ, представляющий собой некоторое слово или набор букв. Далее из полной матрицы выбирается подматрица шифрования, включающая, например, первую строку и строку матрицы, начальной буквой которой являются последовательно буквы ключа (рис. 2.5), например МОРЕ.
• под каждой буквой шифруемого текста записываются буквы ключа, повторяющие ключ требуемое число раз;
• шифруемый текст по подматрице заменяется буквами, расположенными на пересечениях линий, соединяющих буквы текста первой строки подматрицы и буквы ключа, находящейся под ней.
Так, под первой буквой шифруемого текста «3» оказалась буква «М» ключа. В первой строке подматрицы находим букву «3» и выбираем из данной колонки подматрицы букву в той строке, которая соответствует букве «М» ключа. Такой буквой оказалась буква «У».
Далее выполняется замена исходной буквы «3» на «У» в выходном тексте. Выходной текст делится на группы, например, по четыре знака.
Для этого алгоритма может быть составлена программа ЭВМ.
Раскрыть текст, полученный по данному алгоритму, только на основе статистических характеристик языка невозможно, так как одни и те же символы открытого текста могут быть заменены различными символами шифрованного текста. С другой стороны, различные буквы открытого текста могут быть заменены одинаковыми знаками шифрованного текста.
Для дешифрования необходимо знать ключ, который может быть введен пользователем со своего терминала или хранится в памяти ЭВМ в зашифрованном виде. Для шифрования ключа можно использовать другую систему шифрования.
Дешифрование текста выполняется в следующей последовательности (рис. 2.7):
Над буквами шифрованного текста сверху последовательно записываются буквы ключа.
В строке подматрицы таблицы Вижинера для каждой буквы ключа отыскивается буква, соответствующая знаку шифрованного текста. Находящаяся над ней буква первой строки и будет знаком расшифрованного текста.
Полученный текст группируется в слова по смыслу.
Один из недостатков шифрования по таблице Вижинера – это низкая стойкость при небольшой длине ключа и сложность формирования длинных ключей. Поскольку в ключе не допускается повторение букв (в противном случае шифрование будет неоднозначным), а сам ключ должен легко запоминаться;
Частным случаем метода замены, обеспечивающим надежное шифрование информации, является использование алгебры матриц (например, правила умножения матрицы на вектор). Это правило, как известно, заключается в следующем:
В соответствии с этим правилом матрицу можно использовать в качестве основы для шифрования, знаками вектора Ьх могут быть символы шифруемого текста, а знаками вектора результата с, - символы зашифрованного текста.
Для шифрования буквенных сообщений необходимо прежде всего заменить знаки алфавита их цифровыми эквивалентами, которыми могут быть порядковые номера буквы в алфавите.
Для дешифрования используются те же правила умножения матрицы на вектор, только в качестве основы берется обратная матрица, а в качестве умножаемого вектора - соответствующее количество чисел шифрованного текста. Цифрами вектора-результата будут цифровые эквиваленты знаков исходного текста.
Нетрудно видеть, что процедуры шифрования и дешифрования строго формализованы, что позволяет сравнительно легко запрограммировать их для автоматической реализации в ЭВМ. Причем важно, что шифрование и дешифрование осуществляются по одной и той же процедуре умножения матрицы на вектор, т.е. для них может использоваться одна и та же программа. Недостатком же является то, что для шифрования и дешифрования каждой буквы требуется выполнить несколько арифметических действий, что увеличивает время обработки информации.
Существуют и другие методы подстановки. Приведенные выше методы подстановки относятся к моноалфавитным подстановкам, которые можно представить как числовые преобразования букв исходного текста, рассматриваемых как числа.В целях маскировки естественной частотной статистики исходного языка применяется многоалфавитная подстановка, которая также бывает нескольких видов.
Аддитивные методы. В качестве ключа в аддитивных методах используется некоторая последовательность букв того же алфавита и такой же длины, что и в исходном тексте. Шифрование выполняется путем сложения символов исходного текста и ключа по модулю, равному числу букв в алфавите (так, если используется двоичный алфавит, то производится сложение по модулю 2).
Разновидностью аддитивного метода является гаммировапие - наложение на исходный текст некоторой последовательности кодов, называемых гаммой. Процесс наложения осуществляется следующим образом:
• символы исходного текста и гамма представляются в двоичном коде и располагаются один под другим;
• каждая пара двоичных знаков заменяется одним двоичным знаком шифрованного текста в соответствии с принятым алгоритмом;
• полученная последовательность двоичных знаков шифрованного текста заменяется символами алфавита в соответствии с выбранным кодом.
Если ключ шифрования выбирается случайным образом, например формируется с помощью датчика псевдослучайных чисел, то раскрыть информацию, не зная ключа, практически невозможно.
Однако на практике длина ключа ограничена возможностями вычислительной техники и аппаратуры обмена данными, а именно выделяемыми объемами памяти, временем обработки сообщения, а также возможностями аппаратуры подготовки и записи кодов ключей.
Эффективным методом шифрования является комбинированный. Комбинация основных методов шифрования - перестановки и подстановки - дает в результате сложное преобразование, называемое производным шифром. Этот шифр обладает большими криптографическими возможностями по сравнению с отдельной перестановкой и подстановкой. Он используется в федеральном стандарте NBS США, называемом также стандартом DES, и отечественном - ГОСТ 28147-89, введенном в действие с июля 1990 г.
Стандарт DES построен на комбинированном использовании перестановки, замены и гаммирования, причем каждый блок шифруемых данных длиной 32 бита последовательно подвергается 15-кратному преобразованию, а в качестве ключа используется последовательность в 56 бит. Такой ключ дает 1016 различных комбинаций гаммы. Для стойкости шифротекста при использовании алгоритма DES текст шифруется 3 раза с разными ключами, т.е. длина ключа возрастает до 168 бит (56 х 3). В настоящее время за рубежом популярен алгоритм PGP и другие алгоритмы.
В России действует стандарт шифрования ГОСТ 28147-89, обязательным для использования государственными организациями, предприятиями и учреждениями при защите информации. Его алгоритм предусматривает работу с 256-битовым ключом и может быть реализован аппаратным и программным путями. Алгоритм производит:
• шифрование данных в режиме простой замены;
• шифрование данных в режиме гаммирования;
• шифрование данных в режиме гаммирования с обратной связью;
• выработку имитовставки.
Имитовставка - это блок данных, который вырабатывается в результате обработки открытых данных по определенному алгоритму с использованием ключа и затем добавляется к зашифрованным данным для обеспечения их защиты от навязывания ложной информации.
Последним достижением криптографии стала система шифрования с открытым ключом.
В криптографии с открытым ключом предусмотрены два ключа, каждый из которых невозможно вычислить из другого. Один ключ (открытый) используется отправителем для шифрования информации, другой (закрытый) - служит для расшифрования получателем полученного шифртекста.
Криптографические системы с открытым ключом используют необратимые или односторонние функции. Другими словами, чрезвычайно трудно рассчитать значение обратной функции.
Исследование необратимых функций проводилось в основном по трем направлениям: 1) дискретное возведение в степень; 2) умножение простых чисел; 3) комбинаторные задачи, в частности задача об укладке ранца.
Диффи и Хеллман исследовали функцию дискретного возведения в степень, в результате чего получили новый алгоритм криптографического закрытия информации, позволяющий применять два ключа: открытый для шифрования, закрытый для расшифрования информации. Система открытого ключа позволила решить проблему рассылки ключей пользователям при одновременном выполнении требований по стойкости защиты.
Р. Л. Ривестом, А. Шамиром и Л. Адельманом предложен метод с ключом общего пользования для более высокой степени защиты, основанный на применении необратимой функции с потайным ходом, которая определяется как семейство обратимых функций [6].
Криптография с открытым ключом прекрасно подходит для замены обычной подписи электронной, так называемой цифровой подписью, применяемой в системах электронных платежей и при передаче сообщений с помощью устройств телесвязи.
Весьма перспективным методом, по мнению специалистов, является квантовое шифрование. Когда для пересылки информации применяются такие элементарные квантовые системы, как поляризованные фотоны, то использование принципа неопределенности Гейзенберга позволяет достичь совершенно нового криптографического феномена, который абсолютно недостижим для обычных средств передачи информации. В традиционной теории информации и криптографии считается не требующим доказательств то, что цифровая связь может всегда пассивно просматриваться или копироваться даже лицом, которое не осведомлено об информации, которая передается. Это может быть полезно, например, тому, кто надеется вычислить (или разузнать) секретный ключ по прошествии какого-то времени, возможно, после того, как будет накоплен достаточный объем шифртекста. В противоположность этому, когда информация закодирована в неортогональных квантовых состояниях, например, в одиночных фотонах с направлениями поляризации 0°, 45°, 90° и 135°, то получается такой канал связи, что почта в нем даже в принципе не может с достоверностью ни читаться, ни копироваться нарушителем, не знающим некую информации о ключе, которая используется при формировании пересылаемого сообщения. Нарушитель не может извлечь никакой частичной информации об этой пересылке, позволяющей отличить ее от случайной, и таким способом, который не поддавался бы контролю и который не смогли бы обнаружить законные пользователи канала.
Стеганография - это метод организации связи, который собственно скрывает само наличие связи. В отличие от криптографии, где неприятель точно может определить, является ли передаваемое сообщение зашифрованным текстом, методы стеганографии позволяют встраивать секретные сообщения в безобидные послания так, чтобы невозможно было заподозрить существование встроенного тайного послания.
К стеганографии относится огромное множество секретных средств связи, таких, как невидимые чернила, микрофотоснимки, условное расположение знаков, тайные каналы, средства связи на плавающих частотах и т.д.
Стеганография занимает свою нишу в обеспечении безопасности: она не заменяет, а дополняет криптографию. Сокрытие сообщения методами стеганографии значительно снижает вероятность обнаружения самого факта передачи сообщения. А если это сообщение к тому же зашифровано, то оно имеет еще один, дополнительный, уровень защиты.
В настоящее время в связи с бурным развитием вычислительной техники и новых каналов передачи информации появились новые стеганографические методы, в основе которых лежат особенности представления информации в компьютерных файлах, вычислительных сетях и т.п. Это дает нам возможность говорить о становлении нового направления - компьютерной стеганографии.
Дата добавления: 2015-10-06; просмотров: 11404;