Overview

Package sha256 implements the SHA224 and SHA256 hash algorithms as defined in
FIPS 180-4.

Package files

sha256.go sha256block_amd64.go

Constants

The blocksize of SHA256 and SHA224 in bytes.

  1. const Size = 32

The size of a SHA256 checksum in bytes.

  1. const Size224 = 28

The size of a SHA224 checksum in bytes.

New returns a new hash.Hash computing the SHA256 checksum. The Hash also
implements encoding.BinaryMarshaler and encoding.BinaryUnmarshaler to marshal
and unmarshal the internal state of the hash.


Example:

  1. h := sha256.New()
  2. h.Write([]byte("hello world\n"))
  3. fmt.Printf("%x", h.Sum(nil))
  4. // Output: a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447


Example:

  1. if err != nil {
  2. log.Fatal(err)
  3. defer f.Close()
  4. h := sha256.New()
  5. if _, err := io.Copy(h, f); err != nil {
  6. log.Fatal(err)
  7. }
  8. fmt.Printf("%x", h.Sum(nil))

func New224

  1. func Sum224(data []byte) (sum224 []byte)

Sum224 returns the SHA224 checksum of the data.

func

  1. func Sum256(data []) [Size]

Sum256 returns the SHA256 checksum of the data.