go标准库的学习-crypto/sha256

旧巷老猫 提交于 2020-11-14 01:41:47

参考:https://studygolang.com/pkgdoc

导入方式:

import "crypto/sha256"

sha256包实现了SHA224和SHA256哈希算法,参见FIPS 180-4。

Constants 

const BlockSize = 64

SHA224和SHA256的字节块大小。

const Size = 32

SHA256校验和的字节长度。

const Size224 = 28

SHA224校验和的字节长度。

func Sum256

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

返回数据的SHA256校验和。

举例:

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接口。

可见go标准库的学习-hash

举例:

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接口。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!