PublicKeyKeyEncryptionMethodGenerator
Date: 2016-06-23

org.bouncycastle.openpgp.operator

## Class PublicKeyKeyEncryptionMethodGenerator

- java.lang.Object
- - org.bouncycastle.openpgp.operator.PGPKeyEncryptionMethodGenerator
  - - org.bouncycastle.openpgp.operator.PublicKeyKeyEncryptionMethodGenerator

- Direct Known Subclasses:
    BcPublicKeyKeyEncryptionMethodGenerator, JcePublicKeyKeyEncryptionMethodGenerator

      public abstract class PublicKeyKeyEncryptionMethodGenerator
      extends PGPKeyEncryptionMethodGenerator

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `PublicKeyKeyEncryptionMethodGenerator(PGPPublicKey pubKey)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected abstract byte[]` | `encryptSessionInfo(PGPPublicKey pubKey, byte[] sessionInfo)`
    `ContainedPacket` | `generate(int encAlgorithm, byte[] sessionInfo)` Generates a packet encoding the details of this encryption method.
    `byte[][]` | `processSessionInfo(byte[] encryptedSessionInfo)`

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

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

- - ### Constructor Detail

    - #### PublicKeyKeyEncryptionMethodGenerator

          protected PublicKeyKeyEncryptionMethodGenerator(PGPPublicKey pubKey)

  - ### Method Detail

    - #### processSessionInfo

          public byte[][] processSessionInfo(byte[] encryptedSessionInfo)
                                      throws PGPException

      Throws:
        `PGPException`

    - #### generate

          public ContainedPacket generate(int encAlgorithm,
                                 byte[] sessionInfo)
                                   throws PGPException

      Description copied from class: `PGPKeyEncryptionMethodGenerator`
      Generates a packet encoding the details of this encryption method.
      Specified by:
        `generate` in class `PGPKeyEncryptionMethodGenerator`
      Parameters:
        `encAlgorithm` - the `encryption algorithm` being used
        `sessionInfo` - session data generated by the encrypted data generator.
      Returns:
        a packet encoding the provided information and the configuration of this instance.
      Throws:
        `PGPException` - if an error occurs constructing the packet.

    - #### encryptSessionInfo

          protected abstract byte[] encryptSessionInfo(PGPPublicKey pubKey,
                                  byte[] sessionInfo)
                                                throws PGPException

      Throws:
        `PGPException`