- •1. Понятие информационной безопасности
- •2. Важность и сложность проблемы информационной безопасности
- •3. Основные составляющие информационной безопасности
- •4. Категории информационной безопасности
- •5. Требования к политике безопасности в рамках iso
- •6. Общие сведения о стандартах серии iso 27000
- •Разработчики международных стандартов
- •Русские переводы международных стандартов
- •7. Iso 15408 - Общие критерии оценки безопасности информационных технологий
- •8. Iso 18028 - Международные стандарты сетевой безопасности серии
- •Iso/iec 18028-1:2006 Информационные технологии. Методы обеспечения безопасности. Сетевая ит безопасность. Управление сетевой безопасностью.
- •Iso/iec 18028-5:2006 Информационные технологии. Методы обеспечения безопасности. Защита сетевых взаимодействий при помощи Виртуальных Частных Сетей
- •9. Российские стандарты гост
- •10. Модель сетевого взаимодействия
- •11. Модель безопасности информационной системы
- •12. Классификация криптоалгоритмов
- •13. Алгоритмы симметричного шифрования
- •14. Криптоанализ
- •Дифференциальный и линейный криптоанализ
- •15. Используемые критерии при разработке алгоритмов
- •16. Сеть Фейштеля
- •17. Алгоритм des Принципы разработки
- •Проблемы des
- •18. Алгоритм idea
- •Принципы разработки
- •Криптографическая стойкость
- •21. Создание случайных чисел
- •22. Требования к случайным числам
- •Случайность
- •Непредсказуемость
- •Источники случайных чисел
- •Генераторы псевдослучайных чисел
- •Криптографически созданные случайные числа
- •Циклическое шифрование
- •Режим Output Feedback des
- •Генератор псевдослучайных чисел ansi x9.17
- •23. Разработка Advanced Encryption Standard (aes) Обзор процесса разработки aes
- •Обзор финалистов
- •Критерий оценки
- •Запасной алгоритм
- •Общая безопасность
- •25. Основные способы использования алгоритмов с открытым ключом
- •Алгоритм rsa
- •27. Алгоритм обмена ключа Диффи-Хеллмана
- •28. Транспортное кодирование
- •29. Архивация
- •Требования к хэш-функциям
- •31. Цифровая подпись Требования к цифровой подписи
- •Прямая и арбитражная цифровые подписи
- •32. Симметричное шифрование, арбитр видит сообщение:
- •33. Симметричное шифрование, арбитр не видит сообщение:
- •34. Шифрование открытым ключом, арбитр не видит сообщение:
- •35. Стандарт цифровой подписи dss
- •Подход dss
- •36. Отечественный стандарт цифровой подписи гост 3410
- •37. Алгоритмы распределения ключей с использованием третьей доверенной стороны Понятие мастер-ключа
- •38. Протоколы аутентификации
- •Взаимная аутентификация
- •39. Элементы проектирования защиты сетевого периметра.
- •40. Брандмауэр и маршрутизатор.
- •41. Брандмауэр и виртуальная частная сеть.
- •42. Многоуровневые брандмауэры.
- •43. Прокси-брандмауэры.
- •44.Типы прокси.
- •46.Недостатки прокси-брандмауэров.
- •48. Виртуальные локальные сети.
- •49. Границы виртуальных локальных сетей.
- •50. Частные виртуальные локальные сети.
- •51. Виртуальные частные сети.
- •52. Основы построения виртуальной частной сети.
- •53. Основы методологии виртуальных частных сетей.
- •54. Туннелирование.
- •55. Защита хоста.
- •56. Компьютерные вирусы
- •Структура и классификация компьютерных вирусов
- •2.3.3. Механизмы вирусной атаки
- •58. Протокол ррр рар
- •59. Протокол ррр chap
- •60. Протокол ррр еар
- •68. Виртуального удаленного доступа
- •69. Сервис Директории и Служб Имен
- •70. По и информационная безопасность
- •71. Комплексная система безопасности. Классификация информационных объектов
29. Архивация
Архивация (сжатие данных) – есть процесс представления информации в ином виде (перекодирования) с потенциальным уменьшением объема, требуемого для ее хранения. Существует множество классов различных алгоритмов сжатия данных, каждый из которых ориентирован на свою область применения.
2.3.4.1. Общие принципы архивации. Классификация методов
Существуют две большие группы алгоритмов архивации: сжатие без потерь биективно перекодирует информацию по другим законам, то есть возможно абсолютно идентичное ее восстановление; сжатие с потерями необратимо удаляет из информации некоторые сведения, оказывающие наименьшее влияние на смысл сообщения.
Следующей большой темой является архивация данных. Как Вам известно, подавляющее большинство современных форматов записи данных содержат их в виде, удобном для быстрого манипулирования, для удобного прочтения пользователями. При этом данные занимают объем больший, чем это действительно требуется для их хранения. Алгоритмы, которые устраняют избыточность записи данных, называются алгоритмами сжатия данных, или алгоритмами архивации. В настоящее время существует огромное множество программ для сжатия данных, основанных на нескольких основных способах.
Зачем же нужна архивация в криптографии? Дело в том, что в современном криптоанализе, то есть науке о противостоянии криптографии, с очевидностью доказано, что вероятность взлома криптосхемы при наличии корреляции между блоками входной информации значительно выше, чем при отсутствии таковой. А алгоритмы сжатия данных по определению и имеют своей основной задачей устранение избыточности, то есть корреляций между данными во входном тексте.
Все алгоритмы сжатия данных качественно делятся на 1) алгоритмы сжатия без потерь, при использовании которых данные на приемной восстанавливаются без малейших изменений, и 2) алгоритмы сжатия с потерями, которые удаляют из потока данных информацию, незначительно влияющую на суть данных, либо вообще невоспринимаемую человеком (такие алгоритмы сейчас разработаны только для аудио- и видео- изображений). В криптосистемах, естественно, используется только первая группа алгоритмов.
Существует два основных метода архивации без потерь:
алгоритм Хаффмана (англ. Huffman), ориентированный на сжатие последовательностей байт, не связанных между собой,
алгоритм Лемпеля-Зива (англ. Lempel, Ziv), ориентированный на сжатие любых видов текстов, то есть использующий факт неоднократного повторения "слов" – последовательностей байт.
Практически все популярные программы архивации без потерь (ARJ, RAR, ZIP и т.п.) используют объединение этих двух методов – алгоритм LZH.
30. Хэш-функции
Требования к хэш-функциям
Хэш-функцией называется односторонняя функция, предназначенная для получения дайджеста или "отпечатков пальцев" файла, сообщения или некоторого блока данных.
Хэш-код создается функцией Н:
h = H (M)
Где М является сообщением произвольной длины и h является хэш-кодом фиксированной длины.
Рассмотрим требования, которым должна соответствовать хэш-функция для того, чтобы она могла использоваться в качестве аутентификатора сообщения. Рассмотрим очень простой пример хэш-функции. Затем проанализируем несколько подходов к построению хэш-функции.
Хэш-функция Н, которая используется для аутентификации сообщений, должна обладать следующими свойствами:
Хэш-функция Н должна применяться к блоку данных любой длины.
Хэш-функция Н создает выход фиксированной длины.
Н (М) относительно легко (за полиномиальное время) вычисляется для любого значения М.
Для любого данного значения хэш-кода h вычислительно невозможно найти M такое, что Н (M) = h.
Для любого данного х вычислительно невозможно найти y x, что H (y) = H (x).
Вычислительно невозможно найти произвольную пару (х, y) такую, что H (y) = H (x).
Хеширование паролей Для того, чтобы не заставлять человека запоминать ключ – длинную последовательность цифр, были разработаны методы преобразования строки символов любой длины (так называемого пароля) в блок байт заранее заданного размера (ключ). На алгоритмы, используемые в этих методах, накладываются требования, сравнимые с требованиями на сами криптоалгоритмы.
От методов, повышающих криптостойкость системы в целом, перейдем к блоку хеширования паролей – методу, позволяющему пользователям запоминать не 128 байт, то есть 256 шестнадцатиричных цифр ключа, а некоторое осмысленное выражение, слово или последовательность символов, называющуюся паролем. Действительно, при разработке любого криптоалгоритма следует учитывать, что в половине случаев конечным пользователем системы является человек, а не автоматическая система. Это ставит вопрос о том, удобно, и вообще реально ли человеку запомнить 128-битный ключ (32 шестнадцатиричные цифры). На самом деле предел запоминаемости лежит на границе 8-12 подобных символов, а, следовательно, если мы будем заставлять пользователя оперировать именно ключом, тем самым мы практически вынудим его к записи ключа на каком-либо листке бумаги или электронном носителе, например, в текстовом файле. Это, естественно, резко снижает защищенность системы.
Для решения этой проблемы были разработаны методы, преобразующие произносимую, осмысленную строку произвольной длины – пароль, в указанный ключ заранее заданной длины. В подавляющем большинстве случаев для этой операции используются так называемые хеш-функции (от англ. hashing – мелкая нарезка и перемешивание). Хеш-функцией называется такое математическое или алгоритмическое преобразование заданного блока данных, которое обладает следующими свойствами:
хеш-функция имеет бесконечную область определения,
хеш-функция имеет конечную область значений,
она необратима,
изменение входного потока информации на один бит меняет около половины всех бит выходного потока, то есть результата хеш-функции.
Эти свойства позволяют подавать на вход хеш-функции пароли, то есть текстовые строки произвольной длины на любом национальном языке и, ограничив область значений функции диапазоном 0..2N-1, где N – длина ключа в битах, получать на выходе достаточно равномерно распределенные по области значения блоки информации – ключи.
Нетрудно заметить, что требования, подобные 3 и 4 пунктам требований к хеш-функции, выполняют блочные шифры. Это указывает на один из возможных путей реализации стойких хеш-функций – проведение блочных криптопреобразований над материалом строки-пароля. Этот метод и используется в различных вариациях практически во всех современных криптосистемах. Материал строки-пароля многократно последовательно используется в качестве ключа для шифрования некоторого заранее известного блока данных – на выходе получается зашифрованный блок информации, однозначно зависящий только от пароля и при этом имеющий достаточно хорошие статистические характеристики. Такой блок или несколько таких блоков и используются в качестве ключа для дальнейших криптопреобразований.