C # AES Rijndael - обнаружение недопустимых паролей

Я использую Rijndael для шифрования некоторых конфиденциальных данных в моей программе.

Когда пользователь вводит ввод неправильный пароль, чаще всего возникает CryptographicException с сообщением «Заполнение недопустимо и не может быть удалено».

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

Есть идеи, как это обнаружить / предотвратить? Самый простой способ, который я могу придумать, - это поставить «магическое число» в начале сообщения при шифровании и проверить, осталось ли оно там после расшифровки.

Но если есть более простой способ, я бы хотел услышать it!

9
задан Ozzah 27 April 2011 в 13:21
поделиться