Module: Juno::Transformer::HMAC

Defined in:
lib/juno/transformer.rb

Class Method Summary collapse

Class Method Details

.sign(value, secret) ⇒ Object



170
171
172
# File 'lib/juno/transformer.rb', line 170

def self.sign(value, secret)
  OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('sha256'), secret, value) << value
end

.verify(value, secret) ⇒ Object



165
166
167
168
# File 'lib/juno/transformer.rb', line 165

def self.verify(value, secret)
  hash, value = value[0..31], value[32..-1]
  value if hash == OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('sha256'), secret, value)
end