- •Информационная безопасность
- •Отправитель и получатель
- •Сообщения и шифрование
- •Проверка подлинности, целостность и неотрицание авторства
- •Алгоритмы и ключи
- •Симметричные алгоритмы
- •Алгоритмы с открытым ключом
- •Криптоанализ
- •Безопасность алгоритмов
- •Стеганография
- •Подстановочные и перестановочные шифры
- •Подстановочные шифры
- •Перестановочные шифры
- •Простое xor
- •Одноразовые блокноты
- •Ipklpsfhgq
- •Элементы протоколов
- •Смысл протоколов
- •Персонажи
- •Протоколы с посредником
- •Арбитражные протоколы
- •Самодостаточные протоколы
- •Попытки вскрытия протоколов
- •Передача информации с использованием симметричной криптографии
- •Однонаправленные функции
- •Однонаправленные хэш-функции
- •Коды проверки подлинности сообщения
- •Передача информации с использованием криптографии с открытыми ключами
- •Смешанные криптосистемы
- •Головоломки Меркла
- •Цифровые подписи
- •Подпись документа с помощью симметричных криптосистем и посредника
- •Деревья цифровых подписей
- •Подпись документа с помощью криптографии с открытыми ключами
- •Подпись документа и метки времени
- •Подпись документа с помощью криптографии с открытыми ключами и однонаправленных хэш-функций
- •Алгоритмы и терминология
- •Несколько подписей
- •Невозможность отказаться от цифровой подписи
- •Использование цифровых подписей
- •Цифровые подписи и шифрование
- •Возвращение сообщения при приеме
- •Обнаружение вскрытия, основанного на возвращении сообщения
- •Вскрытия криптографии с открытыми ключами
- •Генерация случайных и псевдослучайных последовательностей
- •Псевдослучайные последовательности
- •Криптографически безопасные псевдослучайные последовательности
- •Настоящие случайные последовательности
- •Типы алгоритмов и криптографические режимы
- •Режим электронной шифровальной книги
- •Набивка
- •Повтор блока
- •Режим сцепления блоков шифра.
- •Потоковые шифры
- •Устройство генератора потока ключей.
- •Идентификация и авторизация
- •Аутентификация
- •Парольная аутентификация
- •Электронные смарт-карты
- •Использование других уникальных предметов
- •Методы биометрической аутентификации
- •Идентификация по отпечаткам пальцев
- •Идентификация по Сетчатке и радужной оболочке глаза
- •Голосовая идентификация
- •Распознавание по форме лица, руки или ладони
- •Распознавание по рукописному почерку.
- •Клавиатурный почерк
- •Задачи аудита
- •Применяемые методики
- •Результаты аудита
- •Классификация угроз Digital Security (Digital Security Classification of Threats)
- •Технологические угрозы информационной безопасности
- •Организационные угрозы информационной безопасности
- •Социальная инженерия
- •Компьютерные вирусы
- •Файловые вирусы
- •«Троянские кони» («трояны»)
- •Сетевые черви
- •Загрузочные вирусы
- •Мобильные («встроенные») вирусы
- •Полиморфизм вирусов
- •Противодействие вирусам
- •Места наиболее вероятного внедрения вирусов
Настоящие случайные последовательности
Теперь мы вторгаемся в область, принадлежащую философам. Существует ли такая вещь как случайность? Что такое случайная последовательность? Как узнать, что последовательность случайна? Является ли "101110100" более случайной чем "101010101"? Квантовая механика убеждает нас в том, что в реальном мире существует настоящая случайность. Но как сохранить эту случайность в предопределенном мире компьютерных микросхем и конечных автоматов?
В сторону философию, с нашей точки зрения генератор последовательности действительно случаен, если он обладает третьим свойством:
Создаваемая им последовательность не может быть уверенно воспроизведена. Если вы запускаете генератор случайных чисел дважды с одним и тем же входом (по крайней мере, насколько это в человеческих силах), то вы получите две совершенно независимые случайные последовательности.
Выход генератора, удовлетворяющего всем трем приведенным требованиям, будет достаточно хорош для одноразового блокнота, генерации ключа и других криптографических применений, требующих генерации действительно случайных последовательностей. Трудность в том, чтобы понять, действительно ли последовательность случайна? Если я повторно зашифрую строку, используя DES и заданный ключ, я получу хороший, выглядящий случайным образом результат, вы не сможете сказать, что он не случаен, пока вы не наймете взломщика DES.
Типы алгоритмов и криптографические режимы
Существует два основных типа симметричных алгоритмов: блочные шифры и потоковые шифры. Блочные шифры работают с блоками открытого текста и шифротекста – обычно длиной 64 бита, но иногда длиннее.Потоковые шифры работают с битовыми или байтовыми потоками открытого текста и шифротекста (иногда даже с потоками 32-битных слов). Блочный шифр, использующий один и тот же ключ, при шифровании всегда превращает один и тот же блок открытого текста в один и тот же блок шифротекста. Потоковый шифр при каждом шифровании превращает один и тот же бит или байт открытого текста в различные биты или байты шифротекста.
Криптографический режим обычно объединяет базовый шифр, какую-то обратную связь и ряд простых операций. Операции просты, потому что безопасность является функцией используемого шифра, а не режима. Более того, режим шифра не должен компрометировать безопасность используемого алгоритма.
Существуют и другие соображения безопасности: должна быть скрыта структура открытого текста, должен быть рандомизирован ввод шифра, должно быть затруднено манипулирование открытым текстом посредством ввода ошибок в шифротекст, должно быть возможно шифрование нескольких сообщений одним ключом.
Другим важным соображением является эффективность. По эффективности режим не может быть сильно хуже используемого алгоритма. В некоторых обстоятельствах важно, чтобы размер шифротекста совпадал с размером открытого текста.
Третьим соображением является устойчивость к сбоям. Для ряда приложений требуется распараллеливать шифрование или дешифрирование, а другим нужна возможность выполнить как можно большую предобработку. В третьих важно, чтобы процесс дешифрирования умел исправлять сбои битов в потоке шифротекста, а также был устойчив к потере и добавлению битов. Как будет показано, различные режимы обладают различными подмножествами этих характеристик.