org.bouncycastle.crypto.digests

Class WhirlpoolDigest

Implemented Interfaces:
Digest

public final class WhirlpoolDigest
extends java.lang.Object
implements Digest

Implementation of WhirlpoolDigest, based on Java source published by Barreto and Rijmen.

Constructor Summary

WhirlpoolDigest()
WhirlpoolDigest(WhirlpoolDigest originalDigest)
Copy constructor.

Method Summary

int
doFinal(byte[] out, int outOff)
close the digest, producing the final digest value.
String
getAlgorithmName()
return the algorithm name
int
getDigestSize()
return the size, in bytes, of the digest produced by this message digest.
protected void
processBlock()
protected void
processLengthOfDigestedData(long bitLength, byte[] buf, int offSet)
void
reset()
reset the chaining variables
void
update(byte in)
update the message digest with a single byte.
void
update(byte[] in, int inOff, int len)
update the message digest with a block of bytes.

Constructor Details

WhirlpoolDigest

public WhirlpoolDigest()


WhirlpoolDigest

public WhirlpoolDigest(WhirlpoolDigest originalDigest)
Copy constructor. This will copy the state of the provided message digest.

Method Details

doFinal

public int doFinal(byte[] out,
                   int outOff)
close the digest, producing the final digest value. The doFinal call leaves the digest reset.
Specified by:
doFinal in interface Digest

Parameters:
out - the array the digest is to be copied into.
outOff - the offset into the out array the digest is to start at.


getAlgorithmName

public String getAlgorithmName()
return the algorithm name
Specified by:
getAlgorithmName in interface Digest

Returns:
the algorithm name


getDigestSize

public int getDigestSize()
return the size, in bytes, of the digest produced by this message digest.
Specified by:
getDigestSize in interface Digest

Returns:
the size, in bytes, of the digest produced by this message digest.


processBlock

protected void processBlock()


processLengthOfDigestedData

protected void processLengthOfDigestedData(long bitLength,
                                           byte[] buf,
                                           int offSet)


reset

public void reset()
reset the chaining variables
Specified by:
reset in interface Digest


update

public void update(byte in)
update the message digest with a single byte.
Specified by:
update in interface Digest

Parameters:
in - the input byte to be entered.


update

public void update(byte[] in,
                   int inOff,
                   int len)
update the message digest with a block of bytes.
Specified by:
update in interface Digest

Parameters:
in - the byte array containing the data.
inOff - the offset into the byte array where the data starts.
len - the length of the data.