Функция sha512.New384
Функция sha512.New384 создает новый объект хеша SHA-384,
который реализует интерфейс hash.Hash. Она возвращает
хеш для вычисления 384-битной контрольной суммы. Функция не
принимает никаких параметров и всегда возвращает новый экземпляр
хеша.
Синтаксис
sha512.New384()
Пример
Давайте вычислим хеш SHA-384 для строки "hello world":
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("hello world")
h := sha512.New384()
h.Write(data)
res := h.Sum(nil)
fmt.Printf("%x", res)
}
Результат выполнения кода:
"fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"
Пример
Давайте вычислим хеш SHA-384 для строки "12345" и выведем
результат в виде байтового слайса:
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("12345")
h := sha512.New384()
h.Write(data)
res := h.Sum(nil)
fmt.Println(res)
}
Результат выполнения кода:
[200 44 90 226 13 250 42 201 238 94 27 32 222 161 161 36 52 249 248 88 84 243 224 94 168 4 186 190 181 12 132 63 155 244 177 200 86 248 78 133 236 0 233 4 175 213 69 37]
Пример
Давайте вычислим хеш SHA-384 для строки "abcde" с
использованием метода Sum с существующим слайсом:
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("abcde")
h := sha512.New384()
h.Write(data)
existing := []byte("prefix:")
res := h.Sum(existing)
fmt.Printf("%s", res)
}
Результат выполнения кода:
"prefix:�[�S|\t0y�4��24���u�>N�M��_\u0006f*�Iq�!�U�7ڎ�\u0002�\u0019"
Смотрите также
-
функцию
sha512.New,
которая создает хеш SHA-512 -
функцию
sha512.New512_224,
которая создает хеш SHA-512/224 -
функцию
sha512.New512_256,
которая создает хеш SHA-512/256 -
функцию
sha512.Sum384,
которая вычисляет хеш SHA-384 без создания объекта