RNGCryptoServiceProvider и Rfc2898DeriveBytes - PullRequest
3 голосов
/ 28 мая 2011

Имеет ли смысл запускать ключ шифрования (2048 бит), сгенерированный с RNGCryptoServiceProvider по Rfc2898DeriveBytes.GetBytes(), или он Rfc2898DeriveBytes более приспособлен для генерации ключей шифрования из более коротких ключей, таких как парольные фразы?

Ответы [ 2 ]

4 голосов
/ 28 мая 2011

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

3 голосов
/ 28 мая 2011

Если у вас уже есть что-то подходящее для ключа, которое, по-видимому, у вас есть, зачем вам использовать его для генерации другого ключа?Лично я не вижу никакой пользы от использования полученных байтов, поскольку у вас уже есть криптографически безопасное случайное число.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...