String#crypt

String#crypt

呼び出し形式

crypt(salt)

組み込みクラスString?のメソッド。

レシーバと文字列saltから、暗号化した文字列を生成して返す。

saltは英数字、ドット、スラッシュから構成される2バイト(2文字)以上の文字列にする。

(参考) パスワード認証

正解のパスワードが入った変数を「adminpass」、

キーボードから入力したパスワードが入った変数を「pass」とする。

また、正解のパスワードは "hogehoge" とする。

# すべての英数字、ドット、スラッシュ
alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./"

# そこからランダムに2文字選ぶ
salt = "" << alphabet[rand(64)] << alphabet[rand(64)]

# それをキーにして正解パスワード"hogehoge"を暗号化
adminpass = "hogehoge".crypt(salt)

# 入力されたパスワードを暗号化して認証
p adminpass == pass.crypt(adminpass)

もし、変数passが"hogehoge"ならば、「true」、

違えば「false」が出力される。