Можете ли вы прикрепить aesIV к данным, зашифрованным алгоритмом криптографии AES? - PullRequest
1 голос
/ 30 марта 2012

Следуя стандартной инструкции по использованию алгоритма AES, я не смог должным образом зашифровать / расшифровать некоторый текст, используя AES в C #.Хотя я обнаружил, что мог бы, если бы я прикрепил данные, называемые aesIV, к зашифрованным данным отдельно.В моем понимании aesIV уже встроен в зашифрованные данные.Поэтому я думаю, что это не создает проблем с безопасностью.Пожалуйста, позвольте мне спросить, могу ли я это сделать или нет.

Заранее спасибо.

1 Ответ

3 голосов
/ 30 марта 2012

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

См. AesManaged и пример (где IV передается отдельно, но в остальном все нормально).

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

Как вы предполагаете, IV может передаваться простым текстом.

...