# File lib/fog/core/hmac.rb, line 4 def initialize(type, key) @key = key case type when 'sha1' setup_sha1 when 'sha256' setup_sha256 end end
# File lib/fog/core/hmac.rb, line 14 def sign(data) @signer.call(data) end
# File lib/fog/core/hmac.rb, line 20 def setup_sha1 @digest = OpenSSL::Digest.new('sha1') @signer = lambda do |data| OpenSSL::HMAC.digest(@digest, @key, data) end end
# File lib/fog/core/hmac.rb, line 27 def setup_sha256 @digest = OpenSSL::Digest.new('sha256') @signer = lambda do |data| OpenSSL::HMAC.digest(@digest, @key, data) end end