Class: Scl::Digest

Inherits:
Object
  • Object
show all
Defined in:
lib/scl/digest.rb

Class Method Summary collapse

Class Method Details

.digest(digest, data) ⇒ Object



3
4
5
6
7
# File 'lib/scl/digest.rb', line 3

def self.digest(digest, data)
  if digest_exists?(digest)
    OpenSSL::Digest.const_get(digest.upcase).new.hexdigest(data)
  end
end

.hmac(digest, data, key = nil) ⇒ Object



9
10
11
12
13
14
15
# File 'lib/scl/digest.rb', line 9

def self.hmac(digest, data, key=nil)
  if digest_exists?(digest)
    require 'securerandom'
    key = key || SecureRandom.hex
    [OpenSSL::HMAC.hexdigest(digest, key, data), key]
  end
end