2016-11-13 5 views
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など?

答えて

関連する問題