Package org.bouncycastle.pkcs.jcajce
Class JcePKCSPBEInputDecryptorProviderBuilder
- java.lang.Object
-
- org.bouncycastle.pkcs.jcajce.JcePKCSPBEInputDecryptorProviderBuilder
-
public class JcePKCSPBEInputDecryptorProviderBuilder extends java.lang.ObjectJCA-based builder for anInputDecryptorProviderthat handles the password-based decryption schemes encountered in PKCS#12 / PKCS#8: the legacypkcs-12PbeIdsfamily (RFC 7292 Appendix C), PBES2 / PBKDF2 and PBES2 / scrypt (RFC 8018, RFC 7914), and the older PBE1 schemes (pbeWithMD5AndDES-CBC,pbeWithSHA1AndDES-CBC).
-
-
Constructor Summary
Constructors Constructor Description JcePKCSPBEInputDecryptorProviderBuilder()Base constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description InputDecryptorProviderbuild(char[] password)Bind the builder to a password and return anInputDecryptorProviderthat can produce decryptors for the password-based algorithm identifiers it is asked for.JcePKCSPBEInputDecryptorProviderBuildersetKeySizeProvider(SecretKeySizeProvider keySizeProvider)Set the lookup provider of AlgorithmIdentifier returning key_size_in_bits used to handle PKCS5 decryption.JcePKCSPBEInputDecryptorProviderBuildersetProvider(java.lang.String providerName)JcePKCSPBEInputDecryptorProviderBuildersetProvider(java.security.Provider provider)JcePKCSPBEInputDecryptorProviderBuildersetTryWrongPKCS12Zero(boolean tryWrong)Enable a workaround for older PKCS#12 files that derive the encryption key without applying the trailing zero byte that RFC 7292 requires.
-
-
-
Method Detail
-
setProvider
public JcePKCSPBEInputDecryptorProviderBuilder setProvider(java.security.Provider provider)
-
setProvider
public JcePKCSPBEInputDecryptorProviderBuilder setProvider(java.lang.String providerName)
-
setTryWrongPKCS12Zero
public JcePKCSPBEInputDecryptorProviderBuilder setTryWrongPKCS12Zero(boolean tryWrong)
Enable a workaround for older PKCS#12 files that derive the encryption key without applying the trailing zero byte that RFC 7292 requires.- Parameters:
tryWrong-trueto enable the workaround.- Returns:
- this builder.
-
setKeySizeProvider
public JcePKCSPBEInputDecryptorProviderBuilder setKeySizeProvider(SecretKeySizeProvider keySizeProvider)
Set the lookup provider of AlgorithmIdentifier returning key_size_in_bits used to handle PKCS5 decryption.- Parameters:
keySizeProvider- a provider of integer secret key sizes.- Returns:
- the current builder.
-
build
public InputDecryptorProvider build(char[] password)
Bind the builder to a password and return anInputDecryptorProviderthat can produce decryptors for the password-based algorithm identifiers it is asked for.- Parameters:
password- the password used to derive the encryption key.- Returns:
- a configured decryptor provider.
-
-