A Cascade Cipher is the concatenation of two or more block ciphers
each with independent keys. Plaintext is input to the first stage; the
output stage i is input to stage i + 1; and the output
of the last stage is the Cascade's ciphertext output.
In the simplest case, all stages in a Cascade have k-bit keys, and the stage inputs and outputs are all n-bit quantities. The stage ciphers may differ (general cascade of ciphers), or all be identical (cascade of identical ciphers).
The term block ciphers used above refers to implementations of
gnu.crypto.mode.IMode, including the gnu.crypto.mode.ECB
mode which basically exposes a symmetric-key block cipher algorithm as
a Mode of Operations.
init method, representing the cascade's desired wiring direction.
The mapped value should be a valid gnu.crypto.assembly.Direction
value. If this attribute is omitted,
gnu.crypto.assembly.Direction.FORWARD is used.
IllegalArgumentException is thrown if stage is already in
the chain, or it has incompatible characteristics with the current
elements already in the chain. On the other hand, an
IllegalStateException will be thrown if the cascade has already
been initialized, or if the designated stage is null.
IllegalArgumentException is thrown if stage is already
in the chain, or it has incompatible characteristics with the current
elements already in the chain. On the other hand, an
IllegalStateException will be thrown if the cascade has already
been initialized, or if the designated stage is null.
IllegalArgumentException if stage is already in the chain,
or it has incompatible characteristics with the current elements
already in the chain. Throws an IllegalStateException if the
instance is already initialized. Finally, this method throws an
IndexOutOfBoundsException if index is less than 0
or greater than the current size of this cascade.
java.util.Iterator over the stages contained in this
instance. Each element of this iterator is a concrete implementation of
a gnu.crypto.assembly.Stage.
java.util.Set of supported block sizes for this
Cascade that are common to all of its chained stages. Each element
in the returned set is an instance of Integer.
IllegalStateException if the chain, or any of its
stages, is already initialized. Throws an InvalidKeyException if
the initialization data provided with the stage is incorrect or causes
an invalid key to be generated.
IllegalStateException if the instance is not yet initialized.
gnu.crypto.assembly.Direction#FORWARD direction) or ciphertext
(if initialised in the gnu.crypto.assembly.Direction#REVERSED
direction), from in, starting at index position inOffset,
returning the result in out, starting at index position
outOffset. Throws an IllegalStateException if the instance
is not yet initialized.
true if the implementation passes the tests.
Returns false otherwise.