从PHP脚本发送信用卡信息是否安全?

时间:2011-03-21 14:17:10

标签: php security e-commerce credit-card

我正在构建一个接受信用卡订单的应用程序,但不会以编程方式授权付款。相反,管理员必须审查每个订单并手动将其信息输入支付网关以完成支付(他们的决定,而不是我的决定)。我想知道最好的存储方式(即使它是暂时的)是什么,并将其传递给管理员。

可以通过电子邮件发送未加密的此类信息吗?如果我对信息进行加密,那么通过没有风险的管理面板向他们提供信息的最佳方式是什么?

请不要告诉我Google“PCI合规性”。

3 个答案:

答案 0 :(得分:5)

NO

如果接收计算机上有病毒怎么办?如果附近有一个数据包嗅探器怎么办(不太可能,但仍然......)。为什么要在电子邮件中发送此类易变信息呢?持卡人不会知道他们自己卡上的号码吗?我想如果你想说“你有[这张]卡”,只发送该号码的最后四位数字,例如“以1234结尾的Visa借记”或“Solo,即将到期7/15”。

答案 1 :(得分:3)

简短:没有好方法。让我们说清楚:

NO。好。方法。没有。零。 NADA。 EVER。

Long:您只能在潜在的黑客和这些数据之间放置尽可能多的障碍。

  • 任何信用卡信息被输入或显示的网页都必须使用 HTTPS 。这是真正的最低限度,或者任何拥有网络嗅探器的人都可以获得这些凭据。
  • 使用强大的算法:将这些凭据加密到数据库中加密:RSA,Blowfish。
  • 将加密密钥保存在“安全”的位置。 这是最薄弱的一点:当您在管理面板上显示信息时,您的脚本需要它来对信息进行解密。所以把它放在一个最小访问权限的文件中(例如,linux octal权限设置为400,所有权为specialuser:specialgroup)。
  • 不要给这个用户和root用户提供密码,只用SSH密钥设置SSH登录。
  • 是paranoïd:每天更改用户密码,解密数据并每天更换密钥。

修改

实际上最薄弱的一点是用户的计算机。但当他被指控1万美元的可口可乐和卡拉什尼科夫时,他会说

  

我确定我给了我的这个网站   凭证被黑了。我永远不   再次从他们那里买来

答案 2 :(得分:0)

不 - 这不安全。

即使您加密电子邮件,我也不会向您购买任何东西。但话说回来,即使您只通过HTTPS发送数据,我也不太可能从您这里购买东西 - 我只将我的cc编号提供给我可以合理信任的公司(Google,Worldpay,Paypal,Sagepay,Netbanx .. 。)