Class: InfoVault::Encryption

Inherits:
Object
  • Object
show all
Defined in:
lib/info_vault.rb

Instance Method Summary collapse

Instance Method Details

#decrypt(key, pass_phrase, file = "") ⇒ Object

Decrypt decrypt(“account”,“password”)



9
10
11
12
13
14
15
16
17
18
# File 'lib/info_vault.rb', line 9

def decrypt(key,pass_phrase,file="")
  file = File.open(File.expand_path(File.join('config','protected_info.yaml')),'r') if file.empty?
  data = YAML::load(file)
  decrypter = OpenSSL::Cipher.new 'AES-128-CBC'
  decrypter.decrypt
  decrypter.pkcs5_keyivgen pass_phrase,data[key.to_sym][:salt]

  plain = decrypter.update data[key.to_sym][:encrypted]
  plain << decrypter.final
end