首页 > Hack > 验证信用卡号码

验证信用卡号码

2007年8月21日

mastercard必须包含16位数字,其中前两位必须为51~55。visacard可能有13位或16位,并且首位数字总是4。

其实,真正校验信用卡号码还要用到Luhn算法,Luhn算法是验证唯一标识符的方法,常用来验证信用卡号码。

Luhn算法:

1、从卡号最后一位数字开始,逆向将奇数位(1、3、5等等)相加。

2、将偶数位数字相加,但是这里有个麻烦。必须先将数字乘以2,如果结果是两位数,将两个位上数字相加。然后将这些结果加入总和中。

3、将奇数位总和加上偶数位总和,如果信用卡号码是合法的,结果应该可以被10整除。

例如有卡号:5432123456788881
奇数位 4 2 2 4 6 8 8 1 和 35
偶数位 5 3 1 3 5 7 8 8
偶数位乘 2 10 6 2 6 10 14 16 16
两数位相加 1 6 2 6 1 5 7 7 和 35
总和:70,可以被10整除,合法卡号。

这仅仅是理论上分析合理的卡号序列,不代表此卡号一定真实有效存在,有可能未发行或已被废除都有可能。
也可以使用下列简单的javascript程序校验信用卡号码(注:网站不会记录你的输入,ctrl+U查看源代码)

Hack

  1. 目前还没有任何评论.
  1. 目前还没有任何 trackbacks 和 pingbacks.