Class SHA3Digest

java.lang.Object
org.bouncycastle.crypto.digests.KeccakDigest
org.bouncycastle.crypto.digests.SHA3Digest
All Implemented Interfaces:
Digest, ExtendedDigest

public class SHA3Digest extends KeccakDigest
implementation of SHA-3 based on following KeccakNISTInterface.c from https://keccak.noekeon.org/

Following the naming conventions used in the C source code to enable easy review of the implementation.

  • Constructor Details

    • SHA3Digest

      public SHA3Digest()
    • SHA3Digest

      public SHA3Digest(CryptoServicePurpose purpose)
    • SHA3Digest

      public SHA3Digest(int bitLength)
    • SHA3Digest

      public SHA3Digest(int bitLength, CryptoServicePurpose purpose)
    • SHA3Digest

      public SHA3Digest(SHA3Digest source)
  • Method Details

    • getAlgorithmName

      public String getAlgorithmName()
      Description copied from interface: Digest
      return the algorithm name
      Specified by:
      getAlgorithmName in interface Digest
      Overrides:
      getAlgorithmName in class KeccakDigest
      Returns:
      the algorithm name
    • 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
      Overrides:
      doFinal in class KeccakDigest
      Parameters:
      out - the array the digest is to be copied into.
      outOff - the offset into the out array the digest is to start at.
    • doFinal

      protected int doFinal(byte[] out, int outOff, byte partialByte, int partialBits)
      Overrides:
      doFinal in class KeccakDigest