cryptix.provider.cipher
Class Square
java.lang.Object
|
+--xjava.security.IJCE_Traceable
|
+--xjava.security.Cipher
|
+--cryptix.provider.cipher.Square
- All Implemented Interfaces:
- Parameterized, SymmetricCipher
- public final class Square
- extends Cipher
- implements SymmetricCipher
A subclass of Cipher to implement a Java class of the Square algorithm.
Square is a cipher algorithm developed by Joan Daemen
and Vincent Rijmen
References:
- The
Square home page
has up-to-date comments, implementations, and certification data.
- J. Daemen, L.R. Knudsen, V. Rijmen,
"
The block cipher Square,"
Fast Software Encryption,
LNCS 1267, E. Biham, Ed., Springer-Verlag, 1997, pp. 149-165.
Copyright © 1997
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: 1.6 $
- Since:
- Cryptix 2.2
- Author:
- Raif S. Naffah, Paulo S.L.M. Barreto, David Hopwood
Constructor Summary |
Square()
Constructs a Square cipher object, in the UNINITIALIZED state.
|
Method Summary |
(package private) static void |
()
|
java.lang.Object |
clone()
Always throws a CloneNotSupportedException (cloning of ciphers is not
supported for security reasons). |
int |
engineBlockSize()
SPI: Returns the length of an input block, in bytes. |
protected void |
engineInitDecrypt(java.security.Key key)
SPI: Initializes this cipher for decryption, using the
specified key. |
protected void |
engineInitEncrypt(java.security.Key key)
SPI: Initializes this cipher for encryption, using the
specified key. |
protected int |
engineUpdate(byte[] in,
int inOffset,
int inLen,
byte[] out,
int outOffset)
SPI: This is the main engine method for updating data.
|
protected void |
finalize()
Cleans up resources used by this instance, if necessary. |
static LinkStatus |
getLinkStatus()
Gets an object representing the native linking status of this class. |
static void |
main(java.lang.String[] args)
|
Methods inherited from class xjava.security.Cipher |
blockSize, crypt, crypt, crypt, doFinal, doFinal, doFinal, doFinal, engineCiphertextBlockSize, engineCrypt, engineGetParameter, engineInBufferSize, engineOutBufferSize, enginePlaintextBlockSize, engineSetPaddingScheme, engineSetParameter, getAlgorithm, getAlgorithms, getAlgorithms, getCiphertextBlockSize, getInputBlockSize, getInstance, getInstance, getInstance, getMode, getOutputBlockSize, getPadding, getPaddingScheme, getParameter, getPlaintextBlockSize, getProvider, getState, inBufferSize, inBufferSizeFinal, initDecrypt, initEncrypt, isPaddingBlockCipher, outBufferSize, outBufferSizeFinal, setParameter, toString, update, update, update, update |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Square
public Square()
- Constructs a Square cipher object, in the UNINITIALIZED state.
This calls the Cipher constructor with implBuffering false,
implPadding false and the provider set to "Cryptix".
getLinkStatus
public static LinkStatus getLinkStatus()
- Gets an object representing the native linking status of this class.
static void ()
finalize
protected final void finalize()
- Cleans up resources used by this instance, if necessary.
- Overrides:
finalize
in class java.lang.Object
clone
public final java.lang.Object clone()
throws java.lang.CloneNotSupportedException
- Always throws a CloneNotSupportedException (cloning of ciphers is not
supported for security reasons).
- Overrides:
clone
in class Cipher
- Following copied from class:
xjava.security.Cipher
- Throws:
java.lang.CloneNotSupportedException
- if the cipher is not cloneable.
engineBlockSize
public int engineBlockSize()
- SPI: Returns the length of an input block, in bytes.
- Overrides:
engineBlockSize
in class Cipher
- Returns:
- the length in bytes of an input block for this cipher.
engineInitEncrypt
protected void engineInitEncrypt(java.security.Key key)
throws java.security.InvalidKeyException
- SPI: Initializes this cipher for encryption, using the
specified key.
- Overrides:
engineInitEncrypt
in class Cipher
- Parameters:
key
- the key to use for encryption.- Throws:
java.security.InvalidKeyException
- when one of the following occurs:
- key.getEncoded() == null;
- The encoded byte array form of the key is zero-length;
- The length of the user key data array is out of the
permissible limits.
engineInitDecrypt
protected void engineInitDecrypt(java.security.Key key)
throws java.security.InvalidKeyException
- SPI: Initializes this cipher for decryption, using the
specified key.
- Overrides:
engineInitDecrypt
in class Cipher
- Parameters:
key
- the key to use for decryption.- Throws:
java.security.InvalidKeyException
- when one of the following occurs:
- key.getEncoded() == null;
- The encoded byte array form of the key is zero-length;
- The length of the user key data array is out of the
permissible limits.
engineUpdate
protected int engineUpdate(byte[] in,
int inOffset,
int inLen,
byte[] out,
int outOffset)
- SPI: This is the main engine method for updating data.
in and out may be the same array, and the input and output
regions may overlap.
- Overrides:
engineUpdate
in class Cipher
- Parameters:
in
- the input data.inOffset
- the offset into in specifying where the data starts.inLen
- the length of the subarray.out
- the output array.outOffset
- the offset indicating where to start writing into
the out array.- Returns:
- the number of bytes written.
- Throws:
CryptixException
- if the native library is being used, and it
reports an error.
main
public static final void main(java.lang.String[] args)