Class: Carpool::Encryptor

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

Class Method Summary collapse

Class Method Details

.generate_payload(redirection, user_token) ⇒ Object



12
13
14
# File 'lib/carpool/encryptor.rb', line 12

def self.generate_payload(redirection, user_token)
  self.encode64(Marshal.dump({:redirect_to => redirection, :user => user_token}))
end

.generate_token(user_hash, token) ⇒ Object



5
6
7
8
9
10
# File 'lib/carpool/encryptor.rb', line 5

def self.generate_token(user_hash, token)
  digest  = self.create_digest(token)
  aes     = FastAES.new(digest.digest)  
  encoded = self.encode(user_hash)
  self.encode64(aes.encrypt(encoded))
end

.process_seatbelt(seatbelt) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/carpool/encryptor.rb', line 16

def self.process_seatbelt(seatbelt)
  seatbelt = Marshal.load(Base64.decode64(seatbelt))
  {
    :redirect_to => seatbelt[:redirect_to],
    :user        => self.recover_user(seatbelt[:user])
  }
end