Sha256: 98fc89b90c1d2a9386ad4b0520ed69828291fde7889e90f3da9843b905485a98

Contents?: true

Size: 760 Bytes

Versions: 9

Compression:

Stored size: 760 Bytes

Contents

module Devise
  # Implements a way of adding different encryptions.
  # The class should implement a self.digest method that taks the following params:
  #   - password
  #   - stretches: the number of times the encryption will be applied
  #   - salt: the password salt as defined by devise
  #   - pepper: Devise config option
  #
  module Encryptable
    module Encryptors
      class Base
        def self.digest
          raise NotImplemented
        end

        def self.salt(stretches)
          Devise.friendly_token[0,20]
        end

        def self.compare(encrypted_password, password, stretches, salt, pepper)
          Devise.secure_compare(encrypted_password, digest(password, stretches, salt, pepper))
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
devise-encryptable-0.1.2 lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/devise-encryptable-0.1.1/lib/devise/encryptable/encryptors/base.rb
devise-encryptable-0.1.1 lib/devise/encryptable/encryptors/base.rb
devise-encryptable-0.1.0 lib/devise/encryptable/encryptors/base.rb