Когда я использую C# для реализации AES симметричный шифр шифрования, я заметил:
PasswordDeriveBytes derivedPassword = new PasswordDeriveBytes(password, saltBytesArray, hashAlgorithmName, numPasswordIterations);
Почему я должен использовать алгоритм хеширования для Шифрования AES? Разве они не, отделяются? Или алгоритм хеширования только используется для создания безопасного ключа?
Алгоритм AES не использует алгоритм хеширования, внутренне делает это?
PasswordDeriveBytes не является частью AES. Он реализует алгоритм получения ключей шифрования из пароля. Алгоритм предполагает использование хеш-алгоритма.