gnu.crypto.hash
Class Haval
- Cloneable, IMessageDigest
The
HAVAL message-digest algorithm is a variable output length,
with variable number of rounds. By default, this implementation allows
HAVAL to be used as a drop-in replacement for
MD5.
References:
- HAVAL - A One-Way Hashing Algorithm with Variable Length of Output
Advances in Cryptology - AUSCRYPT'92, Lecture Notes in Computer Science,
Springer-Verlag, 1993;
Y. Zheng, J. Pieprzyk and J. Seberry.
Haval()- Calls the constructor with two argument using
HAVAL_128_BIT as
the value for the output size (i.e.
|
Haval(int size)- Calls the constructor with two arguments using the designated output
size, and
HAVAL_3_ROUND for the value of number of rounds.
|
Haval(int size, int rounds)- Constructs a
Haval instance with the designated output
size (in bytes).
|
Object | clone()- Returns a clone copy of this instance.
|
protected byte[] | getResult()- Constructs the result from the contents of the current context.
|
protected byte[] | padBuffer()- Returns the byte array to use as padding before completing a hash
operation.
|
protected void | resetContext()- Resets the instance for future re-use.
|
boolean | selfTest()- A basic test.
|
protected void | transform(byte[] in, int i)- The block digest transformation per se.
|
blockSize, clone, digest, getResult, hashSize, name, padBuffer, reset, resetContext, selfTest, transform, update, update, update |
HAVAL_128_BIT
public static final int HAVAL_128_BIT
HAVAL_160_BIT
public static final int HAVAL_160_BIT
HAVAL_192_BIT
public static final int HAVAL_192_BIT
HAVAL_224_BIT
public static final int HAVAL_224_BIT
HAVAL_256_BIT
public static final int HAVAL_256_BIT
HAVAL_3_ROUND
public static final int HAVAL_3_ROUND
HAVAL_4_ROUND
public static final int HAVAL_4_ROUND
HAVAL_5_ROUND
public static final int HAVAL_5_ROUND
HAVAL_VERSION
public static final int HAVAL_VERSION
Haval
public Haval()
Calls the constructor with two argument using
HAVAL_128_BIT as
the value for the output size (i.e.
128 bits, and
HAVAL_3_ROUND for the value of number of rounds.
Haval
public Haval(int size)
Calls the constructor with two arguments using the designated output
size, and
HAVAL_3_ROUND for the value of number of rounds.
size - the output size in bytes of this instance.
Haval
public Haval(int size,
int rounds) Constructs a Haval instance with the designated output
size (in bytes). Valid output size values are 16,
20, 24, 28 and 32.
Valid values for rounds are in the range 3..5
inclusive.
size - the output size in bytes of this instance.rounds - the number of rounds to apply when transforming data.
getResult
protected byte[] getResult()
Constructs the result from the contents of the current context.
- getResult in interface BaseHash
- the output of the completed hash operation.
padBuffer
protected byte[] padBuffer()
Returns the byte array to use as padding before completing a hash
operation.
- padBuffer in interface BaseHash
- the bytes to pad the remaining bytes in the buffer before
completing a hash operation.
resetContext
protected void resetContext()
Resets the instance for future re-use.
- resetContext in interface BaseHash
selfTest
public boolean selfTest()
A basic test. Ensures that the digest of a pre-determined message is equal
to a known pre-computed value.
- selfTest in interface IMessageDigest
- selfTest in interface BaseHash
- true if the implementation passes a basic self-test.
Returns false otherwise.
transform
protected void transform(byte[] in,
int i) The block digest transformation per se.
- transform in interface BaseHash
in - the blockSize long block, as an array of bytes to digest.
Copyright © 2001, 2002, 2003
Free Software Foundation,
Inc. All Rights Reserved.