Sha256: 4a43761430220b2e905937104f694de350f8a1bee59a2ed8e36d5374e24f2a85
Contents?: true
Size: 766 Bytes
Versions: 24
Compression:
Stored size: 766 Bytes
Contents
require 'base64' require 'digest' require 'openssl' module AESCrypt def AESCrypt.encrypt(password, iv, cleardata) cipher = OpenSSL::Cipher.new('AES-256-CBC') cipher.encrypt # set cipher to be encryption mode cipher.key = password cipher.iv = iv encrypted = '' encrypted << cipher.update(cleardata) encrypted << cipher.final AESCrypt.b64enc(encrypted) end def AESCrypt.decrypt(password, iv, secretdata) secretdata = Base64::decode64(secretdata) decipher = OpenSSL::Cipher::Cipher.new('aes-256-cbc') decipher.decrypt decipher.key = password decipher.iv = iv if iv != nil decipher.update(secretdata) + decipher.final end def AESCrypt.b64enc(data) Base64.encode64(data).gsub(/\n/, '') end end
Version data entries
24 entries across 24 versions & 1 rubygems