Sha256: 23c214a4131e17021cbdb420a5390608da14bd873ce051ac77d89768d060cf55

Contents?: true

Size: 516 Bytes

Versions: 2

Compression:

Stored size: 516 Bytes

Contents

module Gibberish
  class HMAC
    DIGEST = {
      :sha1 => OpenSSL::Digest::Digest.new('sha1'),
      :sha256 => OpenSSL::Digest::Digest.new('sha256')
    }

    def self.digest(key, data, opts={})
      digest_type = opts[:digest] || :sha1
      if opts[:binary]
        OpenSSL::HMAC.digest(DIGEST[digest_type], key, data)
      else
        OpenSSL::HMAC.hexdigest(DIGEST[digest_type], key, data)
      end
    end
  end

  def self.HMAC(key, data, opts={})
    Gibberish::HMAC.digest(key, data, opts)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gibberish-0.0.2 lib/gibberish/hmac.rb
gibberish-0.0.1 lib/gibberish/hmac.rb