module Backup

Public Class Methods

aes(command, key, data) click to toggle source
# File lib/backup.rb, line 107
def self.aes(command, key, data)
  aes = OpenSSL::Cipher::Cipher.new('aes-256-cbc').send(command)
  aes.key = key
  aes.update(data) << aes.final
end
decrypt_data(key, data) click to toggle source
# File lib/backup.rb, line 117
def self.decrypt_data(key, data)
  Backup::aes(:decrypt, key, data)
end
encrypt_data(key, data) click to toggle source
# File lib/backup.rb, line 113
def self.encrypt_data(key, data)
  Backup::aes(:encrypt, key, data) unless data.empty?
end
fetch_versions_of_backup(path) click to toggle source
# File lib/backup.rb, line 101
def self.fetch_versions_of_backup(path)
  Dir["#{path}/*"].map do |backup|
    backup.match(/[0-9]{12}$/)[0] if backup.match(/[0-9]{12}$/)
  end.compact.sort
end