Ruby on rails Desive gem使用什么算法生成认证令牌?

Ruby on rails Desive gem使用什么算法生成认证令牌?,ruby-on-rails,authentication,encryption,devise,Ruby On Rails,Authentication,Encryption,Devise,我有一个应用程序,它使用Desive身份验证令牌机制进行客户端令牌身份验证。我想知道gem使用什么算法来生成令牌本身?是BCrypt吗?MD5等。代码位于design.rb: # Generate a friendly string randomically to be used as token. def self.friendly_token SecureRandom.base64(15).tr('+/=lIO0', 'pqrsxyz') end 为什么要用.tr('+/=lIO0',

我有一个应用程序,它使用Desive身份验证令牌机制进行客户端令牌身份验证。我想知道gem使用什么算法来生成令牌本身?是BCrypt吗?MD5等。

代码位于
design.rb

# Generate a friendly string randomically to be used as token.
def self.friendly_token
  SecureRandom.base64(15).tr('+/=lIO0', 'pqrsxyz')
end

为什么要用
.tr('+/=lIO0','pqrsxyz')
替换字符串?这只是猜测,但替换+/=可能是为了避免URL中标记的潜在问题,lIO0可能是为了便于人类阅读。Desive上的最新版本不再取代+/=了。基于此更改,它似乎仍在使用
urlsafe\u base64
方法取代
+/=