sha256

package
v0.0.0-...-beced6c Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2020 License: BSD-3-Clause, MIT Imports: 7 Imported by: 0

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, error)

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
package main

import (
	"fmt"
	"github.com/ElrondfromRussia/cryptofix/sha256"
)

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

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447
Example (File)
package main

import (
	"fmt"
	"github.com/ElrondfromRussia/cryptofix/sha256"
	"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, error)

New224 returns a new hash.Hash computing the SHA224 checksum.

func Sum224

func Sum224(data []byte) (sum224 [Size224]byte, err error)

Sum224 returns the SHA224 checksum of the data.

func Sum256

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

Sum256 returns the SHA256 checksum of the data.

Example
package main

import (
	"fmt"
	"github.com/ElrondfromRussia/cryptofix/sha256"
)

func main() {
	sum, err := sha256.Sum256([]byte("hello world\n"))
	fmt.Printf("%x :::: %v", sum, err)
}
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