- •Н.М. Радько а.Н. Мокроусов
- •Введение
- •Защита информации в сети доступа
- •Методы защиты информации в канале связи
- •Режимы шифрования
- •2.1. Терминология
- •2.2. Электронная кодовая книга
- •2.3. Сцепление блоков по шифротексту
- •2.4. Обратная загрузка шифротекста
- •2.5. Обратная загрузка выходных данных
- •2.6. Шифрование со счётчиком
- •2.7. Вектор инициализации
- •2.8. Накопление ошибок в различных режимах шифрования
- •Криптографическая защита телефонных сообщений
- •3.1. Общие принципы криптографического преобразования телефонных сообщений
- •3.2. Криптографическое преобразование аналоговых телефонных сообщений
- •3.3. Криптографическое преобразование цифровых телефонных сообщений
- •Основы безопасности gsm
- •4.1. Потенциальные (виртуальные) механизмы защиты информации
- •4.1.1. Алгоритмы аутентификации
- •4.1.2. Шифрование
- •4.1.3. Управление ключами
- •4.1.4. Средства защиты идентичности пользователя
- •4.1.5. Архитектура и протоколы
- •4.2. Суровая реальность: вскрытие криптозащиты и клонирование телефонов gsm
- •4.3. Абонентское шифрование – реальная гарантированная защита информации
- •4.4. Акустическое зашумление – защита от негласной активации мобильного телефона
- •Защита информации и беспроводные сети
- •5.2. Уязвимость старых методов защиты
- •5.4. Современные требования к защите
- •Аутентификация
- •Шифрование и целостность
- •5.5. Стандарт 802.11i ратифицирован
- •5.7. Выводы и рекомендации
- •Вопросы обеспечения безопасности корпоративных беспроводных сетей стандарта 802.11. Специфика россии.
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
2.7. Вектор инициализации
В таких режимах шифрования, как CBC, CFB и OFB на вход функций и подаётся вектор инициализации (IV). Причём как отправитель, так и получатель в начале сеанса связи должны иметь один и тот же IV. Значение IV вовсе не обязано быть секретным и вполне может быть передано вместе с первым блоком шифротектса. Что действительно важно, так это то, что в режимах CBC и CFB это значение должно быть непредсказуемым, а в режиме OFB – уникальным.
Непредсказуемости в режимах CBC и CFB можно достичь несколькими способами. Например, можно подвергнуть преобразованию той же функцией значение какого-либо счётчика (скажем счётчика сообщений). Или использовать ГПК для генерации псевдослучайной последовательности нужной длины.
В режиме OFB вектор инициализации не обязан быть непредсказуемым, зато он должен быть уникален для всех сеансов связи в которых в OFB используется один и тот же секретный ключ шифрования K. Этого можно достичь опять же используя счётчик сообщений. Если же не следовать этому требованию, то секретность сообщения в режиме OFB может быть легко скомпрометирована. Пример приведён выше при описании самого режима OFB. Одним из следствий этого требования является то, что очередной вектор инициализации для режима OFB нельзя генерировать путём применения функции с тем же ключём K.
2.8. Накопление ошибок в различных режимах шифрования
Прежде всего – что такое ошибка. Ошибкой в бите данных будем называть подмену бита со значением "1" на бит "0" и наоборот. Далее обсудим как такая ошибка может повлиять на результат применения алгоритма шифрования в различных режимах, когда она возникает в шифротексте, векторе инициализации или значении счётчика Tj в режиме CTR /12/.
В любом режиме ошибка в пределах блока (или порции – для CFB) шифротекста ведёт к неправильному расшифрованию этого блока. Так, в режимах CFB, OFB и CTR ошибочным на выходе будет тот же бит, остальные биты останутся невредимыми. В режимах же ECB и CBC повреждённым, в зависимости от силы преобразования используемого блочного шифра, может стать любой бит с вероятностью повреждения .
В режимах ECB, OFB и CTR ошибка в бите отдельного блока шифротекста на повлияет на другие блоки при расшифровании. В режиме CBC такая ошибка приведёт к ошибке в том же бите при расшифровании следующего блока сообщения. Остальных блоков эта ошибка не коснётся. Другое дело режим CFB: здесь ошибка в одном бите порции шифротекста распространится на следующих порций шифротекста (b – длина блока входных данных функции ; s – длина порции шифротекста). К тому же при расшифровании измениться с вероятностью теперь может любой бит этих порций.
В режиме CTR ошибка в бите счётчика Tj приведёт к возможности изменения любого бита соответствующего блока шифротекста с вероятностью /13/.
Ошибка в бите вектора инициализации также повлияет на результаты расшифрования. Так, в режиме OFB ошибка в одном бите вектора инициализации при расшифровании приведёт к полностью неверным результатам. В режиме же CFB эта ошибка при расшифровании заденет как минимум первую порцию сообщения, а как максимум (где b,s – то же, что раньше, а i – номер ошибочного бита слева) порций сообщения. Для обоих этих режимов повреждённым в затронутых блоках (порциях для CFB) может оказаться любой бит с вероятностью . В режиме CBC ошибка в бите вектора инициализации приведёт к неправильному расшифрованию лишь первого блока, да и то ошибочным окажется только один бит – остальные останутся неповреждёнными. Отсюда следует, что режим CBC подвержен нарушению защиты в случае преднамеренного изменения бита в векторе инициализации с целью изменить содержание сообщения. Поэтому в этом режиме необходимо обеспечить целостность вектора инициализации. Режимы OFB и CTR также подвержены нарушению целостности сообщения, но для них это становится возможным уже при преднамеренном изменении бита любого блока шифротекста. Поэтому в этих режимах должна быть обеспечена целостность блоков шифротекста при передаче. То же касается и режима CFB, хотя в этом режиме для любой порции шифротекста (кроме последней) нарушение её целостности может быть обнаружено по возникновению ошибок при расшифровании последущих порций шифротекста.
Таблица 2.1 отражает эффект распространения ошибки во всех пяти режимах шифрования.
Таблица 2.1.
Режим шифрования |
Эффект от ошибки в бите шифротекста |
Эффект от ошибки в i-том бите вектора инициализации IV |
ECB |
ОЛБ при расшифровании блока |
Не используется |
CBC |
ОЛБ при расшифровании блока ООБ при расшифровании блока |
ООБ при расшифровании блока |
CFB |
ООБ при расшифровании блока ОЛБ при расшифровании блоков |
ОЛБ при расшифровании блоков |
OFB |
ООБ при расшифровании блока |
ОЛБ при расшифровании блоков |
CTR |
ООБ при расшифровании блока |
Ошибка в счётчике ведёт к ОЛБ при расшифровании блока |
В таблице 2.1 приняты следующие сокращения:
ОЛБ – ошибка в любом бите, то есть повреждённым при расшифровании с вероятностью может оказаться любой бит блока (или порции).
ООБ – ошибка в одном бите, то есть при расшифровании повреждается один бит, находящийся в той же позиции, что и бит вызвавший ошибку /14/.
Вставка или удаление одного бита в блок (или порцию) шифротекста нарушает синхронизацию за- и расшифрования, что приводит к возможности появления ошибок при расшифровании во всех битах, начиная с ошибочного. Только в режиме CFB с размером порции сообщения обрабатываемой за одну итерацию алгоритма в 1 бит синхронизация восстановиться автоматически через итераций алгоритма. Во всех остальных режимах синхронизацию необходимо будет восстанавливать непосредственно /9/.