【Rails】AuthlogicでLoadError (cannot load such file -- scrypt) が出た場合の対処方法

Authlogic 3.4.2でエラーが発生するようになった。

LoadError (cannot load such file -- scrypt):

Authlogic 3.4.0で暗号化方式がSHA512からSCryptに変わったとのこと。

# Gemfile

gem 'authlogic'
gem 'scrypt' # 追加
$ bundle install

でエラーは出なくなった。

暗号化方式をSHA512のままにしたい場合は

# app/models/user.rb

acts_as_authentic do |c|
  c.crypto_provider = Authlogic::CryptoProviders::Sha512
end

とすればいい。

参考

ruby - Rails 4.1.0 and authlogic bcrypt issue - Stack Overflow