sha256
sha256
https://pkg.go.dev/crypto/sha256@go1.20.1
Package sha256 implements the SHA224 and SHA256 hash algorithms as defined in FIPS 180-4.
常量
View Source
The blocksize of SHA256 and SHA224 in bytes.
View Source
The size of a SHA256 checksum in bytes.
View Source
The size of a SHA224 checksum in bytes.
变量
This section is empty.
函数
func New
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.
New Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| package main
import (
"crypto/sha256"
"fmt"
)
func main() {
h := sha256.New()
h.Write([]byte("hello world\n"))
fmt.Printf("%x", h.Sum(nil))
}
Output:
a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447
|
New Example (File)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| 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))
}
Output:
|
func New224
1
| func New224() hash.Hash
|
New224 returns a new hash.Hash computing the SHA224 checksum.
func Sum224 <- go1.2
1
| func Sum224(data []byte) [Size224]byte
|
Sum224 returns the SHA224 checksum of the data.
func Sum256 <- go1.2
1
| func Sum256(data []byte) [Size]byte
|
Sum256 returns the SHA256 checksum of the data.
Sum256 Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| package main
import (
"crypto/sha256"
"fmt"
)
func main() {
sum := sha256.Sum256([]byte("hello world\n"))
fmt.Printf("%x", sum)
}
Output:
a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447
|
类型
This section is empty.
最后修改 June 5, 2023:
更新标准库 (33f199b)