Bouncy Castle Cryptography Library 1.49

org.bouncycastle.openpgp.operator
Class PBESecretKeyEncryptor

java.lang.Object
  extended by org.bouncycastle.openpgp.operator.PBESecretKeyEncryptor

public abstract class PBESecretKeyEncryptor
extends java.lang.Object


Field Summary
protected  int encAlgorithm
           
protected  char[] passPhrase
           
protected  java.security.SecureRandom random
           
protected  S2K s2k
           
protected  int s2kCount
           
protected  PGPDigestCalculator s2kDigestCalculator
           
 
Constructor Summary
protected PBESecretKeyEncryptor(int encAlgorithm, PGPDigestCalculator s2kDigestCalculator, int s2kCount, java.security.SecureRandom random, char[] passPhrase)
           
protected PBESecretKeyEncryptor(int encAlgorithm, PGPDigestCalculator s2kDigestCalculator, java.security.SecureRandom random, char[] passPhrase)
           
 
Method Summary
 byte[] encryptKeyData(byte[] key, byte[] iv, byte[] keyData, int keyOff, int keyLen)
          Encrypt the passed in keyData using the key and the iv provided.
abstract  byte[] encryptKeyData(byte[] key, byte[] keyData, int keyOff, int keyLen)
           
 byte[] encryptKeyData(byte[] keyData, int keyOff, int keyLen)
          Key encryption method invoked for V4 keys and greater.
 int getAlgorithm()
           
abstract  byte[] getCipherIV()
           
 int getHashAlgorithm()
           
 byte[] getKey()
           
 S2K getS2K()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

encAlgorithm

protected int encAlgorithm

passPhrase

protected char[] passPhrase

s2kDigestCalculator

protected PGPDigestCalculator s2kDigestCalculator

s2kCount

protected int s2kCount

s2k

protected S2K s2k

random

protected java.security.SecureRandom random
Constructor Detail

PBESecretKeyEncryptor

protected PBESecretKeyEncryptor(int encAlgorithm,
                                PGPDigestCalculator s2kDigestCalculator,
                                java.security.SecureRandom random,
                                char[] passPhrase)

PBESecretKeyEncryptor

protected PBESecretKeyEncryptor(int encAlgorithm,
                                PGPDigestCalculator s2kDigestCalculator,
                                int s2kCount,
                                java.security.SecureRandom random,
                                char[] passPhrase)
Method Detail

getAlgorithm

public int getAlgorithm()

getHashAlgorithm

public int getHashAlgorithm()

getKey

public byte[] getKey()
              throws PGPException
Throws:
PGPException

getS2K

public S2K getS2K()

encryptKeyData

public byte[] encryptKeyData(byte[] keyData,
                             int keyOff,
                             int keyLen)
                      throws PGPException
Key encryption method invoked for V4 keys and greater.

Parameters:
keyData - raw key data
keyOff - offset into rawe key data
keyLen - length of key data to use.
Returns:
an encryption of the passed in keyData.
Throws:
PGPException - on error in the underlying encryption process.

encryptKeyData

public abstract byte[] encryptKeyData(byte[] key,
                                      byte[] keyData,
                                      int keyOff,
                                      int keyLen)
                               throws PGPException
Throws:
PGPException

encryptKeyData

public byte[] encryptKeyData(byte[] key,
                             byte[] iv,
                             byte[] keyData,
                             int keyOff,
                             int keyLen)
                      throws PGPException
Encrypt the passed in keyData using the key and the iv provided.

This method is only used for processing version 3 keys.

Throws:
PGPException

getCipherIV

public abstract byte[] getCipherIV()

Bouncy Castle Cryptography Library 1.49