import "crypto/sha256"
sha256包实现了SHA224和SHA256哈希算法,
Constants
func Sum256(data []byte) [Size]byte
func New() hash.Hash
func Sum224(data []byte) (sum224 [Size224]byte)
func New224() hash.Hash
const BlockSize = 64
SHA224和SHA256的字节块大小。
const Size = 32
SHA256校验和的字节长度。
const Size224 = 28
SHA224校验和的字节长度。
func Sum256(data []byte) [Size]byte
返回数据的SHA256校验和。
package main
import (
"crypto/sha256"
"fmt"
)
func main() {
sum := sha256.Sum256([]byte("hello world\n"))
fmt.Printf("%x", sum)
}
func New() hash.Hash
返回一个新的使用SHA256校验算法的hash.Hash接口。
package main
import (
"crypto/sha256"
"fmt"
)
func main() {
h := sha256.New()
h.Write([]byte("hello world\n"))
fmt.Printf("%x", h.Sum(nil))
}
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))
}
func Sum224(data []byte) (sum224 [Size224]byte)
返回数据的SHA224校验和。
func New224() hash.Hash
返回一个新的使用SHA224校验算法的hash.Hash接口。
参考资料:
Go语言中文文档
http://www.golang.ltd/
Go语言官方文档
https://golang.google.cn/
Golang语言情怀
ID:wwwGolangLtd
www.Golang.Ltd