Bouncy Castle Cryptography Library 1.69

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


Field Summary
static java.lang.String SESSION_KEY_OBFUSCATION_PROPERTY
           
protected  boolean sessionKeyObfuscation
           
 
Constructor Summary
protected PublicKeyKeyEncryptionMethodGenerator(PGPPublicKey pubKey)
           
 
Method Summary
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)
           
 PublicKeyKeyEncryptionMethodGenerator setSessionKeyObfuscation(boolean enabled)
          Controls whether to obfuscate the size of ECDH session keys using extra padding where necessary.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SESSION_KEY_OBFUSCATION_PROPERTY

public static final java.lang.String SESSION_KEY_OBFUSCATION_PROPERTY

sessionKeyObfuscation

protected boolean sessionKeyObfuscation
Constructor Detail

PublicKeyKeyEncryptionMethodGenerator

protected PublicKeyKeyEncryptionMethodGenerator(PGPPublicKey pubKey)
Method Detail

setSessionKeyObfuscation

public PublicKeyKeyEncryptionMethodGenerator setSessionKeyObfuscation(boolean enabled)
Controls whether to obfuscate the size of ECDH session keys using extra padding where necessary.

The default behaviour can be configured using the system property "", or else it will default to enabled.

Returns:
the current generator.

processSessionInfo

public byte[][] processSessionInfo(byte[] encryptedSessionInfo)
                            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.
Overrides:
generate in class PGPKeyEncryptionMethodGenerator
Following copied from class: org.bouncycastle.openpgp.operator.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

Bouncy Castle Cryptography Library 1.69