银行卡号验证器
用 Luhn 算法检查卡号,识别卡组织(Visa、Mastercard、Amex、Discover、JCB、银联等)并验证长度。不会发送任何数据。
空格和连字符会被忽略。
| 结果 | 号码有效(通过 Luhn 校验和长度规则) |
|---|---|
| 卡组织 | Visa |
| Luhn 校验 | 通过 |
| 长度 | 16 位(允许:13, 16, 19) |
| 长度符合该卡组织要求 | 是 |
| 格式化后 | 4111 1111 1111 1111 |
| 安全码长度 | 3 |
什么是 银行卡号验证器?
这个验证器检查支付卡号的格式是否正确:运行 Luhn 校验和,根据发卡机构号段(IIN/BIN)识别卡组织,验证长度是否符合该卡组织的要求,并按该卡组织常用的分组方式格式化卡号。一切都在你的浏览器中运行。
如何使用 银行卡号验证器
- 输入或粘贴卡号;空格和连字符会被忽略。
- 查看结果:总体结论、卡组织、Luhn 校验和、长度以及是否允许。
- 按需使用格式化后的卡号和安全码长度来制作测试数据。
示例
378282246310005
American Express · Luhn passed · 15 digits (allowed: 15) · formatted 3782 822463 10005 · security code length 4
何时使用 银行卡号验证器
适合测试结账表单、生成看起来正确的测试数据,或在提交前发现输入错误。校验通过并不意味着该卡真实存在、处于激活状态或有余额,只有发卡行才能通过支付授权来确认。切勿把真实卡号粘贴到你不信任的工具中。
银行卡号验证器 的工作原理
Luhn 算法从右往左把每隔一位的数字加倍,结果大于 9 时减去 9,然后检查总和能否被 10 整除。卡组织根据已知的 IIN 号段检测,按从最具体到最宽泛的顺序检查:Amex 34/37、Diners 300–305/36/38/39、JCB 3528–3589、Mir 2200–2204、Mastercard 51–55 和 2221–2720、Discover 6011/644–649/65、银联 62/81、Visa 4、Maestro 50/56–69。分组遵循各卡组织的习惯(Amex 为 4-6-5,其余为 4-4-4-4)。
常见用例
- 验证 4111 1111 1111 1111 等官方测试卡号能通过你的表单校验。
- 在用户输入时,在结账表单中显示正确的卡组织标志。
- 在调用支付 API 之前,发现输错的数字。
- 讲解或演示 Luhn 校验和的工作原理。
安全提示
开发时请使用测试卡号。该工具不会存储或传输你输入的内容,但除了商户的结账页面外,请避免在任何网站上输入真实银行卡号。
常见问题
Luhn 校验通过就说明这张卡是真的吗?
不是。大约十分之一的随机数字都能通过 Luhn 校验。它只能发现输入错误。
卡号会被发送到服务器吗?
不会。所有检查都是浏览器中的纯 JavaScript,不会发出任何网络请求。
为什么以 62 开头的 16 位数字显示为银联?
62 是银联的主要号段。一些联名卡也会在其他卡组织上运行,只有发卡行的数据才能判断。