2014-10-08 1 views
0

я понял цель инициализации вектора (IV) в алгоритмах шифрования, как AES или Blowfish (см также Wikipedia)AES/Blowfish: случайным образом IV против случайных данных в начале

Но мне не нравится передавать IV каждый раз и каждый раз использовать один и тот же IV (более легкое кодирование). Чтобы добиться случайности сообщений с одним и тем же общим префиксом, я бы просто добавил всегда созданный случайный блок байтов того же размера, что и IV в начале сообщения при шифровании. При расшифровке я бы просто проигнорировал/пропустил первые байты.

Имеет ли это случайные данные начало сообщения, обеспечивающее такую ​​же безопасность, как использование случайного IV?

+0

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

ответ

1

IV является по существу «блоком 0» для режимов, которые смешивают предыдущий блок с текущим шифрованием. Таким образом, случайный блок, добавленный вручную, эквивалентен. Для получения дополнительной информации (и, вероятно, лучшего форума для таких вопросов) см. https://crypto.stackexchange.com/questions/5421/using-cbc-with-a-fixed-iv-and-a-random-first-plaintext-block.

+0

Спасибо за этот очень быстрый ответ ;-) – Mahe