Для AES шифрование CBC, какова важность IV?

Какова угроза нарушения безопасности всегда использования, все обнуляет для IV? Если это позволяет зашифрованному тексту быть дешифрованным, как взломщик мог сделать это?

ОБНОВЛЕНИЕ: Таким образом, если бы первый блок незашифрованных данных имел метку времени, которая никогда не повторялась, то IV все еще был бы необходим?

10
задан Kyle 16 April 2010 в 17:58
поделиться

4 ответа

Как только злоумышленник получит одно сообщение с открытым текстом и соответствующий зашифрованный текст (возможно, он перехватил его где-то еще, например, в пункте назначения), он сможет узнать, когда будут отправлены любые другие сообщения с такой же начальной последовательностью. Поскольку она может узнать что-то о содержимом ваших зашифрованных сообщений, это небезопасно.

Это также позволяет злоумышленнику выполнять частотный анализ. Например, представьте, что ваши сообщения в виде открытого текста представляют собой команды для серверной части платформы фондового рынка, поэтому все они начинаются либо с «КОМАНДА = КУПИТЬ» , либо «КОМАНДА = ПРОДАЖА» . Это означает, что зашифрованные сообщения начинаются только с двух различных последовательностей зашифрованного текста. Злоумышленник не может напрямую их расшифровать, но если он сможет позже увидеть, сколько ордеров на ПРОДАЖУ вы разместили, наблюдая за рыночными данными, он сможет вернуться и решить, что есть что, и с этого момента она сможет. Буду точно знать, какие заказы вы размещаете, когда вы их размещаете.

Частотный анализ - это то, как ломаются простые шифры подстановки, и это не случайно - использование фиксированного IV означает, что начальная часть ваших сообщений фактически просто использует подстановку, блок за раз.

10
ответ дан 3 December 2019 в 20:03
поделиться

Если IV всегда равен нулю, все сообщения с общим текстом в начале (например, электронные письма с одинаковыми первыми двумя или тремя блоками шифра для 'From' или 'From: ') будут зашифрованы одинаково. Это дает злоумышленнику рычаг влияния на ваш ключ. Это безоговорочно плохо. Пока вы используете достаточно случайный IV, атакующий теряет этот рычаг. Не рискуйте.

1
ответ дан 3 December 2019 в 20:03
поделиться

Непросто, но он раскрывает информацию о сообщениях, чего пытается избежать шифрование.

Допустим, вы используете тот же ключ и нулевой IV. Кто-то, перехватывающий трафик, может заметить, что сообщения начинаются с одного и того же зашифрованного текста. Это дает им некоторую информацию. Путем рандомизации IV утечка информации устраняется. Более мощные атаки могут быть запущены, зная больше о структуре данных открытого текста. Кроме того, если вы отправляете много сообщений таким образом, злоумышленник может постепенно узнать больше информации об используемом ключе из-за уменьшения дисперсии (отличается только открытый текст, а не открытый текст и IV

{{ 1}}
3
ответ дан 3 December 2019 в 20:03
поделиться

Смысл CBC - рандомизировать входные блоки, потому что данный входной блок всегда шифруется одинаково с заданным ключом (AES детерминирован). Входной блок рандомизируется с помощью операции XOR с предыдущим выходным блоком. Первый блок, не имеющий предыдущего блока, рандомизируется путем XOR с IV.

Таким образом, использование неслучайного IV означает, что вы не рандомизируете первый блок. Если вы никогда не используете один и тот же ключ дважды, т.е. вы используете новый ключ всякий раз, когда вы шифруете новое сообщение, тогда нулевой IV не является проблемой. Проблемы с нерандомизированными входными блоками актуальны только тогда, когда есть два нерандомизированных входных блока, которые зашифрованы одним и тем же ключом. Если вы используете заданный ключ для одного сообщения, то только один первый блок этого сообщения не будет рандомизирован, так что проблем нет. Но это большое «если». В частности, если вы можете сгенерировать новый ключ для каждого сообщения, вы, вероятно, также сможете сгенерировать новый IV для каждого сообщения. Потребуется вполне конкретный сценарий, чтобы оправдать использование нулевого IV с CBC.

5
ответ дан 3 December 2019 в 20:03
поделиться