Sha256: d70315ee5f487eb653714a7859e0b05d157bac8bc54b73385d9b82ea3ef93b18
Contents?: true
Size: 768 Bytes
Versions: 1
Compression:
Stored size: 768 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['A01Y_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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ipizza-0.4.0 | lib/ipizza/provider/nordea/authentication_request.rb |