神奇的银行卡校验位
銀行卡的最后一位數字是校驗位,用于驗證銀行卡的有效性。誰要是轉賬時輸錯卡號能轉到其他人賬戶,這運氣和RP無法形容了。還有一些人在同一柜員處連著開卡,發現銀行卡不是連號,以為是工作人員隨機拿的卡,其實把最后一位校驗數字忽略是連號的。
銀行卡用的是Luhn檢驗數字算法,也叫做模數10公式,是一種簡單的算法
銀行卡校驗過程
1、從卡號最后一位數字開始,逆向將奇數位相加。
2、從卡號最后一位數字開始,逆向將偶數位數字,先乘以2(如果乘積為兩位數,則將其減去9),再求和。
3、將奇數位總和加上偶數位總和,結果應該可以被10整除。
例如,卡號是:5432123456788881
則奇數、偶數位(紅色數字)分布:5432123456788881
奇數位數字是 4 2 2 4 6 8 8 1 求和=35
偶數位乘以2(乘積為兩位數要減去9)的結果:1 6 2 6 1 5 7 7,再求和=35。
最后35+35=70可以被10整除,認定校驗通過
大家可以拿自己的卡算算,肯定都能被10整除