文字列を暗号化する
文字列を暗号化するにはString#cryptメソッドを使います。 code:ruby
secretword = "hogehoge"
SALT_CHARSET = "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
salt = "" << SALT_CHARSET << SALT_CHARSET
passwd = secretword.crypt(salt)
上記の例ではSALT_CHARSETからランダムに選んだ2文字を乱数の種にして、"hogehoge"という文字列を暗号化し、passwdに設定しています。
仮にpasswdの値が"KBxoECYM2ydlM"だったとすると、以下のスクリプトは引数に指定された文字列が暗号化前の文字列と同じ"hogehoge"であれば"right"、それ以外では"wrong"を出力します。
code:ruby
passwd = "KBxoECYM2ydlM"
userinput = ARGV.shift
if userinput.crypt(passwd) == passwd
puts "right"
else
puts "wrong"
end
文字列を暗号化する