org.bouncycastle.openpgp.operator.PGPDataEncryptorBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcpg-jdk14 Show documentation
Show all versions of bcpg-jdk14 Show documentation
The Bouncy Castle Java API for handling the OpenPGP protocol. This jar contains the OpenPGP API for JDK 1.4. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs.
package org.bouncycastle.openpgp.operator;
import java.security.SecureRandom;
import org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags;
import org.bouncycastle.openpgp.PGPException;
/**
* A builder for {@link PGPDataEncryptor} instances, which can be used to encrypt data objects.
*/
public interface PGPDataEncryptorBuilder
{
/**
* The encryption algorithm used by data encryptors created by this builder.
*
* @return one of the {@link SymmetricKeyAlgorithmTags symmetric encryption algorithms}.
*/
int getAlgorithm();
/**
* Builds a data encryptor using the algorithm configured for this builder.
*
* @param keyBytes the bytes of the key to use for the cipher.
* @return a data encryptor with an initialised cipher.
* @throws PGPException if an error occurs initialising the configured encryption.
*/
PGPDataEncryptor build(byte[] keyBytes)
throws PGPException;
/**
* Gets the SecureRandom instance used by this builder.
* If a SecureRandom has not been explicitly configured, a default {@link SecureRandom} is
* constructed and retained by the this builder.
*/
SecureRandom getSecureRandom();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy