2

我正在构建我们的服务器系统,以接受用户通过 Google Pay 购买产品。

在我们的用例中,我们的用户将从移动应用程序向谷歌支付服务器发出支付请求(PaymentDataRequest 对象)以获取支付令牌(响应中的PaymentMethodTokenizationData 对象),移动应用程序会将其发送到我们的后端服务器,我们的服务器将转发将此令牌发送到支付网关以进行进一步的支付过程。

API 参考: https ://developers.google.com/pay/api/web/reference/object#PaymentMethodTokenizationData

标记化类型设置为 PAYMENT_GATEWAY

但是,我们对在我们的服务器系统中传输 PaymentMethodTokenizationData 存在一些安全问题。

由于我在 Google Pay API 官方文档中找不到关于这些问题的任何解释,有人可以帮我澄清以下问题吗?

(1) 谷歌支付令牌(PaymentMethodTokenizationData 对象)是代表“一张令牌化信用卡”还是“一次性交易信息”?

(2) 可以重复使用同一个支付令牌多次购买产品而无需请求新令牌吗?

(3) 此支付令牌是否仅限用于一个特定的交易 ID?例如,如果令牌泄露,是否有人可以使用它进行另一次购买?

(4) 这个支付令牌只能被支付网关用来收款吗?换句话说,除了支付网关,没有人可以从令牌中提取任何支付信息(信用号码,交易信息......),因此我们不需要任何进一步的安全机制来在网络上传输这个令牌.

谢谢

4

1 回答 1

3

如果没有清楚地阅读文档,我们深表歉意。您可以在API 解释视频或文档中的支付数据加密部分了解更多关于这些细节的信息。如果您认为有更明显的领域应该包含此信息,我们很想听听您的想法。

对于您的问题:

  1. PaymentMethodTokenizationData有效载荷包含有关用户为完成交易而选择的支付方式的信息(例如:卡)。
  2. 根据服务条款的规定,这些 API 返回的信息只能用于完成用户发起的一项交易。
  3. (& 4) 从 Google Pay 获得的有效负载不能在您的支付处理器域之外使用。在离开 Google 服务器之前,有效负载会被非对称加密,使用一对密钥对,只有您的处理器持有解密消息内容所需的私钥 - 如果您的业务处理付款,则只有您自己的服务器持有。因此,如果加密的有效载荷被泄露,它只不过是一个没有特定应用的随机字符序列。
  4. 除了确保将加密的有效负载中继到处理支付的服务器/系统并在交易完成后立即删除/清除这些 API 返回的任何数据之外,不需要额外的安全机制。

希望能帮助到你。

于 2019-07-13T17:38:06.750 回答