Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Студентам ИТ / 2 УПП_ИТ / Основн_литература / ИТ (Защита_инф) / Информационная безонасность, УПП

.pdf
Скачиваний:
28
Добавлен:
14.02.2016
Размер:
786.3 Кб
Скачать

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

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

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

Основные положения и определения криптографии

Очень часто через известную всем сеть Internet передается достаточно важная конфиденциальная информация. Потеря, подделка такой информации или несанкционированный доступ к ней может привести к самым серьезным последствиям. Популярный рекламный слоган «Интернет доступен всем» говорит о многом, и, к сожалению, не только о хорошем. Ясно, что доступность этого ресурса именно всем и влечет за собой определенную опасность для всех. Действительно, открытость и прозрачность устройства сети является одним из необходимых условий ее роста и распространения. Однако глобальная сеть объединяет в настоящее время людей с самыми разными интересами и наклонностями. Пользователями сети являются не только люди с кристально чистыми намерениями, но и те, кто использует информацию в корыстных целях, т.е. лица, которые хотят и, главное, могут это сделать, используя достаточно много существующих точек в сети, где информация может быть перехвачена или сфальсифицирована.

Проблемой защиты информации путем ее преобразования занимается криптология (kryptos — тайный, logos — сообщение). Она имеет два направления: криптографию и криптоанализ. Цели этих направлений прямо противоположны.

Криптография занимается поиском, исследованием и разработкой математически методов преобразования информации, основой которых является шифрование.

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

31

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

конфиденциальность;

аутентификацию;

целостность;

контроль участников взаимодействия.

Сконфиденциальностью и аутентификацией все ясно: не зная ключа, сообщение прочитать весьма затруднительно. То есть, управляя раздачей ключей, вы управляет и доступом к информации.

Для контроля целостности используется построение так называемого дайджеста сообщения или электронной подписи. При построении этой подписи используется специальная функция, схожая с известной функцией CRC (Control Cyclic Code). Результаты работы этой функции шифруются. Получателю остается только выполнить эту функцию для принятого сообщения и сравнить результат с расшифрованным.

Современная криптография изучает и развивает 4 основные направления:

симметричные криптосистемы (с секретным ключом);

несимметричные криптосистемы (с открытым ключом);

системы электронной подписи;

системы управления ключами.

Расширение практического применения криптографии в сетях, а также появление современных криптографических методов привело к необходимости введения понятий, определений и собственного математического аппарата в этой области.

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

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

32

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

Обеспечение аутентичности, целостности и неоспоримости информации

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

аутентификации;

целостности;

неоспоримости.

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

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

Неоспоримость необходима для того, чтобы отправитель сообщения не смог впоследствии отрицать, что он является автором этого сообщения.

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

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

смарт-карт;

средств биометрии;

клавиатуры компьютера;

криптографии с уникальными ключами для каждого пользователя. Целостность информации обеспечивается с помощью криптогра-

33

фических контрольных сумм и механизмов управления доступом и привилегий. В качестве криптографической контрольной суммы для обнаружения преднамеренной или случайной модификации данных используется код аутентификации сообщения — MAC (Message Autentification Code). Принцип обнаружения модификации данных в этом случае состоит в следующем. С помощью криптографического алгоритма и секретного ключа на основании содержания файла вычитается начальное значение MAC, которое хранится в запоминающем устройстве. Если необходимо проверить целостность файла, производится повторный расчет MAC с использованием того же секретного ключа. В случае совпадения начального и повторного значений MAC принимают решение об отсутствии модификации файла.

Кроме того, для обнаружения несанкционированных изменений в передаваемых сообщениях можно применить:

электронно-цифровую подпись (ЭЦП), основанную на криптографии с открытым и секретными ключами;

программы обнаружения вирусов;

назначение соответствующих прав пользователям для управления доступом;

точное выполнение принятого механизма привилегий.

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

Использование шифров и ключей

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

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

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

34

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

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

Практически единственная возможность выделить шифры в классе всех защитных кодов — дать полное описание конкретного класса алгоритмов преобразования (кодирования) информации. Это и было сделано правительственными службами США при описании алгоритма шифрования DES, в СССР — при описании алгоритма шифрования ГОСТ 2814789, в Японии — при описании алгоритма шифрования FEAL и т.д.

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

Так, браузеры Microsoft Internet Explorer и Netscape Communicator

