- •Учебное пособие
- •Аннотация
- •Список сокращений
- •Содержание
- •Введение
- •Научные и технические предпосылки кризисной ситуации.
- •Бурное развитие программного обеспечения.
- •Понятие «защищенная система».
- •1. Основные понятия и определения предмета защиты информации
- •1.1. Общее содержание проблемы информационной безопасности
- •1.2 Информация и информационные отношения. Субъекты информационных отношений
- •1.3. Ценность информации
- •1.4. Модель решетки ценностей
- •1.5. Mls решетка
- •1.6. Определение требований к защищенности информации
- •1.7. Критерии, условия и принципы отнесения информации к защищаемой. Виды конфиденциальной информации.
- •1.8. Выводы
- •1.9. Вопросы для самоконтроля
- •Угрозы информации, методология их выявления и оценки
- •2.1. Санкционированный и несанкционированный доступ
- •2.2. Угрозы информации, методология их выявления и оценки
- •2.3. Ретроспективный анализ подходов к формированию множества угроз информации
- •2.4. Цели и задачи оценки угроз информации в современных системах ее обработки
- •2.5. Система показателей уязвимости информации
- •2.6. Классификация и содержание угроз информации
- •2.7. Методы и модели оценки уязвимости информации
- •2.8. Выводы
- •2.9. Вопросы для самоконтроля
- •3. Общая классификация защитных мер
- •3.1. Базовые свойства безопасности информации. Каналы реализации угроз
- •3.2. Основные принципы обеспечения информационной безопасности
- •3.3. Меры обеспечения безопасности компьютерных систем
- •3.4. Характеристика способов защиты компьютерной информации с помощью аппаратно-программных мер
- •3.5. Выводы
- •3.6. Вопросы для самоконтроля
- •4. Идентификация и аутентификация субъектов
- •4.1. Классификация подсистем идентификации и аутентификации субъектов
- •4.2. Парольные системы идентификации и аутентификации пользователей
- •4.3. Идентификация и аутентификация с использованием индивидуальных биометрических характеристик пользователя
- •4.4. Выводы
- •4.5. Вопросы для самоконтроля
- •5. Элементы теории чисел
- •5.1. Модулярная арифметика
- •5.2. Простые числа и их свойства
- •5.3. Числовые функции
- •5.4. Выводы
- •5.5. Вопросы для самоконтроля
- •6. Методы и средства криптографической защиты
- •6.1. Принципы криптографической защиты информации
- •6.2. Традиционные симметричные криптосистемы
- •6.2.1. Шифрование методом замены
- •6.2.2. Шифрование методами перестановки
- •6.2.3. Шифрование методом гаммирования
- •6.3. Элементы криптоанализа
- •6.4. Современные симметричные системы шифрования
- •6.4.1. Стандарт шифрования des (сша)
- •6.4.2. Отечественный стандарт симметричного шифрования
- •6.5. Асимметричные криптосистемы
- •6.5.1. Недостатки симметричных криптосистем и принципы асимметричного шифрования
- •6.5.2. Однонаправленные функции
- •6.5.3. Алгоритм шифрования rsa
- •6.6. Выводы
- •6.7. Вопросы для самоконтроля
- •7. Контроль целостности информации. Электронно-цифровая подпись
- •7.1. Проблема обеспечения целостности информации
- •7.2. Функции хэширования и электронно-цифровая подпись
- •7.3. Выводы
- •7.4. Вопросы для самоконтроля
- •8. Протоколы безопасной аутентификации пользователей
- •8.1. Аутентификация на основе сертификатов
- •8.2. Процедура «рукопожатия»
- •8.3. Протокол Диффи-Хеллмана
- •8.4. Выводы
- •8.5. Вопросы для самоконтроля
- •9. Управление носителями конфиденциальной информации и внесением изменений.
- •9.1. Носители информации как объект защиты
- •9.2 Разделение тестовой среды и среды промышленной эксплуатации информационной системы. Процесс управления изменениями.
- •9.3. Выводы
- •9.4. Вопросы для самоконтроля
- •10. Разграничение доступа к информации в компьютерных системах
- •10.1. Модели разграничения доступа к информации
- •10.2. Субъектно-объектная модель компьютерной системы в механизмах и процессах коллективного доступа к информационным ресурсам
- •10.2. Монитор безопасности и основные типы политик безопасности
- •10.3. Гарантирование выполнения политики безопасности
- •10.4. Выводы
- •10.5. Вопросы для самоконтроля
- •11. Политики безопасности
- •11.1. Формальные и неформальные политики безопасности
- •11.2. Формальные методы анализа систем
- •11.3. Характеристика моделей безопасности
- •11.4. Выводы
- •11.5. Вопросы для самоконтроля
- •12. Модели безопасности
- •12.1. Модели разграничения доступа
- •12.2. Модели дискреционного доступа
- •12.2.1. Модель дискреционного доступа адепт-50.
- •12.2.2. Пятимерное пространство Хартсона
- •12.2.3. Модель Харрисона-Руззо-Ульмана
- •12.3. Модели мандатного доступа
- •12.3.1. Модель Белла и Лападула
- •12.4. Специализированные модели
- •12.4.1. Модель mms
- •12.5. Проблемы моделей предоставления прав
- •12.6. Информационные модели
- •12.6.1. Модель невмешательства
- •12.6.2. Модель невыводимости
- •12.7. Вероятностные модели
- •12.7.1. Игровая модель
- •12.7.2.Модель системы безопасности с полным перекрытием
- •12.8 .Модели контроля целостности
- •12.8.1. Модель Биба
- •12.8.2. Модель Кларка-Вилсона
- •12.9. Механизмы защиты от угрозы отказа в обслуживании
- •12.9.1. Основные понятия ово
- •12.9.2. Мандатная модель ово
- •12.9.3. Модель Миллена распределения ресурсов (мрр)
- •12.10. Выводы
- •12.11. Вопросы для самоконтроля
- •13. Обзор и сравнительный анализстандартов информационной безопасности
- •13.1. Основные понятия и определения
- •13.2. Критерии безопасности компьютерных систем министерства обороны сша ("Оранжевая книга")
- •13.2.1. Таксономия требований и критериев "Оранжевой книги"
- •13.2.2. Классы безопасности компьютерных систем
- •13.2.3. Интерпретация и развитие "Оранжевой книги"
- •13.3. Европейские критерии безопасности информационных технологий
- •13.3.1. Основные понятия
- •13.3.2. Функциональные критерии
- •13.3.3. Критерии адекватности
- •13.4. Руководящие документы Гостехкомиссии России
- •13.4.1. Основные положения
- •13.4.2. Концепция защиты свт и ас от нсд к информации
- •13.4.3. Показатели защищенности средств вычислительной техники от нсд
- •13.4.4. Показатели защищенности автоматизированных систем от нсд
- •13.5. Федеральные критерии безопасности информационных технологий
- •13.5.1. Цель разработки
- •13.5.2. Основные положения
- •13.5.3. Профиль защиты
- •13.5.4. Этапы разработки Профиля защиты
- •13.5.5. Функциональные требования к ит–продукту
- •13.5.6. Таксономия функциональных требований
- •13.5.7. Ранжирование функциональных требований
- •13.5.8. Требования к технологии разработки ит–продукта
- •13.5.9. Требования к процессу квалификационного анализа ит-продукта
- •13.6. Единые критерии безопасности информационных технологий
- •13.6.1. Цель разработки
- •13.6.2. Основные положения
- •13.6.3. Профиль защиты
- •13.6.4. Проект защиты
- •13.6.5. Требования безопасности
- •13.6.6. Функциональные требования
- •13.6.7. Требования адекватности
- •13.7. Анализ стандартов информационной безопасности
- •13.8. Выводы
- •13.9. Вопросы для самоконтроля
- •Список литературы
- •420111, Г. Казань, ул. К.Маркса, 10
6.5.2. Однонаправленные функции
Реализация асимметричных криптосистем основана на использовании однонаправленных функций.
Пусть X и Y – некоторые произвольные множества. Функция называетсяоднонаправленной функцией, если для любого элемента можно легко вычислить его образ, однако, зная элемент, достаточно сложно получить его прообраз, хотя такой элементx однозначно существует хотя бы один.
Одним из основных критериев, по которому функцию f можно считать однонаправленной, является отсутствие эффективных алгоритмов обратного преобразования , что не позволяет обратить данную функцию за приемлемое время.
Рассмотрим несколько примеров однонаправленных функций, имеющих большое значение для криптографии.
Целочисленное умножение
Вычисление произведения двух очень больших целых чисел P и Q (N=P*Q) является несложной задачей для ЭВМ. Однако, решение обратной задачи, заключающейся в нахождении делителей P и Q большого числа N (в особенности, когда P и Q – большие простые числа), является практически неразрешимой задачей при больших N. Если N2664 и PQ, то задача факторизации не разрешима за приемлемое время на современных ЭВМ. Поэтому целочисленное умножение является однонаправленной функцией.
Модульная экспонента
Возведение очень большого числа A в очень большую степень x по любому модулю M (), то есть вычислениеявляется несложной задачей для ЭВМ. Однако решение обратной задачи – нахождения степениx по известным у,A,M такой, что (задача дискретного логарифмирования,), практически не разрешима за приемлемое время на современных ЭВМ (эффективного алгоритма вычисления дискретного логарифма пока не найдено). Поэтому модульная экспонента является однонаправленной функцией.
Кроме однонаправленных функций важное значение для криптографии с открытым ключом имеют однонаправленные функции с «потайным входом», эффективное обращение которых возможно, если известен секретный «потайной ход» (секретное число или другая информация, ассоциируемая с функцией).
6.5.3. Алгоритм шифрования rsa
Алгоритм RSA был предложен в 1978 году Р.Райвестом, А. Шамиром, А. Адлеманом и был назван по первым буквам фамилий его авторов. Данный алгоритм стал первым алгоритмом шифрования с открытым ключом. Надежность данного алгоритма основывается на трудности факторизации больших чисел и вычисления дискретных логарифмов [20,25].
В криптосистеме RSA открытый ключ ОК, секретный ключ СК, исходное сообщение М и шифротекст С являются целыми числами от 0 до N-1, где N – модуль.
Пусть пользователь А является получателем сообщения, которое ему должен переслать отправитель B.
Пользователь A должен вначале сгенерировать ключевую пару RSA, это он делает следующим образом.
Алгоритм формирования ключевой пары пользователем А
1. Выбираем случайные большие простые числа P и Q. Для обеспечения максимальной безопасности P и Q выбирают примерно равной длины и хранят в секрете.
2. Вычисляем модуль ,, где- функция Эйлера.
3. Открытый ключ ОКА выбирается случайно таким образом, чтобы выполнялись следующие условия:
1<ОКA<,НОД(ОКА, )=1 |
(6.11) |
4. Секретный ключ СКA находится по сформированному открытому ключу так, что
СКАОКА1 (mod ) или СКА=ОКА-1 (mod (P-1) (Q-1)) |
(6.12.) |
Пользователь A может легко найти СКА, используя расширенный алгоритм Евклида, зная числа P и Q, а значит и .
Любой другой пользователь не может, зная открытый ключ ОКА вычислить СКА, так как ему не известны числа P и Q. Для их нахождения ему потребуется факторизовать известное ему число N, что является вычислительно сложной задачей.
Шифрование и дешифрование сообщений в криптосистеме RSA
Для того, чтобы зашифровать открытое сообщение M, отправитель B должен возвести его в степень открытого ключа пользователя А по модулю N. То есть шифрование выполняется в соответствие с формулой (6.13.).
|
(6.13.) |
Обращение данной функции, то есть определение значения M по известным значениям С, ОКА, N практически не осуществимо при больших N ().
Однако знание секретного ключа СКА позволяет обратить данную функцию, то есть решить задачу дешифровки криптограммы C. Для дешифровки криптограммы С необходимо возвести ее в степень секретного ключа пользователя А по модулю N. Таким образом, дешифрование сообщения выполняется в соответствие с формулой (6.14.).
|
(6.14.) |
Действительно,
В теории чисел известна теорема Эйлера, утверждающая, что если НОД(x,N)=1, то .
Согласно 5.12, СКАОКА1 (mod ), то есть СКАОКА=k+1. Таким образом,
Таким образом, показано, что .
Получатель А, который создает ключевую пару (ОКА,СКА) защищает два параметра: 1) секретный ключ СКА; 2) пару чисел P и Q. Рассекречивание данных чисел приводит к тому, что злоумышленник сможет вычислить , а значит и вычислить секретный ключ СКА согласно (6.12).
Открытыми в криптосистеме RSA являются только значения ОКА и N.
В настоящее время разработчики криптоалгоритмов с открытым ключом на базе RSA предлагают применять в качестве чисел P,Q,N – числа длиной не менее 200-300 десятичных разрядов.
Пример 6.11.
Зашифруем сообщение DAC по алгоритму RSA. Для простоты вычислений будем оперировать с небольшими числами P и Q.
Действия получателя А
1. Выберем P = 5 и Q = 13
2. Модуль
3.
4. В качестве ОКА необходимо выбрать значение, удовлетворяющее условиям ,. ПустьОКА = 5.
5. Необходимо найти СКА, такой что . ЭтоСКА=29. Действительно, .
6. Отправляем пользователю B пару чисел (N=65, ОКА=5)
Действия отправителя B
1. Представим отправляемое сообщение в виде последовательности целых чисел от 0 до 63. Присвоим букве А номер 1, букве B – 2, С – 3, D – 4 и т.д. Тогда открытый текст DAC запишется в виде последовательности чисел 413, то есть M1=4, M2=1, M3=3.
2. Сформируем шифротекст по формуле 6.13.:
,
,
.
3. Пользователь B отправляет A криптограмму C1, C2, C3=49, 1, 48.
Действия пользователя A
1. Раскрываем шифротекст по формуле 6.14.:
,
,
.
Таким образом, восстановлено исходное сообщение M1=4=D, M2=1=A, M3=3=C. Исходное сообщение – DAC.