Module: MyAlipay::Notify

Defined in:
lib/my_alipay/notify.rb

Class Method Summary collapse

Class Method Details

.verify?(params) ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/my_alipay/notify.rb', line 4

def self.verify? params
  params.stringify_keys
  params.delete('sign_type')
  params.delete('controller')
  params.delete('action')
  sign =  params.delete('sign')
  sign = Base64.decode64(sign)
  sign_str = MyAlipay::Utils.params_to_string params
  digest = OpenSSL::Digest::SHA256.new
  pkey = OpenSSL::PKey::RSA.new(Base64.decode64(MyAlipay.alipay_public_key))
  pkey.verify(digest, sign, sign_str)
end