jonelo.jacksum.adapt.gnu.crypto.hash
Class Haval
BaseHash
jonelo.jacksum.adapt.gnu.crypto.hash.Haval
public class Haval
extends BaseHash
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).
|
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.
clone
public Object clone()
getResult
protected byte[] getResult()
padBuffer
protected byte[] padBuffer()
resetContext
protected void resetContext()
selfTest
public boolean selfTest()
transform
protected void transform(byte[] in,
int i)