В настоящее время я работаю над приложением Rails, которое хранит простые и понятные пароли (...).Поэтому я перехожу к аутентификации Authlogic со «стандартным» шифрованием SHA512.
Я сделал то, что отлично работает:
#file /models/user.rb
class User < ActiveRecord::Base
acts_as_authentic { |c|
c.transition_from_crypto_providers = [MyOwnNoCrypto, Authlogic::CryptoProviders::Sha512]
}
end
#file /lib/my_own_no_crypto.rb
class MyOwnNoCrypto
def self.encrypt(*tokens)
return tokens[0] # or tokens.join I guess
end
def self.matches?(crypted_password, *tokens)
return crypted_password == tokens.join
end
end
Это хорошо - и работает просто отлично - но яИнтересно, есть ли более сексуальный способ сделать это, возможно, с опцией Authlogic core?
Спасибо!