PGPPBEEncryptedData
Date: 2016-06-23

org.bouncycastle.openpgp

## Class PGPPBEEncryptedData

- java.lang.Object
- - org.bouncycastle.openpgp.PGPEncryptedData
  - - org.bouncycastle.openpgp.PGPPBEEncryptedData

- All Implemented Interfaces:
    SymmetricKeyAlgorithmTags

      public class PGPPBEEncryptedData
      extends PGPEncryptedData

  A password based encryption object.

  PBE encrypted data objects can be `decrypted` using a `PBEDataDecryptorFactory`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.bouncycastle.openpgp.PGPEncryptedData

      `PGPEncryptedData.TruncatedStream`

  - ### Field Summary

    - ### Fields inherited from interface org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags

      `AES_128, AES_192, AES_256, BLOWFISH, CAMELLIA_128, CAMELLIA_192, CAMELLIA_256, CAST5, DES, IDEA, NULL, SAFER, TRIPLE_DES, TWOFISH`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.io.InputStream` | `getDataStream(PBEDataDecryptorFactory dataDecryptorFactory)` Open an input stream which will provide the decrypted data protected by this object.
    `int` | `getSymmetricAlgorithm(PBEDataDecryptorFactory dataDecryptorFactory)` Return the symmetric key algorithm required to decrypt the data protected by this object.

    - ### Methods inherited from class org.bouncycastle.openpgp.PGPEncryptedData

      `getInputStream, isIntegrityProtected, verify`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getSymmetricAlgorithm

          public int getSymmetricAlgorithm(PBEDataDecryptorFactory dataDecryptorFactory)
                                    throws PGPException

      Return the symmetric key algorithm required to decrypt the data protected by this object.
      Parameters:
        `dataDecryptorFactory` - decryptor factory to use to recover the session data.
      Returns:
        the identifier of the `encryption algorithm` used to encrypt this object.
      Throws:
        `PGPException` - if the session data cannot be recovered.

    - #### getDataStream

          public java.io.InputStream getDataStream(PBEDataDecryptorFactory dataDecryptorFactory)
                                            throws PGPException

      Open an input stream which will provide the decrypted data protected by this object.
      Parameters:
        `dataDecryptorFactory` - decryptor factory to use to recover the session data and provide the stream.
      Returns:
        the resulting decrypted input stream, probably containing a sequence of PGP data objects.
      Throws:
        `PGPException` - if the session data cannot be recovered or the stream cannot be created.