0
我只是想了解在生成友好令牌時對特定字符進行哈希編碼的原理。這背後有什麼爲什麼特定的字符被硬編碼以生成安全的令牌
https://github.com/plataformatec/devise/blob/master/lib/devise.rb#L481
def self.friendly_token(length = 20)
# To calculate real characters, we must perform this operation.
# See SecureRandom.urlsafe_base64
rlength = (length * 3)/4
SecureRandom.urlsafe_base64(rlength).tr('lIO0', 'sxyz')
end
在這裏,在上面的代碼片段的思維過程,L,I,O,0越來越有S,X,Y,Z分別替換。那麼正在生成的其他角色呢?
例
SecureRandom.urlsafe_base64(15)
=> "4-6RGWUH1SIsFlXa3C73"
什麼關於R,G,W等?