我想在Devise :: TokenGenerator中使用md5代替sha256。这样做的正确方法是什么?
答案 0 :(得分:1)
实施您自己的加密器。
# lib/devise/encryptors/md5.rb
require 'digest/md5'
module Devise
module Encryptors
class Md5 < Base
def self.digest(password, stretches, salt, pepper)
str = [password, salt].flatten.compact.join
Digest::MD5.hexdigest(str)
end
end
end
end
然后,您可以在config/initializers/devise.rb
:
config.encryptor = :md5
不要忘记在用户模型中启用:encryptable。
此外,您应该确保加载新文件,例如将其添加到用户的类中:
require Rails.root.join('lib', 'devise', 'encryptors', 'md5')