2013 年 3 月编辑:
一个非常相关的资源是PCI 安全标准委员会,该组织于 2006 年由五个全球最大的信用卡品牌(AmEx、Visa、MasterCard、JCB International 和 Discovery)成立,是事实上的安全权威支付卡行业 (PCI) 的事宜。
该组织特别发布了PCI 数据安全标准,目前是 2.0 版,涵盖诸如管理完整或部分信用卡号等问题。该文档如果免费提供,但需要简单的注册和许可条款的确认。
以下为原文,c.2009 年的回答,大部分是正确的,但都是杜撰的。
一种常见的做法(是否合法,我不知道)是存储最后 4 位数字,因为这可用于帮助客户确认他/她的哪些信用卡用于特定交易。
在不显着提高恶意人员猜测完整号码的几率的情况下,可以存储前 4 位数字s,它们代表发行卡的金融机构,如问题中所述。
不要,保存比这 8 个数字更多的数字,因为否则,鉴于LUHN-10 校验和,您可能会提供足够的信息来使猜测完整数字更加合理(如果仍然相对困难,即使从给定的系列使用的洞察力发行人,在给定的时间段内,但应该小心......)
为了使整个事情在技术上和法律上更安全,您可以考虑仅在客户明确允许的情况下存储此类信息。您还应该考虑用一个简单的散列来屏蔽这些信息,以便存储在数据库中。
此外,在特定交易之后,您可以/应该存储的是信用卡处理器在提交交易时提供的交易 ID 。此 ID 是允许定位您甚至需要的大部分(全部?)信息的关键,特定交易是否存在任何问题。这种类型的信息通常可以从处理公司维护的安全网站查询,以及一些汇总报告,其中可能包括按卡类型(美国运通、维萨...)分组,如果这就是您考虑存储的原因前四个。