我使用的 API 要求我通过 HTTP POST 请求(通过 swift)发送信用卡详细信息以完成付款。这无论如何安全吗?此外,如何安全地存储信用卡信息以便重复付款?
信用卡持有人的姓名、信用卡号、cvc 和到期日期均通过 POST 请求发送。然后API返回支付是否成功,以及信用卡号后四位。
简单地说,我对支付安全并不完全熟悉,并且想知道这是否安全,以及如何使用 swift 安全地保存支付信息,即使这是可能的。我不认为我可以在这个过程中使用 stripe,但我很想知道这是否也可能。
编辑: 我已经确认我使用的 API 实际上使用了 HTTPS 连接,而不仅仅是 HTTP 服务器。此时,我知道不要在本地保存信用卡信息,而应该在处理之前从第三方服务中检索它。谢谢大家!
使用 Swift 或任何其他编程语言并通过
HTTP
发送敏感信息并不安全,如评论中所述。
您应该使用
HTTPS
连接。
通过 HTTP 发送任何敏感信息并不安全,也不建议这样做。大多数支付网关不允许您在 HTTP 上建立会话。即使您使用 HTTPS,敏感信息通常也会被加密,有时会在客户端进行编码,然后服务器对其进行解密、解码和处理,从而为您发出的请求提供双重安全性。
只是为了让事情绝对清楚:
虽然 HTTPS 加密可能满足一些法律要求,但通常建议在客户端加密信用卡号码等敏感数据,以确保最大程度的保护并遵守相关法律和标准。
由于您的案例涉及您需要访问的 API...您别无选择。但我仍然想声明 https 并不完全安全这一事实,以便其他可能偶然发现此线程的人了解整个故事并意识到风险。