Class WhirlpoolDigest

java.lang.Object
org.bouncycastle.crypto.digests.WhirlpoolDigest
All Implemented Interfaces:
Digest, ExtendedDigest, Memoable

public final class WhirlpoolDigest extends Object implements ExtendedDigest, Memoable
Implementation of WhirlpoolDigest, based on Java source published by Barreto and Rijmen.
  • Constructor Details

    • WhirlpoolDigest

      public WhirlpoolDigest()
    • WhirlpoolDigest

      public WhirlpoolDigest(CryptoServicePurpose purpose)
    • WhirlpoolDigest

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

    • getAlgorithmName

      public 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.
    • copy

      public Memoable copy()
      Description copied from interface: Memoable
      Produce a copy of this object with its configuration and in its current state.

      The returned object may be used simply to store the state, or may be used as a similar object starting from the copied state.

      Specified by:
      copy in interface Memoable
    • reset

      public void reset(Memoable other)
      Description copied from interface: Memoable
      Restore a copied object state into this object.

      Implementations of this method should try to avoid or minimise memory allocation to perform the reset.

      Specified by:
      reset in interface Memoable
      Parameters:
      other - an object originally copied from an object of the same type as this instance.