The Go Programming Language

Package hash

import "hash"

Package hash provides interfaces for hash functions.

Package files

hash.go

type Hash

Hash is the common interface implemented by all hash functions.

type Hash interface {
    // Write adds more data to the running hash.
    // It never returns an error.
    io.Writer

    // Sum returns the current hash, without changing the
    // underlying hash state.
    Sum() []byte

    // Reset resets the hash to one with zero bytes written.
    Reset()

    // Size returns the number of bytes Sum will return.
    Size() int
}

type Hash32

Hash32 is the common interface implemented by all 32-bit hash functions.

type Hash32 interface {
    Hash
    Sum32() uint32
}

type Hash64

Hash64 is the common interface implemented by all 64-bit hash functions.

type Hash64 interface {
    Hash
    Sum64() uint64
}

Need more packages? The Package Dashboard provides a list of goinstallable packages.

Subdirectories

Name   Synopsis
..
adler32 Package adler32 implements the Adler-32 checksum.
crc32 Package crc32 implements the 32-bit cyclic redundancy check, or CRC-32, checksum.
crc64 Package crc64 implements the 64-bit cyclic redundancy check, or CRC-64, checksum.
fnv Package fnv implements FNV-1 and FNV-1a, non-cryptographic hash functions created by Glenn Fowler, Landon Curt Noll, and Phong Vo.

release.r60.3. Except as noted, this content is licensed under a Creative Commons Attribution 3.0 License.