go標準庫的學習-crypto/sha256

參考:https://studygolang.com/pkgdochtml

導入方式:golang

import "crypto/sha256"

sha256包實現了SHA224和SHA256哈希算法,參見FIPS 180-4。算法

Constants 

const BlockSize = 64

SHA224和SHA256的字節塊大小。post

const Size = 32

SHA256校驗和的字節長度。學習

const Size224 = 28

SHA224校驗和的字節長度。ui

func Sum256

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

返回數據的SHA256校驗和。spa

舉例:code

package main

import (
    "fmt"
    "crypto/sha256"
)

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

func New

func New() hash.Hash

返回一個新的使用SHA256校驗算法的hash.Hash接口。htm

可見go標準庫的學習-hashblog

舉例:

package main

import (
    "fmt"
    "crypto/sha256"
)

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

 

func Sum224

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

返回數據的SHA224校驗和。

func New224

func New224() hash.Hash

返回一個新的使用SHA224校驗算法的hash.Hash接口。

相關文章
相關標籤/搜索