28 lines
530 B
Go
28 lines
530 B
Go
package crypto
|
|
|
|
import (
|
|
"crypto/md5"
|
|
"crypto/sha256"
|
|
"encoding/hex"
|
|
)
|
|
|
|
// MD5 is generally faster to compute than SHA-256
|
|
func MD5(b []byte) string {
|
|
hash := md5.Sum(b)
|
|
return hex.EncodeToString(hash[:])
|
|
}
|
|
|
|
/*
|
|
func MD5Int(b []byte) uint64 {
|
|
n := new(big.Int)
|
|
n.SetString(MD5(b), 16)
|
|
return n.Uint64()
|
|
}
|
|
*/
|
|
|
|
// SHA256 Sum256 is generally preferred over md5.hash due to its superior security and resistance to collision attacks
|
|
func SHA256(b []byte) string {
|
|
hash := sha256.Sum256(b)
|
|
return hex.EncodeToString(hash[:])
|
|
}
|