| 12345678910111213141516171819202122 |
- // Package crypto provides cryptographic utilities for password hashing and verification.
- package crypto
- import (
- "golang.org/x/crypto/bcrypt"
- )
- // HashPasswordAsBcrypt generates a bcrypt hash of the given password.
- func HashPasswordAsBcrypt(password string) (string, error) {
- hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost)
- return string(hash), err
- }
- // CheckPasswordHash verifies if the given password matches the bcrypt hash.
- func CheckPasswordHash(hash, password string) bool {
- return bcrypt.CompareHashAndPassword([]byte(hash), []byte(password)) == nil
- }
- func IsHashed(s string) bool {
- _, err := bcrypt.Cost([]byte(s))
- return err == nil
- }
|