About Apple Pay
Apple Pay是一种移动支付技术,让使用者把它们对真实的物品和服务的支付信息以一种方便和安全的方式给你。
对于在app中给出的数字物品和服务,可查看In-App Purchase Programming Guide。
Working with Apple Pay
使用Apple Pay功能的Apps需要在Xcode 中开启Apple Pay capabilities。也需要注册一个商家标识并设置密钥(用来加密发送支付数据给服务器)。
初始化支付时,app创建一个支付请求。该请求包含几乎全部的服务和商品购买,也包含任何额外的费用:税金、运费或者折扣。传送该请求给支付授权视图控制器,控制器展示该请求给用户并对任何需要的信息作出提示,例如运送地址或者账单地址。当用户与视图控制器进行交互时,调用代理用以更新请求。
一旦用户授权支付,Apple Pay加密支付信息用以保护未授权的第三方访问它。在设备上,Apple Pay发送支付请求给加密元件,该元件是一个用户设备上的专用芯片。该加密元件添加支付信息为指定的卡和商家生成一个加密的支付密钥。然后传递该密钥给Apple 服务器,在服务器上使用商家标识证书(Merchant Identifier certificate)解密。最后,服务器传递该密钥返回到app中继续处理。
支付密钥从不访问或者存取在Apple服务器上。该服务器仅仅可使用证书解密密钥。这种处理使得不用加密证书app安全的加密支付信息,且必须分配商家标识证书作为app的一部分。
更多关于Apple Pay安全的信息,可查看iOS Security Guide。
大多数情况下,app传送加密密钥给第三发支付平台解密并处理支付。然而,如果自己的团队有已经存在的支付基础设施,可以在自己的服务器上解密并处理支付。
更多关于支持Apple Pay的支付平台的信息,可查看develop.apple.com/apple-pay/。
欢迎小伙伴畅所欲言,各抒己见,文中内容尚有不足之处,期待大家的评论和指正。