...

パッケージ sha256

import "crypto/sha256"
概要
目次

概要 ▾

sha256 パッケージは,FIPS 180-4 で定義された SHA224 と SHA256 ハッシュアルゴリズムを実装します。

定数

SHA256 および SHA224 のブロックサイズ (バイト単位) 。

const BlockSize = 64

SHA256 チェックサムのサイズ (バイト単位) 。

const Size = 32

SHA224 チェックサムのサイズ (バイト単位) 。

const Size224 = 28

func New

func New() hash.Hash

New SHA256 チェックサムをハッシュ計算する新しいhash.Hashを返します。 Hashは,ハッシュの内部状態を整列化および非整列化するために encoding.BinaryMarshaler および encoding.BinaryUnmarshaler も実装します。

コード:

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

出力:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447

例 (File)

コード:

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

func New224

func New224() hash.Hash

New224 はSHA224 チェックサムを計算する新しい hash.Hashを返します。

func Sum224 1.2

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

Sum224 はデータの SHA224 チェックサムを返します。

func Sum256 1.2

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

Sum256 はデータの SHA256 チェックサムを返します。

コード:

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

出力:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447