【问题标题】:What is the difference between these 2 security requirements for Paypal IPN?Paypal IPN 的这两个安全要求有什么区别?
【发布时间】:2018-11-28 23:49:28
【问题描述】:

在 2018 年 6 月 30 日完成的 Paypal IPN 的这两个安全要求有什么区别?

  1. TLS 1.2 和 HTTP/1.1 升级

    https://www.paypal-notice.com/en/TLS-1.2-and-HTTP1.1-Upgrade/

    为确保我们系统的安全性并遵守行业最佳做法,PayPal 正在更新其服务,要求所有 HTTPS 连接都使用 TLS 1.2。此时,PayPal 还将要求所有连接都使用 HTTP/1.1。

  2. IPN 验证回传到 HTTPS

    https://www.paypal-notice.com/en/IPN-Verification-Postback-to-HTTPS/

    https://www.paypal.com/sg/webapps/mpp/ipn-verification-https

    IPN 消息服务要求您确认收到这些消息并对其进行验证。此过程包括将消息发回 PayPal 进行验证。过去,PayPal 允许对这些回发使用 HTTP。为了进一步提高安全性,回发到 PayPal 时只允许使用 HTTPS。

1. 和 2. 有什么区别?

第 2 点说 IPN 验证回发需要 HTTPS,第 1 点还说 HTTPS 是强制性的(但是否用于 IPN 回发并不精确?)

在我们的 ipn.php 中是否有 2 个不同的东西需要更新,还是基本相同?


注意:

  • This 似乎确认,截至 2018 年 6 月,对 IPN 进行 HTTPS 调用还不是强制性的:将 URL http://example.com/ipn.php 提供给 Paypal(而不是 HTTPS)仍然可以:

    此时,从 PayPal 到商家的 IPN 侦听器的出站 IPN 呼叫不需要 HTTPS。

【问题讨论】:

标签: php paypal https paypal-ipn tls1.2


【解决方案1】:

关于 HTTPS:HTTP 是用于与 Web 服务交互的协议,目前有 1.0、1.1 和 2.0 版本。 Paypal 只是声明他们不再支持古老的 1.0 版(从 1996 年开始),并且至少需要 1.1 版(从 1999 年开始)。

关于 TLS:TLS 是 HTTPS 使用的加密标准,目前有 1.0、1.1、1.2 和 1.3 版本。他们正在取消对 1.0 和 1.1 的支持,因为这是符合 PCI-DSS(安全支付标准)的必要条件——因此,所有支付提供商今年夏天都将转向 TLS 1.2。这应该是一个几乎无法察觉的变化,因为当前所有的浏览器和库都支持 TLS 1.2。

所有这些都针对他们的实际网站 - https://www.paypal.com。因此,您在该网站上所做的一切现在都有这些变化——如果您使用 TLS 1.0 或 1.1,或者如果您使用 HTTP 1.0,它将不再工作。人们实际上依赖低于 1.2 的 TLS 或他们专门使用 HTTP 1.0 的情况应该不多,但您可能需要检查是否不确定。

第二个声明只是意味着您不能再使用未经加密的 HTTP 来验证付款,这又是对 Paypals 网站的调用。您提到的 HTTPS 不是“强制性”的是 Paypal 对您的 Web 服务/网站的调用(通知您该付款),但是您随后为验证它而进行的调用必须是 HTTPS。不过,我建议您始终使用 HTTPS,这样您就不必担心了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-14
    • 2014-11-12
    • 2015-10-02
    • 2011-08-01
    • 2012-06-12
    • 2016-10-06
    • 1970-01-01
    相关资源
    最近更新 更多