org.bouncycastle.jce.provider
Class JCEElGamalCipher

java.lang.Object
  extended by javax.crypto.CipherSpi
      extended by org.bouncycastle.jce.provider.WrapCipherSpi
          extended by org.bouncycastle.jce.provider.JCEElGamalCipher
All Implemented Interfaces:
PBE
Direct Known Subclasses:
JCEElGamalCipher.NoPadding, JCEElGamalCipher.PKCS1v1_5Padding

public class JCEElGamalCipher
extends WrapCipherSpi


Nested Class Summary
static class JCEElGamalCipher.NoPadding
          classes that inherit from us.
static class JCEElGamalCipher.PKCS1v1_5Padding
           
 
Nested classes/interfaces inherited from class org.bouncycastle.jce.provider.WrapCipherSpi
WrapCipherSpi.DESEDEWrap, WrapCipherSpi.RC2Wrap, WrapCipherSpi.RFC3211DESedeWrap
 
Nested classes/interfaces inherited from interface org.bouncycastle.jce.provider.PBE
PBE.Util
 
Field Summary
private  BufferedAsymmetricBlockCipher cipher
           
private  java.security.AlgorithmParameters engineParams
           
private  java.security.spec.AlgorithmParameterSpec paramSpec
           
 
Fields inherited from class org.bouncycastle.jce.provider.WrapCipherSpi
pbeHash, pbeIvSize, pbeKeySize, pbeType, wrapEngine
 
Fields inherited from interface org.bouncycastle.jce.provider.PBE
MD5, OPENSSL, PKCS12, PKCS5S1, PKCS5S2, RIPEMD160, SHA1, SHA256, TIGER
 
Constructor Summary
JCEElGamalCipher(AsymmetricBlockCipher engine)
           
 
Method Summary
protected  byte[] engineDoFinal(byte[] input, int inputOffset, int inputLen)
           
protected  int engineDoFinal(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
           
protected  int engineGetBlockSize()
           
protected  byte[] engineGetIV()
           
protected  int engineGetKeySize(java.security.Key key)
           
protected  int engineGetOutputSize(int inputLen)
           
protected  java.security.AlgorithmParameters engineGetParameters()
           
protected  void engineInit(int opmode, java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
           
protected  void engineInit(int opmode, java.security.Key key, java.security.AlgorithmParameters params, java.security.SecureRandom random)
           
protected  void engineInit(int opmode, java.security.Key key, java.security.SecureRandom random)
           
protected  void engineSetMode(java.lang.String mode)
           
protected  void engineSetPadding(java.lang.String padding)
           
protected  byte[] engineUpdate(byte[] input, int inputOffset, int inputLen)
           
protected  int engineUpdate(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset)
           
private  void initFromSpec(javax.crypto.spec.OAEPParameterSpec pSpec)
           
 
Methods inherited from class org.bouncycastle.jce.provider.WrapCipherSpi
engineUnwrap, engineWrap
 
Methods inherited from class javax.crypto.CipherSpi
engineDoFinal, engineUpdate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cipher

private BufferedAsymmetricBlockCipher cipher

paramSpec

private java.security.spec.AlgorithmParameterSpec paramSpec

engineParams

private java.security.AlgorithmParameters engineParams
Constructor Detail

JCEElGamalCipher

public JCEElGamalCipher(AsymmetricBlockCipher engine)
Method Detail

initFromSpec

private void initFromSpec(javax.crypto.spec.OAEPParameterSpec pSpec)
                   throws javax.crypto.NoSuchPaddingException
Throws:
javax.crypto.NoSuchPaddingException

engineGetBlockSize

protected int engineGetBlockSize()
Overrides:
engineGetBlockSize in class WrapCipherSpi

engineGetIV

protected byte[] engineGetIV()
Overrides:
engineGetIV in class WrapCipherSpi

engineGetKeySize

protected int engineGetKeySize(java.security.Key key)
Overrides:
engineGetKeySize in class WrapCipherSpi

engineGetOutputSize

protected int engineGetOutputSize(int inputLen)
Overrides:
engineGetOutputSize in class WrapCipherSpi

engineGetParameters

protected java.security.AlgorithmParameters engineGetParameters()
Overrides:
engineGetParameters in class WrapCipherSpi

engineSetMode

protected void engineSetMode(java.lang.String mode)
                      throws java.security.NoSuchAlgorithmException
Overrides:
engineSetMode in class WrapCipherSpi
Throws:
java.security.NoSuchAlgorithmException

engineSetPadding

protected void engineSetPadding(java.lang.String padding)
                         throws javax.crypto.NoSuchPaddingException
Overrides:
engineSetPadding in class WrapCipherSpi
Throws:
javax.crypto.NoSuchPaddingException

engineInit

protected void engineInit(int opmode,
                          java.security.Key key,
                          java.security.spec.AlgorithmParameterSpec params,
                          java.security.SecureRandom random)
                   throws java.security.InvalidKeyException
Overrides:
engineInit in class WrapCipherSpi
Throws:
java.security.InvalidKeyException

engineInit

protected void engineInit(int opmode,
                          java.security.Key key,
                          java.security.AlgorithmParameters params,
                          java.security.SecureRandom random)
                   throws java.security.InvalidKeyException,
                          java.security.InvalidAlgorithmParameterException
Overrides:
engineInit in class WrapCipherSpi
Throws:
java.security.InvalidKeyException
java.security.InvalidAlgorithmParameterException

engineInit

protected void engineInit(int opmode,
                          java.security.Key key,
                          java.security.SecureRandom random)
                   throws java.security.InvalidKeyException
Overrides:
engineInit in class WrapCipherSpi
Throws:
java.security.InvalidKeyException

engineUpdate

protected byte[] engineUpdate(byte[] input,
                              int inputOffset,
                              int inputLen)
Overrides:
engineUpdate in class WrapCipherSpi

engineUpdate

protected int engineUpdate(byte[] input,
                           int inputOffset,
                           int inputLen,
                           byte[] output,
                           int outputOffset)
Overrides:
engineUpdate in class WrapCipherSpi

engineDoFinal

protected byte[] engineDoFinal(byte[] input,
                               int inputOffset,
                               int inputLen)
                        throws javax.crypto.IllegalBlockSizeException,
                               javax.crypto.BadPaddingException
Overrides:
engineDoFinal in class WrapCipherSpi
Throws:
javax.crypto.IllegalBlockSizeException
javax.crypto.BadPaddingException

engineDoFinal

protected int engineDoFinal(byte[] input,
                            int inputOffset,
                            int inputLen,
                            byte[] output,
                            int outputOffset)
                     throws javax.crypto.IllegalBlockSizeException,
                            javax.crypto.BadPaddingException
Overrides:
engineDoFinal in class WrapCipherSpi
Throws:
javax.crypto.IllegalBlockSizeException
javax.crypto.BadPaddingException