cryptix.provider.cipher
Class Square
java.lang.Object
|
+--xjava.security.IJCE_Traceable
|
+--xjava.security.Cipher
|
+--cryptix.provider.cipher.Square
- 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 |
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.
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
- Tags copied from class: 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)
Copyright (C) 1995-2000 The Cryptix Foundation Ltd. All rights reserved.