Опубликован: 31.07.2006 | Уровень: специалист | Доступ: свободно
Лекция 12:

Шифрование

Аннотация: Рассмотрены основные концепции шифрования, различные виды шифрования (с закрытым и открытым ключом), вопросы управления ключами. Дано понятие цифровой подписи. Уделено внимание вопросам доверия в информационных системах.
Ключевые слова: шифрование, информация, механизмы, конфиденциальность, целостность, механизм безопасности, злоумышленник, алгоритмы шифрования, программа безопасности, сокрытие информации, ключ, алгоритм, пользователь, открытый текст, криптоанализ, шифр, уязвимость, аналитик, мощность, затраты, стоимость, файл, пароль, вывод, безопасность, алфавит, one-time pad, OTP, список, вероним, перехват данных, NSA, data encryption standard, DES, IBM, NIST, FIPS, бит, контроль четности, перестановка, функция, выходные данные, блочное шифрование, шифртекст, поиск, линейный криптоанализ, сайт, пространство, foundation, EFF, TDES, дешифрование, тройной DES, место, операции, Unix, односторонняя функция, входные данные, конечные, файл паролей, безопасная система, AES, Rijndael, блочный шифр, длина, IDEA, encryption algorithm, privacy, PGP, RC5, MIT, clipper, on-chip, blowfish, Twofish, casting, базовая, асимметричное шифрование, связь, секретный ключ, распространение ключей, безопасный метод, алгоритм Диффи-Хеллмана, mod, остаток, остаток от деления, атака посредника, компьютер, обмен данными, RSA, PQ, алгоритм RSA, digital signature algorithm, DSA, эллиптические кривые, ECC, целое число, патент, цифровая подпись, хеш-функция, контрольная сумма, хэш-функция, полезность, MD5, SHA-1, атака, безопасное распространение, инфраструктура, производительность, определенность алгоритма, псевдослучайная последовательность, генератор, вероятность, надежность, представление, минимум, генерация ключей, множества, сеансовый ключ, сертификация, CA, конфиденциальность трафика, дамп, диск, аннулирование, сертификат открытого ключа, действительный, сервер, иерархия, сеть, модель доверия, сертификаты пользователей, конечный пользователь, иерархическая модель, прибыль, целый, администрирование, Личность, аннулирование сертификатов, объект, хранилище сертификатов, VPN, аутентификация

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

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

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

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

Основные концепции шифрования

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

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

С помощью шифрования обеспечиваются три состояния безопасности информации.

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

Термины, связанные с шифрованием

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

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

    Рис. 12.1. Общий принцип шифрования
  • Алгоритм. Метод, используемый для преобразования открытого текста в шифрованный текст.
  • Ключ. Входные данные, посредством которых с помощью алгоритма происходит преобразование открытого текста в шифрованный или обратно.
  • Шифрование. Процесс преобразования открытого текста в шифр.
  • Дешифрование. Процесс преобразования шифра в открытый текст.

Существуют также четыре термина, которые необходимо знать:

  • Криптография. Наука о сокрытии информации с помощью шифрования.
  • Криптограф. Лицо, занимающееся криптографией.
  • Криптоанализ. Искусство анализа криптографических алгоритмов на предмет наличия уязвимостей.
  • Криптоаналитик. Лицо, использующее криптоанализ для определения и использования уязвимостей в криптографических алгоритмах.

Атаки на систему шифрования

Системы шифрования могут подвергнуться атакам тремя следующими способами:

  • Через слабые места в алгоритме.
  • Посредством атаки "грубой силы" по отношению к ключу.
  • Через уязвимости в окружающей системе.

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

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

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

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

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

Нияз Сабиров
Нияз Сабиров
Стоимость "обучения"
Елена Сапегова
Елена Сапегова
диплом
Марина Дайнеко
Марина Дайнеко
Россия, Moscow, Nope, 2008
Анатолий Федоров
Анатолий Федоров
Россия, Москва, Московский государственный университет им. М. В. Ломоносова, 1989