- •Введение
- •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
- •Литература
Генерация ключей
Безопасность любого криптографического алгоритма определяется используемым криптографическим ключом. Добротные криптографические ключи должны иметь достаточную длину и случайные значения битов. В табл. 4.1 приведены длины ключей симметричной и асимметричной криптосистем, обеспечивающие одинаковую стойкость к атаке полного перебора (атаке "грубой силы").
Для получения ключей используются аппаратные и программные средства генерации случайных значений ключей. Как правило, применяют датчики псевдослучайных чисел (ПСЧ). Однако степень случайности генерации чисел должна быть достаточно высокой. Идеальными генераторами являются устройства на основе "натуральных" случайных процессов, например на основе белого радиошума.
В АСОИ со средними требованиями защищенности вполне приемлемы программные генераторы ключей, которые вычисляют ПСЧ как сложную функцию от текущего времени и (или) числа, введенного пользователем.
Один из методов генерации сеансового ключа для симметричных криптосистем описан в стандарте ANSI X9.17. Он предполагает использование криптографического алгоритма DES (хотя можно применить и другие симметричные алгоритмы шифрования).
Обозначения:
Ек (X) - результат шифрования алгоритмом DES значения X;
К- ключ, зарезервированный для генерации секретных ключей;
Vo - секретное 64-битовое начальное число;
Т - временная отметка.
Схема генерации случайного сеансового ключа Ri в соответствии со стандартом ANSI X9.17 показана на рис. 7.1. Случайный ключ Ri генерируют, вычисляя значение
.
Рисунок 7.1. Схема генерации случайного ключа Ri в соответствии
со стандартом ANSI X9.17
Следующее значение Vni вычисляют так:
.
Если необходим 128-битовый случайный ключ, генерируют пару ключей Ri, Ri+1 и объединяют их вместе.
Если ключ не меняется регулярно, это может привести к его раскрытию и утечке информации. Регулярную замену ключа можно осуществить, используя процедуру модификации ключа.
Модификация ключа — это генерирование нового ключа из предыдущего значения ключа с помощью односторонней (однонаправленной) функции. Участники информационного обмена разделяют один и тот же ключ и одновременно вводят его значение в качестве аргумента в одностороннюю функцию, получая один и тот же результат. Затем они берут определенные биты из этих результатов, чтобы создать новое значение ключа.
Процедура модификации ключа работоспособна, но надо помнить, что новый ключ безопасен в той же мере, в какой был безопасен прежний ключ. Если злоумышленник сможет добыть прежний ключ, то он сможет выполнить процедуру модификации ключа.
Генерация ключей для асимметричных криптосистем с открытыми ключами много сложнее, потому что эти ключи должны обладать определенными математическими свойствами (они должны быть очень большими и простыми и т.д.).
Хранение ключей
Под функцией хранения ключей понимают организацию, их безопасного хранения, учета и удаления. Ключ является самым привлекательным для злоумышленника объектом, открывающим ему путь к конфиденциальной информации. Поэтому вопросам безопасного хранения ключей следует уделять особое внимание.
Секретные ключи никогда не должны записываться в явном виде на носителе, который может быть считан или скопирован. Любая информация об используемых ключах должна быть защищена, в частности храниться в зашифрованном виде.
Необходимость в хранении и передаче ключей, зашифрованных с помощью других ключей, приводит к концепции иерархии ключей. В стандарте ISO 8532 (Banking-Key Management) подробно изложен метод главных/сеансовых ключей (master/session keys). Суть метода состоит в том, что вводится иерархия ключей:
главный ключ (ГК);
ключ шифрования ключей (КК);
ключ шифрования данных (КД).
Иерархия ключей может быть:
двухуровневой (КК/КД);
трехуровневой (ГК/КК/КД).
Самым нижним уровнем являются рабочие или сеансовые КД, которые используются для шифрования данных, персональных идентификационных номеров (PIN) и аутентификации сообщений. Когда эти ключи надо зашифровать с целью защиты при передаче или хранении, используют ключи следующего уровня - ключи шифрования ключей. Ключи шифрования ключей никогда не должны использоваться как сеансовые (рабочие) КД, и наоборот.
Такое разделение функций необходимо для обеспечения максимальной безопасности. Фактически стандарт устанавливает, что различные типы рабочих ключей - (например, для шифрования данных, для аутентификации и т.д.) должны всегда шифроваться с помощью различных версий ключей шифрования ключей..
В частности, ключи шифрования ключей, используемые для пересылки ключей между двумя узлами сети, известны также как ключи обмена между узлами сети (cross domain keys). Обычно в канале используются два ключа для обмена между узлами сети, по одному в каждом направлении. Поэтому каждый узел сети будет иметь ключ отправления, для обмена с узлами сети и ключ получения для каждого канала, поддерживаемого другим узлом сети.
На верхнем уровне иерархии ключей располагается главный ключ, мастер-ключ. Этот ключ применяют для шифрования КК, когда требуется сохранить их на диске. Обычно в каждом компьютере используется только один мастер-ключ.
Мастер-ключ распространяется между участниками обмена неэлектронным способом - при личном контакте, чтобы исключить его перехват и/или компрометацию. Раскрытие противником значения мастер-ключа полностью уничтожает защиту компьютера.
Значение мастер-ключа фиксируется на длительное время (до нескольких недель или месяцев). Поэтому генерация и хранение мастер-ключей являются критическими вопросами криптографической защиты. На практике мастер-ключ компьютера создается истинно случайным выбором из всех возможных значений ключей. Мастер-ключ помещают в защищенный по считыванию и записи и от механических воздействий блок криптографической системы таким образом, чтобы раскрыть значение этого ключа было невозможно. Однако все же должен существовать способ проверки, является ли значение ключа правильным.
Проблема аутентификации мастер-ключа может быть решена различными путями. Один из способов аутентификации показан на рис. 7.2.
Рисунок 7.2. Схема аутентификации мастер-ключа хост-компьютера
Администратор, получив новое значение мастер-ключа Кн хост-компьютера, шифрует некоторое сообщение М ключом Кн. Пара (криптограмма ЕKн(М), сообщение М) помещается в память компьютера. Всякий раз, когда требуется аутентификация мастер-ключа хост-компьютера, берется сообщение М из памяти и подается в криптографическую систему. Получаемая криптограмма сравнивается с криптограммой, хранящейся в памяти. Если они совпадают, считается, что данный ключ является правильным.
Рабочие ключи (например, сеансовый) обычно создаются с помощью псевдослучайного генератора и могут храниться в незащищенном месте. Это возможно, поскольку такие ключи генерируются в форме соответствующих криптограмм, т.е. генератор ПСЧ выдает вместо ключа Ks его криптограмму EKн(Ks), получаемую с помощью мастер-ключа хост-компьютера. Расшифровывание такой криптограммы выполняется только перед использованием ключа Ks.
Схема защиты рабочего (сеансового) ключа показана на рис. 7.3. Чтобы зашифровать сообщение М ключом Ks, на соответствующие входы криптографической системы подается криптограмма EKн(Ks) и сообщение М. Криптографическая система сначала восстанавливает ключ Ks, а затем шифрует сообщение М, используя открытую форму сеансового ключа Ks.
Таким образом, безопасность сеансовых ключей зависит от безопасности криптографической системы. Криптографический блок может быть спроектирован как единая СБИС и помещен в физически защищенное место.
Рис. 7.3. Схема защиты сеансового ключа
Очень важным условием безопасности информации является периодическое обновление ключевой информации в АСОИ. При этом должны переназначаться как рабочие ключи, так и мастер-ключи. В особо ответственных АСОИ обновление ключевой информации (сеансовых ключей) желательно делать ежедневно. Вопрос обновления ключевой информации тесно связан с третьим элементом управления ключами - распределением ключей.