Documentation ¶
Index ¶
- Variables
- func Compare(ctx context.Context, password []byte, hash []byte) error
- func CompareArgon2i(_ context.Context, password []byte, hash []byte) error
- func CompareArgon2id(_ context.Context, password []byte, hash []byte) error
- func CompareBcrypt(_ context.Context, password []byte, hash []byte) error
- func CompareFirebaseScrypt(_ context.Context, password []byte, hash []byte) error
- func CompareMD5(_ context.Context, password []byte, hash []byte) error
- func CompareMD5Crypt(_ context.Context, password []byte, hash []byte) error
- func ComparePbkdf2(_ context.Context, password []byte, hash []byte) error
- func CompareSHA(_ context.Context, password []byte, hash []byte) error
- func CompareSHA256Crypt(_ context.Context, password []byte, hash []byte) error
- func CompareSHA512Crypt(_ context.Context, password []byte, hash []byte) error
- func CompareSSHA(_ context.Context, password []byte, hash []byte) error
- func CompareScrypt(_ context.Context, password []byte, hash []byte) error
- func IsArgon2iHash(hash []byte) bool
- func IsArgon2idHash(hash []byte) bool
- func IsBcryptHash(hash []byte) bool
- func IsFirebaseScryptHash(hash []byte) bool
- func IsMD5CryptHash(hash []byte) bool
- func IsMD5Hash(hash []byte) bool
- func IsPbkdf2Hash(hash []byte) bool
- func IsSHA256CryptHash(hash []byte) bool
- func IsSHA512CryptHash(hash []byte) bool
- func IsSHAHash(hash []byte) bool
- func IsSSHAHash(hash []byte) bool
- func IsScryptHash(hash []byte) bool
- func IsSip24Hash(hash []byte) bool
- func IsValidHashFormat(hash []byte) bool
- func NewCryptDecoder() *crypt.Decoder
- type Argon2
- type Argon2Configuration
- type Bcrypt
- type BcryptConfiguration
- type HashProvider
- type Hasher
- type Pbkdf2
- type Scrypt
- type ScryptConfiguration
- type SipHash24
- type SipHashConfiguration
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidHash = errors.New("the encoded hash is not in the correct format") ErrIncompatibleVersion = errors.New("incompatible version of argon2") ErrMismatchedHashAndPassword = errors.New("passwords do not match") )
View Source
var CryptDecoder = NewCryptDecoder()
View Source
var ErrUnknownHashAlgorithm = errors.New("unknown hash algorithm")
Functions ¶
func CompareFirebaseScrypt ¶
func CompareSHA256Crypt ¶
func CompareSHA512Crypt ¶
func IsArgon2iHash ¶
func IsArgon2idHash ¶
func IsBcryptHash ¶
func IsFirebaseScryptHash ¶
func IsMD5CryptHash ¶
func IsPbkdf2Hash ¶
func IsSHA256CryptHash ¶
func IsSHA512CryptHash ¶
func IsSSHAHash ¶
func IsScryptHash ¶
func IsSip24Hash ¶
func IsValidHashFormat ¶
func NewCryptDecoder ¶
Types ¶
type Argon2 ¶
type Argon2 struct {
// contains filtered or unexported fields
}
func NewHasherArgon2 ¶
func NewHasherArgon2(c *Argon2Configuration) *Argon2
func (*Argon2) Understands ¶
type Argon2Configuration ¶
type Bcrypt ¶
type Bcrypt struct {
// contains filtered or unexported fields
}
func NewHasherBcrypt ¶
func NewHasherBcrypt(c *BcryptConfiguration) *Bcrypt
func (*Bcrypt) Understands ¶
type BcryptConfiguration ¶
type BcryptConfiguration struct {
Cost int
}
type HashProvider ¶
type Hasher ¶
type Hasher interface { // Generate returns a hash derived from the secret or an error if the hash method failed. Generate(ctx context.Context, secret []byte) ([]byte, error) // Understands returns whether the given hash can be understood by this hasher. Understands(hash []byte) bool }
Hasher provides methods for generating and comparing secret hashes.
type Scrypt ¶
type Scrypt struct {
// contains filtered or unexported fields
}
func NewHasherScrypt ¶
func NewHasherScrypt(c *ScryptConfiguration) *Scrypt
func (*Scrypt) Understands ¶
type ScryptConfiguration ¶
type SipHash24 ¶
type SipHash24 struct {
// contains filtered or unexported fields
}
func NewHasherSipHash24 ¶
func NewHasherSipHash24(c *SipHashConfiguration) *SipHash24
func (*SipHash24) Understands ¶
type SipHashConfiguration ¶
type SipHashConfiguration struct {
Key string
}
Click to show internal directories.
Click to hide internal directories.