Class: UnionPay::Core::Signer

Inherits:
Object
  • Object
show all
Defined in:
lib/union-pay/core/signer.rb

Class Method Summary collapse

Class Method Details

.md5_sign(params, secret_key) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/union-pay/core/signer.rb', line 6

def self.md5_sign(params, secret_key)
  params = Utils.key_to_sym(params)
  params.delete(:signMethod)
  params.delete(:signature)
  str = params.sort.collect{|k, v| "#{k}=#{v}"}.join('&')
  Digest::MD5.hexdigest("#{str}&#{Digest::MD5.hexdigest(secret_key)}")
end

.sign!(params, secret_key = nil) ⇒ Object



14
15
16
17
18
19
# File 'lib/union-pay/core/signer.rb', line 14

def self.sign!(params, secret_key=nil)
  params = params.delete_if{|k, v| v.nil? || (v.respond_to?(:empty?) && v.empty? )}
  params[:signature] = self.md5_sign(params, secret_key)
  params[:signMethod] = 'MD5'
  params
end