module Barzahlen::Middleware
Public Class Methods
generate_bz_signature( payment_key, request_host_header, request_method, request_date_header, request_host_path = "", request_query_string = "", request_body = "", request_idempotency_key = "")
click to toggle source
# File lib/barzahlen/middleware.rb, line 46 def self.generate_bz_signature( payment_key, request_host_header, request_method, request_date_header, request_host_path = "", request_query_string = "", request_body = "", request_idempotency_key = "") request_body_digest = OpenSSL::Digest.hexdigest("SHA256", request_body.to_s || "") raw_signature = "#{request_host_header}\n"\ "#{request_method.upcase}\n"\ "#{request_host_path}\n"\ "#{request_query_string}\n"\ "#{request_date_header}\n"\ "#{request_idempotency_key}\n"\ "#{request_body_digest}" OpenSSL::HMAC.hexdigest("SHA256", payment_key, raw_signature) end