Luhn 算法 (模10校验)

用于 ICCID、IMEI、信用卡号等智能卡标识符的校验位计算与验证。

可包含或不包含校验位,工具将自动识别模式。
等待操作...

※ Luhn 算法通过加权和取模10验证,广泛用于 SIM 卡 ICCID、IMEI 等。

Luhn 算法详解

Luhn 算法(又称模 10 算法)由 IBM 科学家 Hans Peter Luhn 于 1954 年提出,是一种简单的校验和算法,用于验证各种标识号码的有效性。Luhn 算法能检测到单数字替换错误和相邻数字交换错误(除 09/90 外),广泛用于信用卡号、IMEI 号、ICCID 号等标识号码的校验。

算法步骤

1. 从右到左对每一位数字编号(第一位为校验位,第二位开始计算)。2. 从右到左,对偶数位数字(第二位、第四位等)乘以 2,若结果大于 9 则减去 9(等价于各位数字相加)。3. 将所有处理后得到的数字相加。4. 若总和模 10 等于 0,则号码有效。

例如验证信用卡号 4111111111111111:从右到左处理,偶数位乘 2 后减 9,最终所有数字之和能被 10 整除,因此该号码通过 Luhn 校验。

实际应用

本工具支持计算和验证 Luhn 校验位。输入不带校验位的号码可自动计算校验位,输入完整号码可验证是否有效。在开发支付系统或 SIM 卡管理工具时,Luhn 校验是输入验证的第一道防线。