sha256

package standard library
master (d3d4e7b) Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 6, 2024 License: BSD-3-Clause Imports: 4 Imported by: 114,362

Documentation

Overview

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

Index

Examples

Constants

View Source
const BlockSize = 64

The blocksize of SHA256 and SHA224 in bytes.

View Source
const Size = 32

The size of a SHA256 checksum in bytes.

View Source
const Size224 = 28

The size of a SHA224 checksum in bytes.

Variables

This section is empty.

Functions

func New

func New() hash.Hash

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

Example
package main

import (
	"crypto/sha256"
	"fmt"
)

func main() {
	h := sha256.New()
	h.Write([]byte("hello world\n"))
	fmt.Printf("%x", h.Sum(nil))
}
Output:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447
Example (File)
package main

import (
	"crypto/sha256"
	"fmt"
	"io"
	"log"
	"os"
)

func main() {
	f, err := os.Open("file.txt")
	if err != nil {
		log.Fatal(err)
	}
	defer f.Close()

	h := sha256.New()
	if _, err := io.Copy(h, f); err != nil {
		log.Fatal(err)
	}

	fmt.Printf("%x", h.Sum(nil))
}
Output:

func New224

func New224() hash.Hash

New224 returns a new hash.Hash computing the SHA224 checksum. The Hash also implements encoding.BinaryMarshaler, encoding.BinaryAppender and encoding.BinaryUnmarshaler to marshal and unmarshal the internal state of the hash.

func Sum224 added in go1.2

func Sum224(data []byte) [Size224]byte

Sum224 returns the SHA224 checksum of the data.

func Sum256 added in go1.2

func Sum256(data []byte) [Size]byte

Sum256 returns the SHA256 checksum of the data.

Example
package main

import (
	"crypto/sha256"
	"fmt"
)

func main() {
	sum := sha256.Sum256([]byte("hello world\n"))
	fmt.Printf("%x", sum)
}
Output:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL