Наука криптология. Два направления: криптография и криптоанализ.
Основные понятия криптографической защиты информации.
Методы криптографического преобразования данных
Наука криптология. Два направления: криптография и криптоанализ.
Проблема защиты информации путем ее преобразования, исключающего ее прочтение посторонним лицом, волновала человеческий ум с давних времен. История криптографии — ровесница истории человеческого языка. Более того, первоначально письменность сама по себе была криптографической системой, так как в древних обществах ею владели только избранные. Священные книги Древнего Египта, Древней Индии тому примеры.
Криптографическое закрытие является специфическим способом защиты информации, оно имеет многовековую историю развития и применения. Поэтому у специалистов не возникало сомнений в том, что эти средства могут эффективно использоваться также и для защиты информации в АСОД, вследствие чего им уделялось и продолжает уделяться большое внимание. Достаточно сказать, что в США еще в 1978 году утвержден и рекомендован для широкого применения национальный стандарт (DES) криптографического закрытия информации. Подобный стандарт в 1989 году (ГОСТ 28147—89) утвержден и у нас в стране. Интенсивно ведутся исследования с целью разработки высокостойких и гибких методов криптографического закрытия информации.
Проблемой защиты информации путем ее преобразования занимается криптология (kryptos — тайный, logos — наука).
Криптология разделяется на два направления — криптографию и криптоанализ. Цели этих направлений прямо противоположны.
«Криптография» в переводе с греческого языка означает «тайнопись». Классической задачей криптографии является обратимое преобразование некоторого понятного исходного текста (открытого текста) в кажущуюся случайной последовательность некоторых знаков, называемую шифртекстом или криптограммой.
Криптография занимается поиском и исследованием математических методов преобразования информации.
Сфера интересов криптоанализа — исследование возможности расшифровывания информации без знания ключей.
Современная криптография включает в себя четыре крупных раздела:
Симметричные криптосистемы.
Криптосистемы с открытым ключом.
Системы электронной подписи.
Управление ключами.
Основные понятия криптографической защиты информации.
Алфавит — конечное множество используемых для кодирования информации знаков.
Текст — упорядоченный набор из элементов алфавита.
В качестве примеров алфавитов, используемых в современных ИС, можно привести следующие:
алфавит Z33 — 32 буквы русского алфавита и пробел;
алфавит Z256 — символы, входящие в стандартные коды ASCII и КОИ-8;
бинарный алфавит — Z2 = {0,1};
• восьмеричный или шестнадцатеричный алфавит.
Шифрование — преобразовательный процесс: исходный текст, который носит также название открытого текста, заменяется шифрованным текстом.
Дешифрование — обратный шифрованию процесс. На основе ключа шифрованный текст преобразуется в исходный.
Ключ — информация, необходимая для беспрепятственного шифрования и дешифрирования текстов.
Рисунок 1. Обобщенная схема криптосистемы шифрования Формула зашифрования: С = Еk1(М),
где
М (message) - открытая информация, в литературе также называется «исходный текст» или «открытый текст»;
С (cipher text) - полученный в результате зашифрования шифртекст (в литературе также называется словом «криптограмма»);
Е (encryption) - функция зашифрования, выполняющая криптографические преобразования над исходным текстом;
k1 (key)- параметр функции Е, называемый «ключом шифрования».
Расшифрование выглядит следующим образом: M' = Dk2(C),
где
М' - сообщение, полученное в результате расшифрования;
D (decryption) - функция расшифрования; так же, как и функция зашифрования, выполняет криптографические преобразования над шифртекстом;
к2 - ключ расшифрования.
Для того чтобы результат операций зашифрования + расшифрования совпал с исходным сообщением, т.е. для получения
М' =М,
необходимо одновременное выполнение двух условий:
функция расшифрования должна соответствовать функции зашифрования;
ключ расшифрования должен соответствовать ключу зашифрования.
Криптосистема - это совокупность субъектов и объектов информационной системы, обменивающихся зашифрованной информацией с применением одного и того же алгоритма шифрования с определенными параметрами.
Основной характеристикой алгоритма шифрования является криптостойкость, т. е. его устойчивость к раскрытию методами криптоанализа.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа (т. е. криптоанализу). Имеется несколько показателей криптостойкости, среди которых:
количество всех возможных ключей;
среднее время, необходимое для криптоанализа.
Криптосистемы разделяются на симметричные и с открытым ключом.
В симметричных криптосистемах и для шифрования, и для дешифрования используется один и тот же ключ.
В системах с открытым ключом используются два ключа — открытый и закрытый, которые математически связаны друг с другом.
Информация шифруется с помощью открытого ключа, который доступен всем желающим, а расшифровывается с помощью закрытого ключа, известного только получателю сообщения.
Термины «распределение ключей» и «управление ключами» относятся к процессам системы обработки информации, содержанием которых являются составление и распределение ключей между пользователями.
В этом случае данный общий ключ зашифрования/расшифрования к называют ключом шифрования или ключом симметричного шифрования.
Симметричные криптосистемы называют еще одноключевыми криптографическими системами, или криптосистемами с закрытым ключом.
Рисунок 2. Схема симметричной криптосистемы шифрования Обычно ключ шифрования представляет собой файл или массив данных и хранится на персональном ключевом носителе, например дискете или смарт-карте; обязательно принятие мер, обеспечивающих недоступность персонального ключевого носителя кому-либо, кроме его владельца.
Целостность данных обеспечивается присоединением к передаваемым данным специального кода (имитовставки), вырабатываемой по секретному ключу. Имитовставка является разновидностью контрольной суммы, т. е. некоторой эталонной характеристикой сообщения, по которой осуществляется проверка целостности последнего.
Симметричное шифрование идеально подходит для шифрования информации «для себя», например, с целью предотвращения НСД к ней в отсутствие владельца. Это может быть как архивное шифрование выбранных файлов, так и прозрачное (автоматическое) шифрование целых логических или физических дисков. Системы асимметричного шифрования
(ролик – асимметричное шифрование) Асимметричные криптографические системы были разработаны в 1970-х гг. Принципиальное отличие асимметричной криптосистемы от криптосистемы симметричного шифрования состоит в том, что для шифрования информации и ее последующего расшифровывания используются различные ключи:
открытый ключ к1 используется для шифрования информации, вычисляется из секретного ключа к2;
секретный ключ к2 используется для расшифровывания информации, зашифрованной с помощью парного ему открытого ключа к1.
Эти ключи различаются таким образом, что с помощью вычислений нельзя вывести секретный ключ к2 из открытого ключа к1. Поэтому открытый ключ к1 может свободно передаваться по каналам связи.
Асимметричные системы называют также двухключевыми криптографическими системами,или криптосистемами с открытым ключом.
В асимметричном шифровании ключ зашифрования k1 вычисляется из ключа k2 таким образом, что обратное вычисление невозможно. Пример соотношения:
k1 = ak2 mod p,
где а и р - некоторые параметры криптосистемы.
Рисунок 3. Обобщенная схема ассимметричной криптосистемы шифрования Концепция асимметричных криптографических систем с открытым ключом основана на применении однонаправленных функций. Однонаправленной функцией называется функция F(X), обладающая двумя свойствами:
существует алгоритм вычисления значений функции Y=F(X);
не существует эффективного алгоритма обращения (инвертирования) функции F(т. е. не существует решения уравнения F(X) = К относительно X).
Комбинированная криптосистема шифрования Метод комбинированного использования симметричного и асимметричного шифрования заключается в следующем.
Симметричную криптосистему применяют для шифрования исходного открытого текста, а асимметричную криптосистему с открытым ключом применяют только для шифрования секретного ключа симметричной криптосистемы. В результате асимметричная криптосистема с открытым ключом не заменяет, а лишь дополняет симметричную криптосистему с секретным ключом, позволяя повысить в целом защищенность передаваемой информации. Такой подход иногда называют схемой электронного «цифрового конверта».
Пусть пользователь Ахочет использовать комбинированный метод шифрования для защищенной передачи сообщения Мпользователю В.
Тогда последовательность действий пользователей Аи Вбудет следующей.
Действия пользователя А:
Он создает (например, генерирует случайным образом) сеансовый секретный ключ Ks, который будет использован в алгоритме симметричного шифрования для зашифрования конкретного сообщения или цепочки сообщений.
Зашифровывает симметричным алгоритмом сообщение Мна сеансовом секретном ключе Ks.
Передает по открытому каналу связи в адрес пользователя В зашифрованное сообщение Мвместе с зашифрованным сеансовым ключом Ks.
Рисунок 4. Схема шифрования сообщения комбинированным способом Действия пользователя В (при получении электронного «цифрового конверта» — зашифрованного сообщения М и зашифрованного сеансового ключа Ks):
Расшифровывает асимметричным алгоритмом сеансовый ключ Ksс помощью своего секретного ключа кв.
Расшифровывает симметричным алгоритмом принятое сообщение М с помощью полученного сеансового ключа Ks.
Рисунок 5. Схема расшифровывания сообщения комбинированным способом Полученный электронный «цифровой конверт» может раскрыть только законный получатель — пользователь В. Только пользователь В, владеющий личным секретным ключом кв сможет правильно расшифровать секретный сеансовый ключ Ks и затем с помощью этого ключа расшифровать и прочитать полученное сообщение М.
При методе «цифрового конверта» недостатки симметричного и асимметричного криптоалгоритмов компенсируются следующим образом:
проблема распространения ключей симметричного криптоалгоритма устраняется тем, что сеансовый ключ Ks, на котором шифруются собственно сообщения, передается по открытым каналам связи в зашифрованном виде; для зашифровывания ключа Ks используется асимметричный криптоалгоритм;
проблемы медленной скорости асимметричного шифрования в данном случае практически не возникает, поскольку асимметричным криптоалгоритмом шифруется только короткий ключ Ks, а все данные шифруются быстрым симметричным криптоалгоритмом.
В результате получают быстрое шифрование в сочетании с удобным
распределением ключей.
Методы криптографического преобразования данных
(выступление студентов – презентации) Методы криптографического преобразования информации могут быть классифицированы на четыре большие группы:
шифрование—дешифрование;
кодирование;
стеганография;
сжатие — расширение.
Рисунок 6. Классификация криптографических методов защиты информации
Под шифрованиемпонимается такой вид криптографического закрытия, при котором преобразованию подвергается каждый символ защищаемого сообщения.
Все известные способы шифрования можно разбить на пять групп: подстановка (замена), перестановка, аналитическое преобразование, гаммирование и комбинированное шифрование. Каждый из этих способов может иметь несколько разновидностей.
Под кодированиемпонимается такой вид криптографического закрытия, когда некоторые элементы защищаемых данных (это не обязательно отдельные символы) заменяются заранее выбранными кодами (цифровыми, буквенными, буквенно-цифровыми сочетаниями и т. п.).
Этот метод имеет две разновидности: смысловое и символьное кодирование. При смысловом кодировании кодируемые элементы имеют вполне определенный смысл (слова, предложения, группы предложений). При символьном кодировании кодируется каждый символ защищаемого сообщения. Символьное кодирование по существу совпадает с шифрованием заменой. Многоалфавитная подстановка— наиболее простой вид преобразований, заключающийся в замене символов исходного текста на другие (того же алфавита) по более или менее сложному правилу. Для обеспечения высокой криптостойкости требуется использование больших ключей.
Перестановки— несложный метод криптографического преобразования. Используется, как правило, в сочетании с другими методами.
Гаммирование— этот метод заключается в наложении на исходный текст некоторой псевдослучайной последовательности, генерируемой на основе ключа.
Блочные шифрыпредставляют собой последовательность (с возможным повторением и чередованием) основных методов преобразования, применяемую к блоку (части) шифруемого текста. Блочные шифры на практике встречаются чаще, чем «чистые» преобразования того или иного класса в силу их более высокой криптостойкости. Российский и американский стандарты шифрования основаны именно на этом классе шифров.
К отдельным видам криптографического закрытия отнесены методы рассечения-разнесения и сжатия данных. Рассечение-разнесение заключается в том, что массив защищаемых данных делится (рассекается) на такие элементы, каждый из которых в отдельности не позволяет раскрыть содержание защищаемой информации. Выделенные таким образом элементы данных разносятся по разным зонам ЗУ или располагаются на различных носителях.
Сжатие данных представляет собой замену часто встречающихся одинаковых строк данных или последовательностей одинаковых символов некоторыми заранее выбранными символами. Целью сжатия является сокращение объема информации. В то же время сжатая информация не может быть прочитана или использована без обратного преобразования. Учитывая доступность средств сжатия и обратного преобразования, эти методы нельзя рассматривать как надежные средства криптографического преобразования информации. Даже если держать в секрете алгоритмы, то они могут быть сравнительно легко раскрыты статистическими методами обработки. Поэтому сжатые файлы конфиденциальной информации подвергаются последующему шифрованию. Для сокращения времени целесообразно совмещать процесс сжатия и шифрования информации.
В отличие от других методов криптографического преобразования информации методы стеганографии позволяют скрыть не только смысл хранящейся или передаваемой информации, но и сам факт ее хранения или передачи. Практическое использование стеганографии в компьютерных системах только начинается, но проведенные исследования показывают ее перспективность. В основе всех методов стенографии лежит маскирование закрытой информации среди открытых файлов. Обработка мультимедийных файлов в КС открыла практически неограниченные возможности перед стеганографией. Вопросы для повторения:
Криптология – это наука:
Занимающаяся защитой информации путем ее преобразования
Занимающаяся кодированием информации
Занимающаяся сокрытием самого факта информации
Криптология включает в себя такие науки как:
Криптография
Криптоанализ
Стеганография
Криптография занимается:
поиском и исследованием математических методов преобразования информации
поиском и исследованием способов сокрытия самого факта наличия информации
исследованием возможности расшифрования информации без знания ключа
Системы симметричного шифрования используют:
Пару ключей шифрования
Один ключ шифрования
Несколько ключей шифрования
Системы смешанного шифрования используют:
Пару ключей шифрования
Один ключ шифрования
Несколько ключей шифрования
Методы криптографического преобразования информации могут быть классифицированы на следующие группы (выделить ненужное):
шифрование—дешифрование;
кодирование;
архивирование
стеганография;
сжатие — расширение.
Современная криптография включает в себя:
Симметричные криптосистемы
Криптосистемы с открытым ключом
Системы аутентификации пользователя
Системы электронной подписи
Управление ключами
К показателям криптостойкости относят (выбрать все возможные варианты):
количество всех возможных ключей;
среднее время, необходимое для криптоанализа.
Ключи, надежно спрятанные от злоумышленника
В асимметричном шифровании ключи обычно:
Математически связаны друг с другом
Не зависят один от другого
Используются одинаково
При шифровании в отличие от кодирования:
Преобразованию подвергается каждый символ защищаемого сообщения
Некоторые элементы защищаемых данных (необязательно каждый символ) заменяются заранее выбранными кодами (цифровыми, буквенными и т.д.)