银行卡号校验
用 Luhn 算法校验银行卡号是否合法。
什么是银行卡号校验?
银行卡号校验工具基于 Luhn 算法(也叫模 10 算法)验证一串数字是否符合银行卡号的校验位规则。Luhn 算法的做法是:从卡号最后一位开始向左,偶数位(从右数第二位起)数字乘以 2,若结果超过 9 则减去 9,再把所有位数字相加,如果总和能被 10 整除则校验通过。这个算法被几乎所有主流银行卡、信用卡(Visa、MasterCard、银联等)采用,用来快速过滤掉明显打错的卡号。
为什么使用银行卡号校验?
在网页表单、收银系统里输入银行卡号时,前端可以先用 Luhn 算法做基础格式校验,及时提示"卡号格式不正确",减少因用户手误多打或少打一位数字导致的无效提交,降低后端和银行接口的无效请求量。 但需要明确的是,Luhn 校验只能验证卡号"数字组合在数学上自洽",并不能验证这张卡是否真实存在、是否属于某人、余额是否充足——这些必须通过银行或支付网关的真实接口才能确认。
使用示例
校验一个测试卡号
输入常见的 Visa 测试卡号 4111111111111111,按 Luhn 算法计算校验和能被 10 整除,工具会提示"格式校验通过",这类号码常被支付平台的沙箱环境用作测试卡号。
发现打错的卡号
若用户本该输入 6222021234567890123 却少打一位变成 622202123456789012,位数变化会导致偶数位/奇数位的加权对象整体错位,Luhn 校验和大概率不再能被 10 整除,工具会提示"格式校验不通过",帮助用户在提交前发现问题。
结合卡 BIN 判断卡组织
卡号前 6-8 位(BIN/IIN)通常能反映发卡机构和卡组织,例如以 4 开头多为 Visa,以 62 开头多为银联,工具校验通过的同时若展示了 BIN 信息,可粗略判断卡片类型,但具体发卡行信息仍需查询官方 BIN 库确认。
使用提示
出于隐私和资金安全考虑,任何时候都不建议在网页工具中输入真实完整的银行卡号,测试和演示请使用公开发布的标准测试卡号。
常见问题
Luhn 算法是怎么校验的?
校验通过就说明这张卡真实存在吗?
数据会上传吗?
这个工具安全吗,我的卡号会被上传吗?
为什么有的真实卡号在这里显示校验不通过?
信用卡和储蓄卡的校验规则一样吗?
相关工具
← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。