содержат встроенные средства шифрования для электронной торговли. Без каких бы то ни было указаний со стороны пользователя номера кредитных карточек передаются с компьютера пользователя на Webсервер зашифрованными по симметричному протоколу SSL (Secure Sockets Layer). По умолчанию используются 40-битные ключи, но для обоих браузеров доступна также версия с 128-битными ключами.

Можно еще надежнее защитить данные. Популярные почтовые программы, в том числе Microsoft Outlook и Lotus Notes, в настоящее время позволяют шифровать письма. Многие «почтальоны» поддерживают протокол несимметричного шифрования S/MIME (Secure MIME – Защищенный MIME), хотя лишь немногие пользователи его применяют. Для работы с протоколом S/MIME требуется цифровой идентификатор – «сертификат», который нужно покупать у компаний, примерно за 15 долларов в год.

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

Главным компонентом любой системы защиты информации является ее ключ. С одной стороны, под ключом к информации следует

35

понимать технологию шифрования/дешифрования, содержащую алгоритм и шифр, с другой — это внешний электронный идентификатор, подключаемый пользователем к стандартному компьютеру в тот момент, когда необходимо получить доступ к засекреченной информации. Какой электронный идентификатор лучше? Вероятно, тот, который не требует модернизации стандартного компьютера. Удачным примером подобного устройства служит ключ, поставляемый в комплекте SecretDisk для шины USB. Некоторые системы не предполагают использование электронного идентификатора. В этом случае при формировании личного ключа задействуют только пароль. Эмуляция такого пароля при попытке взлома может быть более простой задачей, чем подбор шифра. В любом случае предпочтительнее иметь комбинацию личного электронного идентификатора и пароля.

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

Характеристика распространенных алгоритмов шифрования

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

конфиденциальность информации (доступность ее только для того, кому она предназначена);

целостность информации (ее достоверность и точность, а также защищенность от преднамеренных и непреднамеренных искажений);

готовность информации (использование в любой момент, когда в ней возникает необходимость).

Успешное решение перечисленных задач возможно как за счет использования организационно-технических мероприятий, так и с по-

36

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

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

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

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

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

зашифрованное сообщение должно поддаваться чтению только при наличии ключа;

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

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

знание алгоритма шифрования не должно влиять на надежность защиты;

незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при использо-

37

вании одного и того же ключа;

структурные элементы алгоритма шифрования должны быть неизменными;

дополнительные биты, вводимые в сообщение в процессе шифрования, должны быть полностью и надежно скрыты в шифрованном тексте;

длина шифрованного текста должна быть равной длине исходного текста;

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

любой ключ из множества возможных должен обеспечивать надежную защиту информации;

алгоритм должен допускать как программную, так и аппаратную ре-

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

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

Различается шифрование двух типов:

симметричное (с секретным ключом);

несимметричное (с открытым ключом).

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

КЛЮЧ

Канал

связи Сообщение Шифрование Расшифрование Сообщение

Шифрованное

сообщение

Рис. 3.1. Симметричное шифрование

38

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

Когда надежность криптографического алгоритма обеспечивается за счет сохранения в тайне сути самого алгоритма, такой алгоритм шифрования называется ограниченным. Ограниченные алгоритмы представляют значительный интерес с точки зрения истории криптографии, однако совершенно непригодны при современных требованиях, предъявляемых к шифрованию. Ведь в этом случае каждая группа пользователей, желающих обмениваться секретными сообщениями, должна обзавестись своим оригинальным алгоритмом шифрования. Использование готового оборудования и стандартных программ исключено, поскольку приведет к тому, что любой сможет приобрести это оборудование и эти программы и ознакомиться с заложенным в них алгоритмом шифрования. Тогда придется разрабатывать собственный криптографический алгоритм, причем делать это надо будет каждый раз, когда кто-то из пользователей группы захочет ее покинуть или когда детали алгоритма станут случайно известны посторонним.

Открытый

 

Закрытый

ключ

 

ключ

 

 

 

Канал

связи Сообщение Шифрование Расшифрование Сообщение

Шифрованное

сообщение

Рис. 3.2. Несимметричное шифрование

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

39

ключи для шифрования и расшифрования. Это означает, что ключ шифрования отличается от ключа расшифрования.

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

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

Симметричные алгоритмы шифрования подразделяются на:

потоковые (поточные);

блочные.

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

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

40