如果客户端在服务器上强制执行 TLS 1.2,为什么 Stripe 允许它们只支持 TLS 1.0?
Why do Stripe allow clients that only support TLS 1.0 if they enforce TLS 1.2 on the server?
Stripe 是一种支付处理服务,其工作原理大致如下:
- 用户访问我们的网络应用程序并在表单中填写他们的银行卡详细信息
- Stripe 提供并加载到页面上的
<script>
标记中的一些 JavaScript 向 Stripe 的服务器发出异步请求,服务器将卡片详细信息交换为令牌
- 令牌被发布到我们的应用程序后端,后者将其发送回 Stripe。这会导致在用户的银行收取费用
我们的服务器是only allowed to communicate with Stripe's API over TLS 1.2.
但是,Stripe 前端 JavaScript 支持 IE9 和 IE10,它们不能立即处理 TLS 1.2。因此,这些浏览器上的某些用户会使用较弱的 TLS 1.0.
请求 Stripe JavaScript
如何阻止有人为这些用户欺骗 Stripe JavaScript 和中间人窃取他们的银行卡详细信息?
问得好!
PCI 安全标准委员会将 TLS 1.0 截止日期设置为 2018 年 6 月 30 日 [1]。
为了简化过渡,Stripe 开始对 2016 年 7 月 1 日之后创建的帐户强制执行 TLS 1.2 [2],并逐步取消对旧帐户的 TLS 1.0 和 1.1 的支持。
也就是说,对于客户端库 (Checkout and Stripe.js),如您所述,Stripe 仍然允许 TLS 1.0 / 1.1。这是因为 Stripe 不想不必要地阻止客户付款,即使他们使用的是无法使用 TLS 1.2 的旧浏览器/OS。
当然,到 2018 年 6 月 30 日,使用 TLS 1.0 浏览器的客户将无法再通过 Stripe(或任何其他在线支付处理器)进行支付。
Stripe 是一种支付处理服务,其工作原理大致如下:
- 用户访问我们的网络应用程序并在表单中填写他们的银行卡详细信息
- Stripe 提供并加载到页面上的
<script>
标记中的一些 JavaScript 向 Stripe 的服务器发出异步请求,服务器将卡片详细信息交换为令牌 - 令牌被发布到我们的应用程序后端,后者将其发送回 Stripe。这会导致在用户的银行收取费用
我们的服务器是only allowed to communicate with Stripe's API over TLS 1.2.
但是,Stripe 前端 JavaScript 支持 IE9 和 IE10,它们不能立即处理 TLS 1.2。因此,这些浏览器上的某些用户会使用较弱的 TLS 1.0.
请求 Stripe JavaScript如何阻止有人为这些用户欺骗 Stripe JavaScript 和中间人窃取他们的银行卡详细信息?
问得好!
PCI 安全标准委员会将 TLS 1.0 截止日期设置为 2018 年 6 月 30 日 [1]。
为了简化过渡,Stripe 开始对 2016 年 7 月 1 日之后创建的帐户强制执行 TLS 1.2 [2],并逐步取消对旧帐户的 TLS 1.0 和 1.1 的支持。
也就是说,对于客户端库 (Checkout and Stripe.js),如您所述,Stripe 仍然允许 TLS 1.0 / 1.1。这是因为 Stripe 不想不必要地阻止客户付款,即使他们使用的是无法使用 TLS 1.2 的旧浏览器/OS。
当然,到 2018 年 6 月 30 日,使用 TLS 1.0 浏览器的客户将无法再通过 Stripe(或任何其他在线支付处理器)进行支付。