| cryptix.jce.provider.cipher.BlockCipher cryptix.jce.provider.cipher.Twofish
Twofish | final public class Twofish extends BlockCipher (Code) | | Twofish is an AES candidate algorithm. It is a balanced 128-bit Feistel
cipher, consisting of 16 rounds. In each round, a 64-bit S-box value is
computed from 64 bits of the block, and this value is xored into the other
half of the block. The two half-blocks are then exchanged, and the next
round begins. Before the first round, all input bits are xored with key-
dependent "whitening" subkeys, and after the final round the output bits
are xored with other key-dependent whitening subkeys; these subkeys are
not used anywhere else in the algorithm.
Twofish was submitted by Bruce Schneier, Doug Whiting, John Kelsey, Chris
Hall and David Wagner.
Reference:
- TWOFISH2.C -- Optimized C API calls for TWOFISH AES submission,
Version 1.00, April 1998, by Doug Whiting.
version: $Revision: 1.1 $ author: Raif S. Naffah author: Jeroen C. van Gelderen (gelderen@cryptix.org) |
Constructor Summary | |
public | Twofish() |
Method Summary | |
protected void | coreCrypt(byte[] in, int inOffset, byte[] out, int outOffset) | protected void | coreInit(Key key, boolean decrypt) |
coreCrypt | protected void coreCrypt(byte[] in, int inOffset, byte[] out, int outOffset)(Code) | | |
Methods inherited from cryptix.jce.provider.cipher.BlockCipher | final public Object clone() throws CloneNotSupportedException(Code)(Java Doc) abstract void coreCrypt(byte[] in, int inOffset, byte[] out, int outOffset)(Code)(Java Doc) int coreGetBlockSize()(Code)(Java Doc) abstract void coreInit(Key key, boolean decrypt) throws InvalidKeyException(Code)(Java Doc) final protected int engineDoFinal(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset) throws ShortBufferException, IllegalBlockSizeException, BadPaddingException(Code)(Java Doc) final protected byte[] engineDoFinal(byte[] input, int inputOffset, int inputLen) throws IllegalBlockSizeException, BadPaddingException(Code)(Java Doc) final protected int engineGetBlockSize()(Code)(Java Doc) final protected byte[] engineGetIV()(Code)(Java Doc) protected int engineGetKeySize(Key key) throws InvalidKeyException(Code)(Java Doc) final protected int engineGetOutputSize(int inputLen)(Code)(Java Doc) final protected AlgorithmParameters engineGetParameters()(Code)(Java Doc) final protected void engineInit(int opmode, Key key, SecureRandom random) throws InvalidKeyException(Code)(Java Doc) final protected void engineInit(int opmode, Key key, AlgorithmParameterSpec params, SecureRandom random) throws InvalidKeyException, InvalidAlgorithmParameterException(Code)(Java Doc) final protected void engineInit(int opmode, Key key, AlgorithmParameters params, SecureRandom random) throws InvalidKeyException, InvalidAlgorithmParameterException(Code)(Java Doc) final protected void engineSetMode(String mode) throws NoSuchAlgorithmException(Code)(Java Doc) final protected void engineSetPadding(String padding) throws NoSuchPaddingException(Code)(Java Doc) final protected int engineUpdate(byte[] input, int inputOffset, int inputLen, byte[] output, int outputOffset) throws ShortBufferException(Code)(Java Doc) final protected byte[] engineUpdate(byte[] input, int inputOffset, int inputLen)(Code)(Java Doc)
|
|
|