class PGP::Encryptor

Attributes

recipients[RW]

Public Class Methods

new(key_string=nil, gpg_engine=nil) click to toggle source
# File lib/pgp/encryptor.rb, line 5
def initialize(key_string=nil, gpg_engine=nil)
  @gpg_engine = gpg_engine || GPG::Engine.new
  self.recipients = []
  add_keys(key_string) if key_string
end

Public Instance Methods

add_keys(key_string) click to toggle source
# File lib/pgp/encryptor.rb, line 11
def add_keys(key_string)
  self.recipients += @gpg_engine.import_key(key_string)
end
add_keys_from_file(filename) click to toggle source
# File lib/pgp/encryptor.rb, line 15
def add_keys_from_file(filename)
  add_keys(File.read(filename))
end
encrypt(cleartext, filename=nil, mtime=nil) click to toggle source
# File lib/pgp/encryptor.rb, line 19
def encrypt(cleartext, filename=nil, mtime=nil)
  result = @gpg_engine.encrypt(cleartext, recipients)

  unless filename.nil?
    File.write(filename, result[1])
  end

  result[1]
end
encrypt_file(file_path) click to toggle source
# File lib/pgp/encryptor.rb, line 29
def encrypt_file(file_path)
  encrypt(File.read(file_path))
end