/** * Sets the padding scheme to be used when constructing the * {@link javax.crypto.Cipher Cipher} transformation string. A {@code null} value indicates that the JCA Provider * default padding scheme for the specified {@link #getAlgorithmName() algorithm} should be used. * <p/> * This attribute is used <em>only</em> when constructing the transformation string for block (byte array) * operations ({@link #encrypt(byte[], byte[])} and {@link #decrypt(byte[], byte[])}). The * {@link #setStreamingPaddingScheme streamingPaddingScheme} attribute is used when the block cipher is used for * streaming operations. * <p/> * If the {@link PaddingScheme PaddingScheme} enum does represent your desired scheme, you can set the name explicitly * via the {@link #setPaddingSchemeName paddingSchemeName} attribute directly. However, because * {@code PaddingScheme} represents all standard JDK scheme names already, ensure that your underlying JCA Provider * supports the non-standard name first. * * @param paddingScheme the padding scheme to be used when constructing * {@link javax.crypto.Cipher Cipher} transformation string, or {@code null} if the JCA Provider * default padding scheme for the specified {@link #getAlgorithmName() algorithm} should be used. */ public void setPaddingScheme(PaddingScheme paddingScheme) { setPaddingSchemeName(paddingScheme.getTransformationName()); }
/** * Sets the padding scheme to be used when constructing the * {@link javax.crypto.Cipher Cipher} transformation string. A {@code null} value indicates that the JCA Provider * default padding scheme for the specified {@link #getAlgorithmName() algorithm} should be used. * <p/> * This attribute is used <em>only</em> when constructing the transformation string for block (byte array) * operations ({@link #encrypt(byte[], byte[])} and {@link #decrypt(byte[], byte[])}). The * {@link #setStreamingPaddingScheme streamingPaddingScheme} attribute is used when the block cipher is used for * streaming operations. * <p/> * If the {@link PaddingScheme PaddingScheme} enum does represent your desired scheme, you can set the name explicitly * via the {@link #setPaddingSchemeName paddingSchemeName} attribute directly. However, because * {@code PaddingScheme} represents all standard JDK scheme names already, ensure that your underlying JCA Provider * supports the non-standard name first. * * @param paddingScheme the padding scheme to be used when constructing * {@link javax.crypto.Cipher Cipher} transformation string, or {@code null} if the JCA Provider * default padding scheme for the specified {@link #getAlgorithmName() algorithm} should be used. */ public void setPaddingScheme(PaddingScheme paddingScheme) { setPaddingSchemeName(paddingScheme.getTransformationName()); }