Устройство генератора потока ключей.
Самосинхронизирующиеся потоковые шифры
В самосинхронизирующихся потоковых шифрах каждый бит потока ключей является функцией фиксированного числа предыдущих битов шифротекста. Военные называют этот шифр автоключом шифротек-ста (ciphertext auto key, CTAK). Основная идея была запатентована в 1946.
Самосинхронизирующийся потоковый шифр показан на 1-й. Внутреннее состояние является функцией предыдущих п битов шифротекста. Криптографически сложной является выходная функция, которая использует внутреннее состояние для генерации бита потока ключей.
Самосинхронизирующийся генератор потока ключей.
Так как внутреннее состояние полностью зависит от предыдущих п шифротекста, дешифрирующий генератор потока ключей автоматически синхронизируется с шифрующим генератором потока ключей, приняв п битов шифротекста.
В интеллектуальных реализациях этого режима каждое сообщение начинается случайным заголовком дл и-ной п битов. Этот заголовок шифруется, передается и затем расшифровывается . Расшифровка будет неправильной, но после этих п битов оба генератора потока ключей будут синхронизированы.
Слабой стороной самосинхронизирующегося потокового шифра является распространение ошибки . Для каждого бита шифротекста, испорченного при передаче, дешифрирующий генератор потока ключей выдает п неправильных битов потока ключей. Следовательно, каждому неправильному биту шифротекста соответствуют п ошибок в открытом тексте, пока испорченный бит не перестанет влиять на внутреннее состояние .
Вопросы безопасности
Самосинхронизирующиеся потоковые шифры также чувствительны к вскрытию повторной передачей. Сначала Мэллори записывает несколько битов шифротекста. Затем, позднее, он вставляет эту запись в текущий трафик. После выдачи некоторой чепухи, пока принимающая сторона синхронизируется с вставленной записью , старый шифротекст будет расшифрован как нормальный. У принимающей стороны нет способа узнать, что п о-лученные данные являются повторно передаваемой записью. Если не используются метки времени, Мэллори может убедить банк снова и снова зачислять деньги на его счет, повторно передавая одно и то же сообщение (конечно, при условии, что ключ не менялся). Другие слабые места этой схемы могут стать заметны при очень частой пересинхронизации.
Синхронные потоковые шифры
В синхронном потоковом шифре поток ключей генерируется независимо от потока сообщения. Военные называют этот шифр ключевым автоключом (Key Auto-Key, КАК). При шифровании генератор потока ключей один за другим выдает биты потока ключей. При дешифрировании другой генератор потока ключей один за другим выдает идентичные биты потока ключей. Это работает, если оба генератора синхронизированы. Если один из них пропускает один из циклов, или если бит шифротекста теряется при передаче , то после ошибки каждый символ шифротекста будет расшифрован неправильно.
Если такое случается, отправитель и получатель должны повторно синхронизировать свои генераторы пот о-ка ключей прежде, чем можно будет продолжить работу. Что еще хуже, они должны выполнить синхронизацию так, чтобы ни одна часть потока ключей не была повторена, поэтому очевидное решение перевести генератор в более раннее состояние не работает.
Положительная сторона синхронных фильтров - это отсутствие распространения ошибок . Если при передаче бит изменит свое значение, что намного вероятнее его потери, то только испорченный бит будет дешифрован неправильно. Все предшествующие и последующие биты не изменятся .
Генератор должен выдавать один и тот же поток ключей и для шифрования, и для дешифрирования, след о-вательно, выход генератора должен быть предопределен. Если он реализуется на конечном автомате (т.е., ко м-пьютере), последовательность со временем повторится. Такие генераторы потока ключей называются периодическими. За исключением одноразовых блокнотов все генераторы потока ключей являются периодическими .
Генератор потока ключей должен обладать длинным периодом, намного более длинным, чем количество б и-тов, выдаваемых между сменой ключей. Если период меньше, чем размер открытого текста, то различные части открытого текста будут зашифрованы одинаковым образом, что сильно ослабляет безопасность системы . Если криптоаналитику известна часть открытого текста, он может раскрыть часть потока ключей и использовать ее для дальнейшего раскрытия открытого текста. Даже если у аналитика есть только шифротекст, он может выполнить XOR над разделами, шифрованными одинаковым потоком ключей, и получить XOR соответствующих участков открытого текста. При этом используемый алгоритм превращается в простой алгоритм XOR с очень длинным ключом.
Конкретная длина периода зависит от приложения. Генератор потока ключей, шифрующий непрерывный канал Т1, будет шифровать 2 бит в день. Период генератора должен быть на несколько порядков больше этого значения, даже если ключ меняется ежедневно. Если период имеет достаточную длину, ключ можно будет м е-нять раз в неделю или даже раз в месяц.
Синхронные потоковые шифры также предохраняют от любых вставок и удалений шифротекста , так как они приводят к потере синхронизации и будут немедленно обнаружены. Однако, они не защищают полностью от битовых сбоев. Как и при блоковых шифрах в режиме CFB, Мэллори может изменить отдельные биты потока. Если ему известен открытый текст, он может изменить эти биты так, чтобы эти биты дешифрировались так, как ему надо. Дальнейшие биты при дешифрировании превратятся в чепуху (пока система не восстановится) , но в определенных приложениях Мэллори может принести заметный ущерб .
Выбор режима шифра
Если вашей основной заботой являются скорость и простота, то ЕСВ является самым простым и самым быстрым способом использовать блочный шифр. Помимо уязвимости к вскрытию повтором, алгоритм в режиме ЕСВ проще всего криптоанализировать. Я не советую использовать ЕСВ для шифрования сообщений.
ЕСВ хорошо использовать для шифрования случайных данных, например, других ключей. Так как данные невелики по размеру и случайны, недостатки ЕСВ не существенны для такого применения.
Для обычного открытого текста используйте СВС, CFB или OFB. Конкретный режим зависит от ваших требований. В приведены безопасность и эффективность различных режимов.
Для шифрования файлов лучше всего подходит СВС. Значительно увеличивается безопасность, и при появлении ошибок в хранимых данных почти никогда не бывает сбоев синхронизации. Если ваше приложение -программное, то СВС почти всегда будет лучшим выбором.
- Информационная безопасность
- Отправитель и получатель
- Сообщения и шифрование
- Проверка подлинности, целостность и неотрицание авторства
- Алгоритмы и ключи
- Симметричные алгоритмы
- Алгоритмы с открытым ключом
- Криптоанализ
- Безопасность алгоритмов
- Стеганография
- Подстановочные и перестановочные шифры
- Подстановочные шифры
- Перестановочные шифры
- Простое xor
- Одноразовые блокноты
- Ipklpsfhgq
- Элементы протоколов
- Смысл протоколов
- Персонажи
- Протоколы с посредником
- Арбитражные протоколы
- Самодостаточные протоколы
- Попытки вскрытия протоколов
- Передача информации с использованием симметричной криптографии
- Однонаправленные функции
- Однонаправленные хэш-функции
- Коды проверки подлинности сообщения
- Передача информации с использованием криптографии с открытыми ключами
- Смешанные криптосистемы
- Головоломки Меркла
- Цифровые подписи
- Подпись документа с помощью симметричных криптосистем и посредника
- Деревья цифровых подписей
- Подпись документа с помощью криптографии с открытыми ключами
- Подпись документа и метки времени
- Подпись документа с помощью криптографии с открытыми ключами и однонаправленных хэш-функций
- Алгоритмы и терминология
- Несколько подписей
- Невозможность отказаться от цифровой подписи
- Использование цифровых подписей
- Цифровые подписи и шифрование
- Возвращение сообщения при приеме
- Обнаружение вскрытия, основанного на возвращении сообщения
- Вскрытия криптографии с открытыми ключами
- Генерация случайных и псевдослучайных последовательностей
- Псевдослучайные последовательности
- Криптографически безопасные псевдослучайные последовательности
- Настоящие случайные последовательности
- Типы алгоритмов и криптографические режимы
- Режим электронной шифровальной книги
- Набивка
- Повтор блока
- Режим сцепления блоков шифра.
- Потоковые шифры
- Устройство генератора потока ключей.
- Идентификация и авторизация
- Аутентификация
- Парольная аутентификация
- Электронные смарт-карты
- Использование других уникальных предметов
- Методы биометрической аутентификации
- Идентификация по отпечаткам пальцев
- Идентификация по Сетчатке и радужной оболочке глаза
- Голосовая идентификация
- Распознавание по форме лица, руки или ладони
- Распознавание по рукописному почерку.
- Клавиатурный почерк
- Задачи аудита
- Применяемые методики
- Результаты аудита
- Классификация угроз Digital Security (Digital Security Classification of Threats)
- Технологические угрозы информационной безопасности
- Организационные угрозы информационной безопасности
- Социальная инженерия
- Компьютерные вирусы
- Файловые вирусы
- «Троянские кони» («трояны»)
- Сетевые черви
- Загрузочные вирусы
- Мобильные («встроенные») вирусы
- Полиморфизм вирусов
- Противодействие вирусам
- Места наиболее вероятного внедрения вирусов