module Clearance::PasswordStrategies::SHA1
Public Instance Methods
authenticated?(password)
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 7 def authenticated?(password) encrypted_password == encrypt(password) end
password=(new_password)
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 11 def password=(new_password) @password = new_password initialize_salt_if_necessary if new_password.present? self.encrypted_password = encrypt(new_password) end end
Private Instance Methods
encrypt(string)
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 22 def encrypt(string) generate_hash "--#{salt}--#{string}--" end
generate_hash(string)
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 26 def generate_hash(string) Digest::SHA1.hexdigest(string).encode "UTF-8" end
generate_salt()
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 36 def generate_salt SecureRandom.hex(20).encode("UTF-8") end
initialize_salt_if_necessary()
click to toggle source
# File lib/clearance/password_strategies/deprecated/sha1.rb, line 30 def initialize_salt_if_necessary if salt.blank? self.salt = generate_salt end end