我所知道的验证是:
是否还有其他验证:)(我希望很多人都不知道所有这些)
我问的原因是因为我无意中听到有一个针对过期或 CCV 的校验和编号。我只是想检查一下。
最佳答案
不要把任何建议当作福音。卡号由 6 位发卡行识别码 (IIN)、帐号和 luhn 校验位组成。 IIN 范围不断变化,依赖此信息的行业部门(例如支付处理器)通常会随着变化的发生而更新。假设卡号应该在 16 到 19 位之间并以 3、4、5 或 6 开头是相当安全的。除此之外,尝试从 IIN 识别卡类型很容易出错,除非您经常更新。
卡号的最后一位是校验位,用于检测运算符(operator)输入卡号时可能发生的换位错误。 wikipedia article 是获取更多信息和代码示例的好来源。
如果您可以物理访问卡和磁条读卡器,则轨道 2 包含银行卡信息。详细信息包括卡号、有效期、LRC(校验位)和服务代码。服务代码(仅在磁条上可用)告知如何使用该卡,例如仅用于国家支付、仅用于在 ATM 上使用(不是作为支付卡)、是否应提供现金返还等。
安全数字永远不会压印在卡上,或记录在磁条上。除了美国运通卡外,所有的都应该是三位数(总是 4 位数)
仅用于手动(健全性)检查。授权请求期间未发送
一个常见的误解是不能使用过期的卡。他们经常可以,但他们必须先通过在线授权(以便收单行对是否允许有最终决定权)。到期日期最长可达 future 20 年(在某些极少数情况下甚至更长)
仅适用于某些卡类型。应该在授权请求中被捕获和使用。
关于algorithm - 不需要连接到金融机构的信用卡校验和验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4514430/