银行卡号验证器

用 Luhn 算法检查卡号,识别卡组织(Visa、Mastercard、Amex、Discover、JCB、银联等)并验证长度。不会发送任何数据。

空格和连字符会被忽略。

结果号码有效(通过 Luhn 校验和长度规则)
卡组织Visa
Luhn 校验通过
长度16 位(允许:13, 16, 19)
长度符合该卡组织要求是
格式化后4111 1111 1111 1111
安全码长度3
所有计算都在浏览器中完成,卡号不会发送到任何地方。结果有效只代表号码格式正确,不代表该卡存在、已激活或有余额。开发测试请使用官方测试卡号(如 4111 1111 1111 1111)。

什么是 银行卡号验证器?

这个验证器检查支付卡号的格式是否正确:运行 Luhn 校验和,根据发卡机构号段(IIN/BIN)识别卡组织,验证长度是否符合该卡组织的要求,并按该卡组织常用的分组方式格式化卡号。一切都在你的浏览器中运行。

如何使用 银行卡号验证器

  1. 输入或粘贴卡号;空格和连字符会被忽略。
  2. 查看结果:总体结论、卡组织、Luhn 校验和、长度以及是否允许。
  3. 按需使用格式化后的卡号和安全码长度来制作测试数据。

示例

输入
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 是银联的主要号段。一些联名卡也会在其他卡组织上运行,只有发卡行的数据才能判断。

探索更多分类