onasty/internal/hasher/sha256.go(view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
package hasher
import (
"crypto/sha256"
"encoding/hex"
)
type SHA256Hasher struct {
salt string
}
func NewSHA256Hasher(salt string) *SHA256Hasher {
return &SHA256Hasher{salt: salt}
}
func (h *SHA256Hasher) Hash(inp string) (string, error) {
hash := sha256.New()
if _, err := hash.Write([]byte(inp)); err != nil {
return "", err
}
return hex.EncodeToString(hash.Sum([]byte(h.salt))), nil
}
|