Class KeyForEncryption

java.lang.Object
org.c02e.jpgpj.Key
org.c02e.jpgpj.key.KeyForEncryption
All Implemented Interfaces:
Cloneable

public class KeyForEncryption extends Key
Key that should be used exclusively for encryption.

Regardless of PGP usage flags associated with the original key source, only the last subkey flagged for encryption will be used, and the key will be used for nothing else (so the Encryptor will use this key only for encryption, and not for signing; and the Decryptor will ignore this key entirely). If no subkeys have been flagged for encryption, this class will automatically flag the subkey most likely to have been intended to be used for encryption.

Use like the following:


 new Encryptor(
     new KeyForSigning(new File("path/to/my/keys/alice-sec.gpg"), "password123"),
     new KeyForEncryption(new File("path/to/my/keys/bob-pub.gpg"))
 ).encrypt(
     new File("path/to/plaintext.txt"),
     new File("path/to/ciphertext.txt.gpg")
 );
 
See Also:
  • Constructor Details

    • KeyForEncryption

      public KeyForEncryption()
      Constructs a new empty key.
    • KeyForEncryption

      public KeyForEncryption(List<Subkey> subkeys)
      Constructs a new key with the specified subkeys.
    • KeyForEncryption

      public KeyForEncryption(String armor) throws IOException, org.bouncycastle.openpgp.PGPException
      Loads first key from the specified armored text.
      Throws:
      org.bouncycastle.openpgp.PGPException - if the text contains no keys.
      IOException
    • KeyForEncryption

      public KeyForEncryption(File file) throws IOException, org.bouncycastle.openpgp.PGPException
      Loads first key from the specified file.
      Throws:
      org.bouncycastle.openpgp.PGPException - if the file contains no keys.
      IOException
    • KeyForEncryption

      public KeyForEncryption(InputStream stream) throws IOException, org.bouncycastle.openpgp.PGPException
      Loads first key from the specified input stream.
      Throws:
      org.bouncycastle.openpgp.PGPException - if the input streame contains no keys.
      IOException
  • Method Details

    • setSubkeys

      protected void setSubkeys(List<Subkey> x)
      Description copied from class: Key
      All subkeys, or an empty list.
      Overrides:
      setSubkeys in class Key
    • setSubkeysUsage

      protected void setSubkeysUsage()