Функция sha512.Sum512
Функция sha512.Sum512 вычисляет хеш SHA-512 для переданного слайса байтов.
В единственный параметр передаются данные, для которых необходимо вычислить хеш.
Функция возвращает массив из 64 байтов ([64]byte), который представляет
собой фиксированный 512-битный хеш.
Синтаксис
sha512.Sum512(data []byte) [64]byte
Пример
Давайте вычислим хеш SHA-512 для строки "abcde":
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("abcde")
hash := sha512.Sum512(data)
fmt.Printf("%x", hash)
}
Результат выполнения кода:
"0a9e3d9e8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be8621b0e9e9c8c6be862"
Пример
Вычислим хеш SHA-512 для пустой строки:
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("")
hash := sha512.Sum512(data)
fmt.Printf("%x", hash)
}
Результат выполнения кода:
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e"
Пример
Преобразуем полученный массив байтов в строку для удобного использования:
package main
import (
"crypto/sha512"
"fmt"
)
func main() {
data := []byte("12345")
hash := sha512.Sum512(data)
hashString := fmt.Sprintf("%x", hash)
fmt.Println(hashString)
}
Результат выполнения кода:
"3627909a29c31381a071ec27f7c9ca97726182aed29a7ddd2e54353322cfb30abb9e3a6df2ac2c20fe23436311d678564d0c8d305930575f60e2d3d048184d79"
Смотрите также
-
функцию
sha512.New,
которая создает новый хеш-объект для поточного вычисления SHA-512 -
функцию
sha512.Sum384,
которая вычисляет хеш SHA-384 (урезанная версия SHA-512) -
функцию
sha256.Sum256,
которая вычисляет хеш SHA-256 -
функцию
sha1.Sum,
которая вычисляет хеш SHA-1