org.bouncycastle.crypto.digests

## Class WhirlpoolDigest

- java.lang.Object
- - org.bouncycastle.crypto.digests.WhirlpoolDigest

All Implemented Interfaces:
  Digest, ExtendedDigest

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

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

### Constructor Summary

Constructors
Constructor and Description
`WhirlpoolDigest()`
`WhirlpoolDigest(WhirlpoolDigest originalDigest)` Copy constructor.

### Method Summary

Methods
`int` `doFinal(byte[] out, int outOff)` close the digest, producing the final digest value.
`java.lang.String` `getAlgorithmName()` return the algorithm name
`int` `getByteLength()` Return the size in bytes of the internal buffer the digest applies it's compression function to.
`int` `getDigestSize()` return the size, in bytes, of the digest produced by this message digest.
`protected void` `processBlock()`
`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.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### WhirlpoolDigest

    public WhirlpoolDigest()

#### WhirlpoolDigest

    public WhirlpoolDigest(WhirlpoolDigest originalDigest)

Copy constructor. This will copy the state of the provided message digest.

### Method Detail

#### getAlgorithmName

    public java.lang.String getAlgorithmName()

Description copied from interface: `Digest`
return the algorithm name

Specified by:
  `getAlgorithmName` in interface `Digest`
Returns:
  the algorithm name

#### getDigestSize

    public int getDigestSize()

Description copied from interface: `Digest`
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.

#### doFinal

    public int doFinal(byte[] out,
              int outOff)

Description copied from interface: `Digest`
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.

#### reset

    public void reset()

reset the chaining variables

Specified by:
  `reset` in interface `Digest`

#### processBlock

    protected void processBlock()

#### update

    public void update(byte in)

Description copied from interface: `Digest`
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)

Description copied from interface: `Digest`
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.

#### getByteLength

    public int getByteLength()

Description copied from interface: `ExtendedDigest`
Return the size in bytes of the internal buffer the digest applies it's compression function to.

Specified by:
  `getByteLength` in interface `ExtendedDigest`
Returns:
  byte length of the digests internal buffer.