- •Введение
- •1Информационная безопасность компьютерных систем
- •Основные понятия и определения
- •Основные угрозы безопасности асои
- •Обеспечение безопасности асои
- •Вопросы по теме
- •2Принципы криптографической защиты информации
- •Основные понятия и опеределения
- •Традиционные симметричные криптосистемы
- •Шифры перестановки
- •2.1Шифр перестановки "скитала"
- •2.2Шифрующие таблицы
- •2.3Применение магических квадратов
- •Шифры простой замены
- •2.4Полибианский квадрат
- •2.5Система шифрования Цезаря
- •2.6Аффинная система подстановок Цезаря
- •2.7Система Цезаря с ключевым словом
- •2.8Шифрующие таблицы Трисемуса
- •2.9Система омофонов
- •Шифры сложной замены
- •2.10Шифр Гронсфельда
- •2.11Система шифрования Вижинера
- •2.12Одноразовая система шифрования
- •2.13Шифрование методом Вернама
- •Шифрование методом гаммирования
- •2.14Методы генерации псевдослучайных последовательностей чисел
- •Вопросы по теме
- •3Современные симметричные криптосистемы
- •Американский стандарт шифрования данных des
- •3.2. 0Сновные режимы работы алгоритма des
- •3.1Режим "Электронная кодовая книга"
- •3.2Режим "Сцепление блоков шифра"
- •3.5Области применения алгоритма des
- •Алгоритм шифрования данных idea
- •Отечественный стандарт шифрования данных
- •3.6Режим простой замены
- •3.7Режим гаммирования
- •3.8Режим гаммирования с обратной связью
- •3.9Bыработки имитовставки
- •Вопросы по теме
- •4Асимметричные криптосистемы
- •Концепция криптосистемы с открытым ключом
- •Однонаправленные функции
- •Криптосистема шифрования данных rsa
- •Вопросы по теме
- •5Идентификация и проверка подлинности
- •Основные понятия и концепции
- •Идентификация и механизмы подтверждения подлинности пользователя
- •Взаимная проверка подлинности пользователей
- •Протоколы идентификации с нулевой передачей знаний
- •5.1Упрощенная схема идентификации с нулевой передачей знаний
- •5.2Параллельная схема идентификации с нулевой передачей знаний
- •5.3Схема идентификации Гиллоу - Куискуотера
- •Вопросы по теме
- •6Электронная цифровая подпись
- •Проблема аутентификации данных и электронная цифровая подпись
- •Однонаправленные хэш-функции
- •Алгоритм безопасного хеширования sha
- •Однонаправленные хэш-функции на основе симметричных блочных алгоритмов
- •Отечественный стандарт хэш-функции
- •Алгоритмы электронной цифровой подписи
- •6.1Алгоритм цифровой подписи rsa
- •6.2Алгоритм цифровой подписи Эль Гамаля (egsa)
- •6.3Алгоритм цифровой подписи dsa
- •6.4Отечественный стандарт цифровой подписи
- •Вопросы по теме
- •7Управление криптографическими ключами
- •Генерация ключей
- •Хранение ключей
- •Распределение ключей
- •7.1Распределение ключей с участием центра распределения ключей
- •7.2Прямой обмен ключами между пользователями
- •Протокол skip управления криптоключами.
- •Вопросы по теме
- •8Методы и средства защиты от удаленных атак через сеть Internet
- •Особенности функционирования межсетевых экранов
- •Основные компоненты межсетевых экранов
- •8.1Фильтрующие маршрутизаторы
- •8.2Шлюзы сетевого уровня
- •8.3Шлюзы прикладного уровня
- •Основные схемы сетевой защиты на базе межсетевых экранов
- •8.4Межсетевой экран-фильтрующий маршрутизатор
- •8.5Межсетевой экран на основе двупортового шлюза
- •8.6Межсетевой экран на основе экранированного шлюза
- •8.7Межсетевой экран - экранированная подсеть
- •Применение межсетевых экранов для организации виртуальных корпоративных сетей
- •Программные методы защиты
- •Вопросы по теме
- •9Резервное хранение информации. Raid-массивы
- •Вопросы по теме
- •10Биометрические методы защиты
- •Признаки личности в системах защиты информации
- •10.1Отпечатки пальцев
- •10.2Черты лица
- •10.3Геометрия кисти руки
- •10.4Рисунок радужной оболочки глаза
- •10.5Рисунок сосудов за сетчаткой глаза
- •10.6Расположение вен на руке
- •10.7Динамические характеристики почерка
- •10.8Особенности речи
- •10.9Динамика ударов по клавишам
- •10.10 Другие характеристики
- •Устройства для снятия биометрических характеристик
- •Системы распознавания личности
- •Проверка личности при помощи биометрических характеристик
- •Вопросы по теме
- •11Программы с потенциально опасными последствиями
- •Троянский конь
- •Логическая бомба
- •Программные закладки
- •Атака салями
- •Вопросы по теме
- •12Защита от копирования
- •Привязка к дискете
- •12.1Перестановка в нумерации секторов
- •12.2Введение одинаковых номеров секторов на дорожке
- •12.3Введение межсекторных связей
- •12.4Изменение длины секторов
- •12.5Изменение межсекторных промежутков
- •12.6Использование дополнительной дорожки
- •12.7Введение логических дефектов в заданный сектор
- •12.8Изменение параметров дисковода
- •12.9Технология "ослабленных" битов
- •12.10 Физическая маркировка дискеты
- •Применение физического защитного устройства
- •"Привязка" к компьютеру
- •12.11Физические дефекты винчестера
- •12.12Дата создания bios
- •12.13Версия используемой os
- •12.14Серийный номер диска
- •Конфигурация системы и типы составляющих ее устройств
- •Опрос справочников
- •Введение ограничений на использование программного обеспечения
- •Вопросы по теме
- •13Защита исходных текстов и двоичного кода
- •Противодействие изучению исходных текстов
- •13.1Динамическое ветвление
- •13.2Контекстная зависимость
- •13.3Хуки
- •Противодействие анализу двоичного кода
- •Вопросы по теме
- •14Операционные системы
- •Сравнение nt и unix-систем
- •15.2Создание "вспомогательной" программы, взаимодействующей с имеющейся
- •15.3Декомпилирование программы
- •15.4Копирование программного обеспечения
- •15.5Использование или распространение противозаконных программ и их носителей
- •15.6Деятельность в компьютерной сети
- •Компьютер и/или сеть являются средством достижения целей.
- •Вопросы по теме Лабораторные работы по курсу «Информационная безопасность и защита информации»
- •Лабораторная работа № 1. «Реализация дискреционной модели политики безопасности»
- •Лабораторная работа № 2 . «Количественная оценка стойкости парольной защиты»
- •Лабораторная работа №3. «Создание коммерческой версии приложения»
- •Лабораторная работа №4. «Защита от копирования. Привязка к аппаратному обеспечению. Использование реестра»
- •2. Реестр Windows
- •Литература
Распределение ключей
Распределение ключей - самый ответственный процесс в управлении ключами. К нему предъявляются следующие требования:
оперативность и точность распределения;
скрытность распределяемых ключей.
Распределение ключей между пользователями компьютерной сети реализуется двумя способами:
1) использованием одного или нескольких центров распределения ключей;
2) прямым обменом сеансовыми ключами между пользователями сети.
Недостаток первого подхода состоит в том, что центру распределения ключей известно, кому и какие ключи распределены, и это позволяет читать все сообщения, передаваемые по сети. Возможные злоупотребления существенно влияют на защиту. При втором подходе проблема состоит в том, чтобы надежно удостоверить подлинность субъектов сети.
В обоих случаях должна быть обеспечена подлинность сеанса связи. Это можно осуществить, используя механизм запроса-ответа или механизм отметки времени.
Механизм запроса-ответа заключается в следующем. Пользователь А включает в посылаемое сообщение (запрос) для пользователя В непредсказуемый элемент (например, случайное число). При ответе пользователь В должен выполнить некоторую операцию с этим элементом (например, добавить единицу), что невозможно осуществить заранее, поскольку неизвестно, какое случайное число придет в запросе. После получения результата действий пользователя В (ответ) пользователь А может быть уверен, что сеанс является подлинным.
Механизм отметки времени предполагает фиксацию времени для каждого сообщения. Это позволяет каждому субъекту сети определить, насколько старо пришедшее сообщение, и отвергнуть его, если появится сомнение в его подпинности. При использовании отметок времени необходимо установить допустимый временной интервал задержки.
В обоих случаях для защиты элемента контроля используют шифрование, чтобы быть уверенным, что ответ отправлен не злоумышленником и не изменен штемпель отметки времени.
Задача распределения ключей сводится к построению протокола распределения ключей, обеспечивающего:
взаимное подтверждение подлинности участников сеанса;
подтверждение достоверности сеанса механизмом запроса-ответа или отметки времени;
использование минимального числа сообщений при обмене ключами;
возможность исключения злоупотреблений со стороны центра распределения ключей (вплоть до отказа от него).
В основу решения задачи распределения ключей целесообразно положить принцип отделения процедуры подтверждения подлинности партнеров от процедуры собственно распределения ключей. Цель такого подхода состоит в создании метода, при котором после установления подлинности участники сами формируют сеансовый ключ без участия центра распределения ключей с тем, чтобы распределитель ключей не имел возможности выявить содержание сообщений.
7.1Распределение ключей с участием центра распределения ключей
При распределении ключей между участниками предстоящего информационного обмена должна быть гарантирована подлинность сеанса связи. Для взаимной проверки подлинности партнеров приемлема модель рукопожатия. В этом случае ни один из участников не будет получать никакой секретной информации во время процедуры установления подлинности.
Взаимное установление подлинности гарантирует вызов нужного субъекта с высокой степенью уверенности, что связь установлена с требуемым адресатом и никаких попыток подмены не было. Реальная процедура организации соединения между участниками информационного обмена включает как этап распределения, так и этап подтверждения подлинности партнеров.
При включении в процесс распределения ключей центра распределения ключей (ЦРК) осуществляется его взаимодействие с одним или обоими участниками сеанса с целью распределения секретных или открытых ключей, предназначенных для использования, в последующих сеансах связи.
Следующий этап - подтверждение подлинности участников - содержит обмен удостоверяющими сообщениями, чтобы иметь возможность выявить любую подмену или повтор одного из предыдущих вызовов.
Рассмотрим протоколы для симметричных криптосистем с секретными ключами и для асимметричных криптосистем с открытыми ключами. Вызывающий (исходный объект) обозначается через А, а вызываемый (объект назначения) - через В. Участники сеанса А и В имеют уникальные идентификаторы Ida и Idb, соответственно.
Протокол для симметричных криптосистем с использованием отметок времени. Каждый из участников сеанса А и В имеет мастер-ключ Kt, для объекта i (i=A; В), известный только ему и ЦРК. Эти мастер-ключи генерируются в ЦРК и распределяются каждому объекту при личном контакте. Мастер-ключ используется для шифрования сеансового ключа, когда последний передается по сети. Сеансовый ключ Ks генерируется в ЦРК и используется участниками сеанса А и В для защиты сообщений при передаче по линиям связи. Для предотвращения фальсифицированных повторных вызовов на стадии распределения ключей в этом протоколе применяются отметки времени Т.
Участник А инициирует фазу распределения ключей, посылая в ЦРК по сети идентификаторы Idа и Idb:
(1) A->ЦРК: Idа, ( Idb, Прошу связь с B’).
Идентификатор Idа посыпается в явном виде, поэтому менеджер ЦРК будет знать, какой мастер-ключ необходим для расшифрования зашифрованной части сообщения. Для этого в ЦРК имеются таблицы идентификаторов и соответствующих им мастер-ключей. Любая попытка злоумышленника изменить Idа приведет к получению неправильного ключа для расшифрования и, следовательно, к выявлению нарушителя службой ЦРК.
Если сообщение правильное, менеджер ЦРК разыскивает мастер-ключ Ktb, а также вычисляет сеансовый ключ Ks. Затем участнику А посылается ответное сообщение
(2) ЦРК -> А : (Т, Ks, Idb, (Т, Ks, Ida)).
Это сообщение может расшифровать только А, поскольку оно зашифровано ключом Kta. Участник А проверяет отметку времени Т, чтобы убедиться, что это сообщение не является повтором предыдущей процедуры распределения ключей. Идентификатор Idb убеждает А, что действительно требуемый адресат был указан в сообщении (1). Участник А сохраняет у себя сеансовый ключ Ks и посылает участнику В часть сообщения, зашифрованную мастер-ключом объекта В. а также случайное число r1, зашифрованное сеансовым ключом Ks:
(3) A->B : (t, Ks, Ida), .
В этом случае только участник В может расшифровать сообщение (3). Участник В получает отметку времени Т, сеансовый ключ Ks и идентификатор Ida. Если отметка времени Т верна, то В уверен, что никто, кроме А, не может быть вызывающим объектом. Фактически верная отметка времени, и уникальный идентификатор участника А, зашифрованные ключом Ktb, обеспечивают подтверждение подлинности А по отношению к В. Далее В извлекает из сообщения случайное число r1, выполняя расшифрование сеансовым ключом Ks. Для взаимного подтверждения подлинности участник В посылает А сообщение, зашифрованное ключом Ks и содержащее некоторую функцию от случайного числа f(r1):
(4) В->А : .
Например, функция f может осуществлять отображение
f : r1->r1-1.
Если после расшифрования сообщения (4) участник А получает правильный результат, он знает, что объект на другом конце линии связи действительно В.
Если все шаги успешно выполнены, то этих взаимных подтверждений достаточно, чтобы установить связь, которая будет проходить под сеансовым ключом Ks. Следует отметить, что в этом протоколе необходим обмен с ЦРК для получения сеансового ключа каждый раз, когда А желает установить связь с В. Данный протокол обеспечивает надежное соединение объектов А и В при условии, что ни один из ключей не скомпрометирован и ЦРК защищен.
Протокол для асимметричных криптосистем с использованием сертификатов открытых ключей. В этом протоколе используется идея сертификатов открытых ключей [48].
Сертификатом открытого ключа С называется сообщение ЦРК, удостоверяющее целостность некоторого открытого ключа объекта. Например, сертификат открытого ключа для пользователя А, обозначаемый СА, содержит отметку времени Т, идентификатор IdА и открытый ключ КА, зашифрованные секретным ключом ЦРК Кцрк, т.е.
СА= (Т, IdA, КA).
Отметка времени Т используется для подтверждения актуальности сертификата и тем самым предотвращает повторы прежних сертификатов, которые содержат открытые ключи и для которых соответствующие секретные ключи несостоятельны.
Секретный ключ kцрк известен только менеджеру ЦРК. Открытый ключ Kцрк известен участникам А и В. ЦРК поддерживает таблицу открытых ключей всех объектов сети, которые он обслуживает.
Вызывающий объект А инициирует стадию установления ключа, запрашивая у ЦРК сертификат своего открытого ключа и открытого ключа участника В:
(1) А -> ЦРК : IdA, IdB, 'Вышлите сертификаты ключей А и В. Здесь IdA и IdB - уникальные идентификаторы соответственно участников А и В.
Менеджер ЦРК отвечает сообщением
(2) ЦРК -> А : (Т, IdA, КA), , (Т, IdB,КB).
Участник А, используя открытый ключ ЦРК Кцрк, расшифровывает ответ ЦРК, проверяет оба сертификата. Идентификатор IdB убеждает А, что личность вызываемого участника правильно зафиксирована в ЦРК и Кв - действительно открытый ключ участника В, поскольку оба зашифрованы ключом Кцрк.
Хотя открытые ключи предполагаются известными всем, посредничество ЦРК позволяет подтвердить их целостность. Без такого посредничества злоумышленник может снабдить А своим открытым ключом, который А будет считать ключом участника В. Затем злоумышленник может подменить собой В и установить связь с А, и его никто не сможет выявить.
Следующий шаг протокола включает установление связи А с В:
(3) А-> В : CA, , .
Здесь CA - сертификат открытого ключа пользователя А;
- отметка времени, зашифрованная секретным ключом участника А и являющаяся подписью участника А, поскольку никто другой не может создать такую подпись;
r1 - случайное число, генерируемое А и используемое для обмена с В в ходе процедуры подлинности. Если сертификат СA и подпись А верны, то участник В уверен, что сообщение пришло от А. Часть сообщения может расшифровать только В, поскольку никто другой не знает секретного ключа kв, соответствующего открытому ключу Кв. Участник В расшифровывает значение числа r1 и, чтобы подтвердить свою подлинность, посылает участнику А сообщение
(4) В->А : .
Участник А восстанавливает значение r1, расшифровывая это сообщение с использованием своего секретного ключа kA. Если это ожидаемое значение r1, то А получает подтверждение, что вызываемый участник действительно В.
Протокол, основанный на симметричном шифровании, функционирует быстрее, чем протокол, основанный на криптосистемах с открытыми ключами. Однако способность систем с открытыми ключами генерировать цифровые подписи, обеспечивающие различные функции защиты, компенсирует избыточность требуемых вычислений.