Функция sha1.Sum

Функция sha1.Sum вычисляет SHA-1 хеш от переданных данных. Она принимает один параметр - срез байтов []byte, для которого нужно вычислить хеш, и возвращает результат в виде массива байтов размером 20 байт.

Синтаксис

gosha1.Sum(data []byte) [20]byte

Пример

Давайте вычислим SHA-1 хеш для строки "abcde":

gopackage main

import (
  "crypto/sha1"
  "fmt"
)

func main() {
  res := sha1.Sum([]byte("abcde"))
  fmt.Printf("%x", res)
}

Результат выполнения кода:

go"03de6c570bfe24bfc328ccd7ca46b76eadaf4334"

Пример

Вычислим SHA-1 хеш для пустой строки:

gopackage main

import (
  "crypto/sha1"
  "fmt"
)

func main() {
  res := sha1.Sum([]byte(""))
  fmt.Printf("%x", res)
}

Результат выполнения кода:

go"da39a3ee5e6b4b0d3255bfef95601890afd80709"

Пример

Сравним хеши двух разных строк:

gopackage main

import (
  "crypto/sha1"
  "fmt"
)

func main() {
  res1 := sha1.Sum([]byte("abcde"))
  res2 := sha1.Sum([]byte("12345"))
  fmt.Printf("abcde: %x\n", res1)
  fmt.Printf("12345: %x", res2)
}

Результат выполнения кода:

go"abcde: 03de6c570bfe24bfc328ccd7ca46b76eadaf4334"
"12345: 8cb2237d0679ca88db6464eac60da96345513964"

Смотрите также

  • функцию sha1.New,
    которая создает новый хеш для поточного вычисления SHA-1
  • функцию sha256.Sum256,
    которая вычисляет SHA-256 хеш более безопасным алгоритмом
  • функцию md5.Sum,
    которая вычисляет MD5 хеш от переданных данных
  • функцию sha512.Sum512,
    которая вычисляет SHA-512 хеш с более высокой стойкостью