Работает ли IV как соль - PullRequest
       16

Работает ли IV как соль

21 голосов
/ 23 декабря 2009

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

Что-то не так?

Ответы [ 3 ]

33 голосов
/ 23 декабря 2009

Сама AES напрямую не использует соль (или даже IV).

Ситуация, когда вы можете использовать соль в сочетании с AES, это когда вы используете Шифрование на основе пароля (PBE). В этой схеме пароль, запоминаемый человеком, используется в сочетании с солью для генерации ключа AES. Соль используется для того, чтобы один и тот же пароль не всегда генерировал один и тот же ключ; однако, поскольку получатель должен иметь возможность сгенерировать правильный ключ, соль должна передаваться вместе с зашифрованными данными.

IV требуется, если вы используете AES в определенных режимах блочного шифрования, таких как CBC. В этом случае он используется для обеспечения того, чтобы одни и те же незашифрованные данные под одним и тем же ключом не всегда шифровались в один и тот же зашифрованный текст. Опять же, IV требует, чтобы получатель правильно расшифровал данные, поэтому он должен передаваться вместе с зашифрованными данными.

Таким образом, если вы используете PBE с AES в режиме CBC в качестве базового шифра, вам может потребоваться отправить соль PBE и CBC IV вместе с зашифрованными данными.

10 голосов
/ 23 декабря 2009

Я не совсем понимаю, что вы говорите, но вот обзор.

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

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

Они очень похожи, но вот различия.

Соли обычно добавляются до или после того, что они шифруют (насколько мне известно). Это означает, что шифрование также выполняется на соли.

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

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

2 голосов
/ 23 декабря 2009

Нет. IV препятствует тому, чтобы идентичные в противном случае сообщения появлялись одинаково. Это приведет к утечке информации, в частности к тому, что вы передаете одно и то же сообщение более одного раза.

...