gnu.crypto.hash

## Class Sha256Standalone

- java.lang.Object
- - gnu.crypto.hash.BaseHashStandalone
  - - gnu.crypto.hash.Sha256Standalone

- All Implemented Interfaces:
    IMessageDigestStandalone, Cloneable

      public class Sha256Standalone
      extends BaseHashStandalone

  Implementation of SHA2-1 [SHA-256] per the IETF Draft Specification.

  References:

  1. Descriptions of SHA-256, SHA-384, and SHA-512,
  2. http://csrc.nist.gov/cryptval/shs/sha256-384-512.pdf
  Modified by jrandom@i2p.net to remove unnecessary gnu-crypto dependencies, and renamed from Sha256 to avoid conflicts with JVMs using gnu-crypto as their JCE provider.
  Version:
    $Revision: 1.2 $

- - ### Field Summary

    - ### Fields inherited from class gnu.crypto.hash.BaseHashStandalone

      `blockSize, buffer, count, hashSize, name`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Sha256Standalone()` Trivial 0-arguments constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `clone()` Returns a clone copy of this instance.
    `protected byte[]` | `getResult()` Constructs the result from the contents of the current context.
    `protected byte[]` | `padBuffer()` Returns the byte array to use as padding before completing a hash operation.
    `protected void` | `resetContext()` Resets the instance for future re-use.
    `boolean` | `selfTest()` A basic test.
    `protected void` | `transform(byte[] in, int offset)` The block digest transformation per se.

    - ### Methods inherited from class gnu.crypto.hash.BaseHashStandalone

      `blockSize, digest, hashSize, name, reset, update, update, update`

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

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

- - ### Constructor Detail

    - #### Sha256Standalone

          public Sha256Standalone()

      Trivial 0-arguments constructor.

  - ### Method Detail

    - #### clone

          public Object clone()

      Description copied from interface: `IMessageDigestStandalone`

      Returns a clone copy of this instance.

      Specified by:
        `clone` in interface `IMessageDigestStandalone`
      Specified by:
        `clone` in class `BaseHashStandalone`
      Returns:
        a clone copy of this instance.

    - #### transform

          protected void transform(byte[] in,
                       int offset)

      Description copied from class: `BaseHashStandalone`

      The block digest transformation per se.

      Specified by:
        `transform` in class `BaseHashStandalone`
      Parameters:
        `in` - the blockSize long block, as an array of bytes to digest.
        `offset` - the index where the data to digest is located within the input buffer.

    - #### padBuffer

          protected byte[] padBuffer()

      Description copied from class: `BaseHashStandalone`

      Returns the byte array to use as padding before completing a hash operation.

      Specified by:
        `padBuffer` in class `BaseHashStandalone`
      Returns:
        the bytes to pad the remaining bytes in the buffer before completing a hash operation.

    - #### getResult

          protected byte[] getResult()

      Description copied from class: `BaseHashStandalone`

      Constructs the result from the contents of the current context.

      Specified by:
        `getResult` in class `BaseHashStandalone`
      Returns:
        the output of the completed hash operation.

    - #### resetContext

          protected void resetContext()

      Description copied from class: `BaseHashStandalone`
      Resets the instance for future re-use.
      Specified by:
        `resetContext` in class `BaseHashStandalone`

    - #### selfTest

          public boolean selfTest()

      Description copied from interface: `IMessageDigestStandalone`

      A basic test. Ensures that the digest of a pre-determined message is equal to a known pre-computed value.

      Specified by:
        `selfTest` in interface `IMessageDigestStandalone`
      Specified by:
        `selfTest` in class `BaseHashStandalone`
      Returns:
        `true` if the implementation passes a basic self-test. Returns `false` otherwise.