All Superinterfaces:
Digest, ExtendedDigest
All Known Implementing Classes:
SHAKEDigest

public interface Xof extends ExtendedDigest
With FIPS PUB 202 a new kind of message digest was announced which supported extendable output, or variable digest sizes. This interface provides the extra method required to support variable output on an extended digest implementation.
  • Method Summary

    All Methods
    Modifier and Type
    Method
    Description
    int
    doFinal(byte[] out, int outOff, int outLen)
    Output the results of the final calculation for this digest to outLen number of bytes.
    int
    doOutput(byte[] out, int outOff, int outLen)
    Start outputting the results of the final calculation for this digest.

    Methods inherited from interface Digest

    doFinal, getAlgorithmName, getDigestSize, reset, update, update
    Modifier and Type
    Method
    Description
    int
    doFinal(byte[] out, int outOff)
    close the digest, producing the final digest value.
    return the algorithm name
    int
    return the size, in bytes, of the digest produced by this message digest.
    void
    reset the digest back to it's initial state.
    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 interface ExtendedDigest

    getByteLength
    Modifier and Type
    Method
    Description
    int
    Return the size in bytes of the internal buffer the digest applies it's compression function to.
  • Method Details

    • doFinal

      int doFinal(byte[] out, int outOff, int outLen)
      Output the results of the final calculation for this digest to outLen number of bytes.
      Parameters:
      out - output array to write the output bytes to.
      outOff - offset to start writing the bytes at.
      outLen - the number of output bytes requested.
      Returns:
      the number of bytes written
    • doOutput

      int doOutput(byte[] out, int outOff, int outLen)
      Start outputting the results of the final calculation for this digest. Unlike doFinal, this method will continue producing output until the Xof is explicitly reset, or signals otherwise.
      Parameters:
      out - output array to write the output bytes to.
      outOff - offset to start writing the bytes at.
      outLen - the number of output bytes requested.
      Returns:
      the number of bytes written