class Sequel::Plugins::Password::SHA1Hasher
SHA1Hasher
implements a SHA1 password hasher.
@deprecated This hasher is present only for backward compatibility.
Public Class Methods
new()
click to toggle source
# File lib/sequel_password/hashers.rb, line 128 def initialize @algorithm = :sha1 @digest = OpenSSL::Digest::SHA1.new end
Public Instance Methods
encode(password, salt)
click to toggle source
# File lib/sequel_password/hashers.rb, line 133 def encode(password, salt) hash = @digest.digest(salt + password).unpack('H*').first "#{@algorithm}$#{salt}$#{hash}" end
verify(password, encoded)
click to toggle source
# File lib/sequel_password/hashers.rb, line 138 def verify(password, encoded) _, salt, = encoded.split('$', 3) hash = encode(password, salt) constant_time_compare(encoded, hash) end