class Kumogata::Crypt
Constants
- ALGORITHM
- PASSWORD_CHARS
Public Class Methods
decrypt(pass, str)
click to toggle source
# File lib/kumogata/crypt.rb, line 14 def decrypt(pass, str) IO.popen("openssl enc -d -#{ALGORITHM} -pass pass:#{enquote(pass)}", "r+") {|io| io.print Base64.decode64(str) io.close_write io.read } end
encrypt(pass, str)
click to toggle source
# File lib/kumogata/crypt.rb, line 6 def encrypt(pass, str) IO.popen("openssl enc -e -#{ALGORITHM} -pass pass:#{enquote(pass)}", "r+") {|io| io.print str io.close_write io.read }.encode64 end
mkpasswd(n)
click to toggle source
# File lib/kumogata/crypt.rb, line 22 def mkpasswd(n) PASSWORD_CHARS.split(//).sample(n).join end
Private Class Methods
enquote(str)
click to toggle source
# File lib/kumogata/crypt.rb, line 28 def enquote(str) "'" + str.gsub("'", %!'"'"'!) + "'" end