https://pkg.go.dev/golang.org/x/crypto/bcrypt
bcrypt实现Provos和Mazières的bcrypt自适应哈希算法
Constants
const (
MinCost int = 4 // 传入GenerateFromPassword的最小允许成本
MaxCost int = 31 // 传入GenerateFromPassword的最大允许成本
DefaultCost int = 10 // 如果将低于MinCost的成本传递到GenerateFromPassword中,则实际设置的成本
)
Variables
当哈希太短而不是bcrypt哈希时,从CompareHashAndPassword返回的错误
var ErrHashTooShort = errors.New("crypto/bcrypt: hashedSecret too short to be a bcrypted password")
当密码和哈希不匹配时,从CompareHashAndPassword返回的错误
var ErrMismatchedHashAndPassword = errors.New("crypto/bcrypt: hashedPassword is not the hash of the given password")
func CompareHashAndPassword(hashedPassword, password []byte) error
- 将bcrypt哈希密码与其可能的明文等效密码进行比较。成功时返回nil,失败时返回错误
func Cost(hashedPassword []byte) (int, error)
- 返回用于创建给定哈希密码的哈希开销
func GenerateFromPassword(password []byte, cost int) ([]byte, error)
- 以给定的代价返回密码的bcrypt哈希。如果给定的成本小于MinCost,则成本将改为DefaultCost