Sha256: 918df5b183c9b680861e2b0690806364ad91e1c5c5b74fe62fa89b2b82ba90ed

Contents?: true

Size: 475 Bytes

Versions: 2

Compression:

Stored size: 475 Bytes

Contents

require 'base64'
require 'openssl'
require 'stringio'
require 'zlib'

module Adyen
  module Encoding
    def self.hmac_base64(hmac_key, message)
      digest = OpenSSL::HMAC.digest(OpenSSL::Digest.new('sha1'), hmac_key, message)
      Base64.strict_encode64(digest).strip
    end

    def self.gzip_base64(message)
      sio = StringIO.new
      gz  = Zlib::GzipWriter.new(sio)
      gz.write(message)
      gz.close
      Base64.strict_encode64(sio.string)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
adyen-1.6.0 lib/adyen/encoding.rb
adyen-1.5.0 lib/adyen/encoding.rb