Class: EventShipper::Filter::Encrypt

Inherits:
Object
  • Object
show all
Includes:
Protocol
Defined in:
lib/event_shipper/filter/encrypt.rb

Overview

Takes a Protocol::Transmission object, encrypts it and turns it into something Decrypt can read from the wire. (a string)

Instance Method Summary collapse

Methods included from Protocol

encrypted, event, parse_encrypted, parse_transmission, transmission

Constructor Details

#initialize(user, password) ⇒ Encrypt

Returns a new instance of Encrypt.



58
59
60
61
# File 'lib/event_shipper/filter/encrypt.rb', line 58

def initialize user, password
  @user = user
  @algo = AES256.new(password)
end

Instance Method Details

#en(transmission) ⇒ Object



63
64
65
66
67
68
69
70
71
# File 'lib/event_shipper/filter/encrypt.rb', line 63

def en transmission
  salt, iv, ciphertext = @algo.enc(transmission)

  encrypted(
    iv: iv, 
    salt: salt, 
    user: @user, 
    ciphertext: ciphertext).serialize_to_string
end