信用卡几乎人人都有,但是你知道卡面上那一长串数字的含义吗?不仅不同位数的数字有不同含义,而且它们之间还有某些巧妙的数学关系。赶紧来看看吧!% m* P1 ^, {: U8 S- ^# k" [% o
/gkimage/ko/ms/zu/komszu.png
在我印象中国内的信用卡大多数都是16位的,虽然格式不尽相同,但是它们肯定符合上面所讲的大结构,即主要由三部分组成:发卡行标识代码、发卡行自定义位和校验位。. R8 F' w1 x9 F' b" X+ f3 Z& r
话说最后那个数学关系真是很有意思呢,我拿自己国内招行的银联卡也试了试,结果是80!
# q$ \6 y0 X2 o" I4 W( g3 b9 U 更新信息:/ }" _, l O! G# y
琳MM同学说到 :9 m0 X. O0 \7 O6 c! G3 |. U# J. C4 v
按照ISO 2894 中支付卡校验位的算法 The Luhn Mod-10 Method 规定:! ~; c/ g8 d8 R
对卡号上的每位数字乘以权重。其规则是,如果卡号数字个数是偶数,则第一位乘以2,否则就乘以1,然后以后分别是,1,2,1,2,1,2; 如果每位数字乘以权重后超过9 ,则需要减去 9; 将所有的处理过的加权数字求和,用 数字 10 求模运算; 余数应该是0,否则可能是输入错误。也可能是一个假号。& N- ?1 z! @: `7 G- m9 k
所以如果不符合这个校验规则的卡号,它的校验位一定出现计算错误呢。' e% C; _2 V- b0 ]: J
根据这个算法,对于偶数位的卡号,图示的方法是正确的。如果是奇数位,第一位乘以1,第二位乘以2,以此类推。接下来的算法都不变。 r) M9 e# {, ^! `; w( t
来源: gizmodo南通0 |