Sha256: dc135c9c4033042810703a18ad3bf07754e6a33dcb9f4be8fd7c4a1233a28647
Contents?: true
Size: 763 Bytes
Versions: 13
Compression:
Stored size: 763 Bytes
Contents
require 'digest/md5' module Ipizza::Provider class Nordea::AuthenticationRequest < Ipizza::AuthenticationRequest attr_accessor :params attr_accessor :service_url def sign(key_path) key = File.read(key_path).strip params['MAC'] = Digest::MD5.hexdigest(mac_data_string(key)).upcase end def request_params params.inject(Hash.new) { |h, v| h["A01Y_#{v.first}"] = v.last; h } end private def mac_data_string(key) order = ['ACTION_ID', 'VERS', 'RCVID', 'LANGCODE', 'STAMP', 'IDTYPE', 'RETLINK', 'CANLINK', 'REJLINK', 'KEYVERS', 'ALG'] datastr = order.inject('') do |memo, param| memo << params[param].to_s << '&' end datastr << key << '&' end end end
Version data entries
13 entries across 13 versions & 1 rubygems