一、ios 和 google 內購
ios IAP二次驗證
IAP(In App purchase):App和App Store服務器之間進行信息的傳遞,用戶在APP內部進行內購操作相當於用戶購買了App Store中的某個商品
iap服務器驗證流程
1.Apple完成購買,會返回一個完成購買的憑證
2.把憑證發送到後臺服務器進行驗證
3.後臺服務器把憑證發送給Apple驗證,Apple會返回數據告訴後臺是否有效
4.後臺服務器把結果發送給ios開發人員
參數 receipt_data
添加Gemfile
gem 'monza', github: 'gabrielgarza/monza'
驗證
Monza::Receipt.verify(params[:receipt_data])
google play二次驗證
和iap同理
參數
receipt_data
signature
rsa_crypt.rb
require 'openssl'
require 'base64'
class RsaCrypt
def self.verify(data, signature)
pubkey = OpenSSL::PKey::RSA.new(CONFIG.google_pay_public_key)
pubkey.verify(OpenSSL::Digest::SHA1.new, Base64.decode64(signature), data.to_s.strip)
end
end
公鑰驗證:
RsaCrypt.verify(params[:receipt_data], params[:signature])
備註:google_pay_public_key
找安卓工程師要