Функция md5.New
Функция md5.New создает новый объект,
реализующий интерфейс hash.Hash для вычисления
хеша MD5. Функция не принимает параметров и возвращает
хеш-объект, который можно использовать для построчного
обновления данных и получения итоговой контрольной суммы.
Синтаксис
h := md5.New()
Пример
Давайте создадим хеш MD5 для строки "abcde":
package main
import (
"crypto/md5"
"fmt"
"io"
)
func main() {
h := md5.New()
io.WriteString(h, "abcde")
res := h.Sum(nil)
fmt.Printf("%x", res)
}
Результат выполнения кода:
"ab56b4d92b40713acc5af89985d4b786"
Пример
Давайте вычислим хеш MD5 для байтового слайса:
package main
import (
"crypto/md5"
"fmt"
)
func main() {
data := []byte("12345")
h := md5.New()
h.Write(data)
res := h.Sum(nil)
fmt.Printf("%x", res)
}
Результат выполнения кода:
"827ccb0eea8a706c4c34a16891f84e7b"
Пример
Давайте используем метод Sum для получения хеша,
передавая существующий слайс байтов:
package main
import (
"crypto/md5"
"fmt"
)
func main() {
h := md5.New()
h.Write([]byte("abcde"))
res := h.Sum(make([]byte, 0, 16))
fmt.Printf("%x", res)
}
Результат выполнения кода:
"ab56b4d92b40713acc5af89985d4b786"
Смотрите также
-
функцию
md5.Sum,
которая вычисляет хеш MD5 для данных одной операцией -
интерфейс
hash.Hash,
который реализует возвращаемый объект -
функцию
sha1.New,
которая создает хеш SHA-1 -
функцию
sha256.New,
которая создает хеш SHA-256