class AttrPassword::SHA512

The SHA512 class

Public Instance Methods

crypt_password(password) click to toggle source

Crypt the password

Arguments:

password: (String)

Example:

>> backend.crypt_password("P@ssw0rd")
=> "$6$x7NCbuLU4Bdr2SrU$qb.a9XG7AFszgj0qDO66Xce5pFI5eRcGhAyIrmylEuhYHIsyoCk6DKBOKW/eleMSjBuY10kgtS2zvicwLxZj91"
# File lib/attr_password/sha512.rb, line 14
def crypt_password(password)
  # Get the SHA512 crypt password
  UnixCrypt::SHA512.build(password)
end
validate_password(password, password_hash) click to toggle source

Check if a password is valid

Arguments:

password_hash: (String)
password: (String)

Example:

>> backend.crypt_password("P@ssw0rd", "$6$x7NCbuLU4Bdr2SrU$qb.a9XG7AFszgj0qDO66Xce5pFI5eRcGhAyIrmylEuhYHIsyoCk6DKBOKW/eleMSjBuY10kgtS2zvicwLxZj91")
=> true
# File lib/attr_password/sha512.rb, line 29
def validate_password(password, password_hash)
  # Ensure the password is set
  return false unless password

  # Ensure the password hash is set
  return false unless password_hash

  # Check if the password is valid
  UnixCrypt.valid?(password, password_hash)
end