使用 HTTPS 将 CC 编号发送到服务器而不存储在数据库中

Posted

技术标签:

【中文标题】使用 HTTPS 将 CC 编号发送到服务器而不存储在数据库中【英文标题】:Sending CC number to server with HTTPS without storing in DB 【发布时间】:2018-08-09 07:53:31 【问题描述】:

我有一个服务器和一个在网络浏览器中运行的客户端应用程序。

我知道最好让客户直接向支付处理器(通过所谓的支付页面)提出请求

话虽如此,我想知道在安全性和PCI方面是否可以,通过加密的HTTPS传输将CC信息发送到服务器,服务器将数据发送到支付处理器而不保存抄送信息

我在服务器端使用 ruby​​ on rails 和一个名为 ActiveMerchant 的 gem 和另一个网关支持 gem,我可以找到一种方法从客户端直接向支付处理器付款。看来这个请求无论如何都应该通过我的服务器。

【问题讨论】:

【参考方案1】:

这很可能不行,因为信用卡数据在传输过程中(从 SSL 终止到您的 Rails 服务器)仍然未加密,并且也可能显示在服务器日志中(显然未加密)。

我们使用的支付提供商提供 CSE(客户端加密),它对客户端上的原始信用卡数据进行加密,使其永远不会作为原始/可读数据通过我们的服务器传输。加密是不对称的,并且加密密钥仅对支付网关可用,因此我们的后端服务器无法读取该数据。

【讨论】:

以上是关于使用 HTTPS 将 CC 编号发送到服务器而不存储在数据库中的主要内容,如果未能解决你的问题,请参考以下文章

如何将所有请求发送到 CGI 脚本而不出现在 .Htaccess 文件的 URL 中?

使用 mqtt 将值从 cc3200 发送到我的服务器

将数据发送到 iPhone 应用程序而不唤醒它

如何使用 HAProxy 发送响应而不将请求传递给 Web 服务器

将数据从通知发送到活动类而不重新启动意图

使用 PDO/MySQL 将自动增量编号附加到电子邮件中发送和发送电子邮件