Sha256: f2b1fc801024901aeb5a3ff9fcab4fb101d96e4fd9bef1a3f798b5bec5445698
Contents?: true
Size: 461 Bytes
Versions: 11
Compression:
Stored size: 461 Bytes
Contents
require 'digest/md5' module WxPay module Sign def self.generate(params) key = params.delete(:key) query = params.sort.map do |k, v| "#{k}=#{v}" if v.to_s != '' end.compact.join('&') Digest::MD5.hexdigest("#{query}&key=#{key || WxPay.key}").upcase end def self.verify?(params) params = params.dup sign = params.delete('sign') || params.delete(:sign) generate(params) == sign end end end
Version data entries
11 entries across 11 versions & 1 rubygems