# File lib/fog/core/hmac.rb, line 3 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 13 def sign(data) @signer.call(data) end
# File lib/fog/core/hmac.rb, line 19 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 26 def setup_sha256 @digest = OpenSSL::Digest.new("sha256") @signer = lambda do |data| OpenSSL::HMAC.digest(@digest, @key, data) end end