«PBKDF2» - это функция, определенная в PKCS # 5 , используемая для получения материала ключа из пароля.
PBKDF2 требует псевдослучайной функции, и в этом случае используется код аутентификации сообщения на основе хэша SHA-1 - "HmacSHA1".
Итак, эта линия создает фабрику. Фабрика может создавать объекты SecretKey
, которые можно использовать для ввода экземпляра Cipher
для алгоритма симметричного шифрования или алгоритма Mac
. Или его можно использовать для создания «прозрачной» спецификации существующего SecretKey
.
Одна важная вещь, которую следует отметить в PBKDF2, это то, что он не создает секретных ключей для какого-либо конкретного алгоритма. Это детерминированный способ генерации «материала» ключа из начального числа (пароля) таким образом, что начальное значение невозможно восстановить из сгенерированного ключа. После создания необходимого количества байтов они обычно заключаются в SecretKeySpec
с правильным именем алгоритма.
Другие стандартные имена для заводов секретных ключей можно найти в Java Crypto Architecture Стандартные имена Документация.