Глава 4. Блочные шифры
Вам придется вводить дополнительные операции сложения данных с подклю-
чами, чтобы помешать осуществлению атак на основе коллизий. Это и есть
тот вид сложности, который ведет к появлению “слабых мест”. Поэтому ре-
комендуем использовать именно 256-битовые ключи.
Обратите внимание, что мы рекомендуем использовать 256-битовые клю-
чи в системах с уровнем безопасности 128 бит. Другими словами, эти системы
спроектированы так, чтобы выдержать атаку, состоящую из
2
128
операций.
Просто запомните, что для выбора размера параметров оставшейся части
системы нужно использовать значение уровня безопасности (128 бит), а не
размера ключа (256 бит).
Нельзя не отметить еще одно затруднение. Мы используем 256-битовый
ключ для разработки систем со 128-битовым уровнем безопасности. Уже
упоминавшиеся нами XSL-атаки применяются к алгоритмам AES и Serpent
с ключами большего размера. Как утверждается, эти атаки более эффек-
тивны, чем поиск путем полного перебора
ключей большего размера
. Данное
утверждение касается атаки на Serpent, которая требует выполнения более
чем
2
128
шагов. Даже если XSL-атака, как это и было заявлено, сработает
против 256-битового шифра Serpent, она не будет атакой на 256-битовый Ser-
pent, если установить уровень безопасности Serpent (как и всей остальной
системы) равным 128 бит. В конце концов, если уровень безопасности равен
128 бит, тогда атака на шифр должна быть более эффективной, чем поиск
путем полного перебора
2
128
элементов, а текущие XSL-атаки на Serpent тре-
буют выполнения гораздо большего количества шагов. Это же справедливо
и для XSL-атак на AES.
Глава 5
Режимы работы блочных
шифров
Блочные шифры применяются только к блокам текста фиксированного
размера. Чтобы зашифровать какой-нибудь текст, размер которого не сов-
падает с размером блока, необходимо воспользоваться одним из
режимов
работы блочных шифров (block cipher modes)
. Это еще одно название для
функции шифрования, построенной на основе блочного шифра.
Прежде чем углубиться в изучение материала этой главы, обратите вни-
мание вот на что. Режимы работы блочных шифров предназначены для того,
чтобы не дать злоумышленнику читать поток сообщений. Они не обеспечи-
вают никакой аутентификации, а потому злоумышленник все еще может из-
менять сообщение так, как ему вздумается. Как ни странно, но это действи-
тельно так. Функция дешифрования, соответствующая выбранному режиму
работы, лишь расшифровывает данные. Ее результатом может оказаться бес-
смысленный набор символов, тем не менее она послушно расшифровывает
(измененный) шифрованный текст в некоторый (измененный и, возможно,
бессмысленный) открытый текст. Не думайте, что бессмысленные сообще-
ния не могут причинить вреда. Они способны повлиять на остальные части
системы, что порой приводит к печальным последствиям.
Практически во всех ситуациях измененные сообщения наносят гораз-
до больший ущерб, чем чтение злоумышленником открытого текста. Поэто-
му шифрование всегда следует сочетать с аутентификацией. Все режимы,
рассмотренные в этой главе, нужно применять в совокупности с отдельной
функцией аутентификации, о чем идет речь в главе 7, “Коды аутентичности
сообщений”.
87
|