Method: AspisInit.run

Defined in:
lib/aspis/aspis_init.rb

.run(options) ⇒ Object



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'lib/aspis/aspis_init.rb', line 74

def self.run(options)
  if options[:public_key]
    unless options[:private_key]
      aspis_dir = File.expand_path('~/.aspis')
      options[:private_key] = aspis_dir + '/private_key'
    end
  end

  case options[:mode]
  when 'encrypt'
    if options[:public_key]
      puts Asymmetric.encrypt(ARGF.read, options[:public_key], options[:private_key], options[:ask_pass])
    else
      puts Symmetric.encrypt(ARGF.read, options[:opslimit], options[:memlimit], options[:ask_pass])
    end
  when 'decrypt'
    if options[:public_key]
      puts Asymmetric.decrypt(ARGF.read, options[:public_key], options[:private_key], options[:ask_pass])
    else
      puts Symmetric.decrypt(ARGF.read, options[:ask_pass])
    end
  when 'generate'
    GenerateKeys.generate(options[:opslimit], options[:memlimit], options[:ask_pass])
  end
end