SHA1 {32/100}

Go mengimplementasikan beberapa fungsi hash di package crypto, salah satunya adalah SHA1. SHA1 biasa digunakan untuk mengindentifikasi binary atau text blobs. Contohnya, GitHub menggunakan SHA1 untuk mengidentifikasikan versi dari file dan direktori.

package main
import (
"fmt"
"crypto/sha1"
)
func main() {

greeting := "Hello man."
   hash := sha1.New()
hash.Write([]byte(greeting))
resultHash := hash.Sum(nil)
   fmt.Printf("%s\n", greeting)
fmt.Printf("%x\n", resultHash)
}

Fungsi Write menerima parameter bertipe byte, namun apabila kita ingin mengirim parameter bertipe string kita bisa menuliskan kode kita seperti ini

Write([]byte(greeting))

Yang bertujuan untuk memaksa parameter kita (greeting dalam contoh ini) yang bertipe string menjadi byte.