Class: Devise::Encryptable::Encryptors::RestfulAuthenticationSha1

Inherits:
Base
  • Object
show all
Defined in:
lib/devise/encryptable/encryptors/restful_authentication_sha1.rb

Overview

RestfulAuthenticationSha1

Simulates Restful Authentication’s default encryption mechanism. Warning: it uses Devise’s pepper to port the concept of REST_AUTH_SITE_KEY Warning: it uses Devise’s stretches configuration to port the concept of REST_AUTH_DIGEST_STRETCHES. Should be set to 10 in the initializer to simulate the default behavior.

Class Method Summary collapse

Methods inherited from Base

compare, salt

Class Method Details

.digest(password, stretches, salt, pepper) ⇒ Object

Generates a default password digest based on salt, pepper and the incoming password.



15
16
17
18
19
# File 'lib/devise/encryptable/encryptors/restful_authentication_sha1.rb', line 15

def self.digest(password, stretches, salt, pepper)
  digest = pepper
  stretches.times { digest = Digest::SHA1.hexdigest([digest, salt, password, pepper].flatten.join('--')) }
  digest
end