Calculadora de dígito de control de Luhn
Datos de entrada
| Modo | Calcular dígito de control |
|---|---|
| Número | 7992739871 |
Calculadora de dígito de control de Luhn
Calcula el dígito de control de Luhn (módulo 10) de un número o comprueba si un número supera la suma de verificación de Luhn. Funciona con cualquier cadena de dígitos: números de identificación, IMEI y códigos de barras.
Datos de entrada
Número
compute_hint
Resultados
Introduce un valor para ver los resultados.
Resultado
Dígito de control de Luhn
El algoritmo de Luhn —también conocido como algoritmo módulo 10— es una fórmula de suma de verificación que protege los números identificadores largos frente a los errores de escritura accidentales. Funciona añadiendo un dígito adicional, el dígito de control, que se deriva de todos los demás dígitos. Una comprobación aritmética rápida sobre el número completo revela entonces si es internamente coherente. Hans Peter Luhn describió el método en IBM en 1954, y hoy está normalizado como parte de la norma ISO/IEC 7812.
Esta calculadora tiene dos modos: calcular un dígito de control para un número que todavía no lo tiene, y validar si un número completo cumple la condición de Luhn. Opera con cualquier cadena de dígitos, por lo que sirve igual para números de identificación, identificadores IMEI de dispositivos y códigos de barras.
Cómo funciona el algoritmo
Empezando por el dígito de la derecha y avanzando hacia la izquierda, se duplica cada segundo dígito. Cuando al duplicar se obtiene un número de dos cifras, se suman sus dígitos, lo que equivale a restar 9. Después se suman todos los valores resultantes. Para una carga sin dígito de control, el dígito de control es:
donde es la suma ponderada. Un número completo es válido cuando esa misma suma ponderada, esta vez incluyendo el dígito de control, es múltiplo de 10.
Ejemplo resuelto — 7992739871
Tomemos la carga 7992739871 (el ejemplo neutro de la especificación del algoritmo). Numera los dígitos desde la derecha y duplica cada segundo empezando en la posición 1:
| Posición (desde la derecha) | Dígito | Paso | Valor |
|---|---|---|---|
| 1 | 1 | ×2 | 2 |
| 2 | 7 | — | 7 |
| 3 | 8 | ×2 | 16 → 7 |
| 4 | 9 | — | 9 |
| 5 | 3 | ×2 | 6 |
| 6 | 7 | — | 7 |
| 7 | 2 | ×2 | 4 |
| 8 | 9 | — | 9 |
| 9 | 9 | ×2 | 18 → 9 |
| 10 | 7 | — | 7 |
Los valores suman . El dígito de control es, por tanto:
Al añadirlo se obtiene el número completo 79927398713. Para validar ese número completo, la suma ponderada da 70, que es múltiplo de 10, así que lo supera.
Qué errores detecta
El único dígito de control no puede detectar todos los errores, pero está ajustado a los errores que la gente comete de verdad al copiar números largos:
- Cualquier error de un solo dígito —un dígito mal tecleado— se detecta siempre.
- La mayoría de las transposiciones de dos dígitos adyacentes se detectan. La única excepción es intercambiar el par 09 por 90 (y viceversa), porque ambos producen la misma contribución ponderada.
Como usa una suma ponderada en base 10, el esquema de Luhn es una comprobación de integridad ligera, no un código corrector de errores: puede decirte que algo está mal, pero no qué dígito lo está. Para la corrección de errores, herramientas de la teoría de la codificación como una Calculadora de distancia de Hamming o un Calculadora de suma de verificación CRC son el siguiente paso adecuado.
Dónde aparecen los dígitos de control de Luhn
El esquema módulo 10 está integrado en muchos formatos de identificador cotidianos:
- Los números IMEI, los identificadores de 15 dígitos de los teléfonos móviles, terminan en un dígito de control de Luhn.
- Los números de tarjetas de pago y de fidelización llevan un dígito de Luhn final para que un terminal de punto de venta pueda rechazar un error de escritura evidente antes de contactar con la red.
- Los números nacionales y fiscales de identificación de varios países incluyen un dígito de Luhn.
- Los códigos de barras de productos y de envío usan Luhn o variantes de módulo 10 estrechamente relacionadas.
Qué significa y qué no significa superar la comprobación
El algoritmo de Luhn es una fórmula pública sin clave secreta. Superarlo solo demuestra que los dígitos de un número son coherentes entre sí; nunca que el número se haya emitido, registrado o pertenezca a alguien. Cualquiera puede escribir una cadena de dígitos que cumpla la comprobación.
Por eso Luhn se usa como filtro previo rápido: rechazar de inmediato las entradas claramente mal escritas y dejar lo que queda para una consulta autorizada. Es una ayuda a la calidad de los datos, y esta herramienta sirve para entender cómo funciona la suma de verificación y para probar cadenas de dígitos arbitrarias como identificadores, números IMEI y códigos de barras. Para una comprobación de integridad con clave y resistente a la manipulación se usaría en su lugar una función hash criptográfica; por qué importa ahí la longitud de la suma de verificación lo muestra la Calculadora de Probabilidad de Colisión de Hash.
Preguntas frecuentes (FAQ)
¿Qué es el algoritmo de Luhn?
El algoritmo de Luhn, también llamado algoritmo módulo 10, es una fórmula de suma de verificación sencilla que el científico de IBM Hans Peter Luhn publicó en 1954 y que está normalizada como parte de la norma ISO/IEC 7812. Añade a un número un dígito adicional —el dígito de control— para que una comprobación aritmética breve detecte los errores de escritura más habituales.
Para calcular el dígito de control, se empieza por el dígito de la derecha de la carga y se duplica cada segundo dígito. Si al duplicar se obtiene un número de dos cifras, se suman sus dígitos (o, equivalentemente, se resta 9). Se suman todos los valores resultantes y el dígito de control es (10 − suma mod 10) mod 10. Un número completo es válido cuando esa misma suma ponderada, incluido el dígito de control, es múltiplo de 10.
¿Dónde se usa el dígito de control de Luhn?
Los dígitos de control de Luhn aparecen en muchos números identificadores. El IMEI que identifica un teléfono móvil usa un dígito de Luhn, al igual que los números de cuenta de las tarjetas de pago y de fidelización, algunos números nacionales de identificación y diversos códigos de barras de productos y envíos.
El algoritmo está diseñado solo para detectar errores accidentales: un dígito mal tecleado o la mayoría de los casos de intercambio de dos dígitos adyacentes. Es una ayuda a la integridad de los datos en formularios y escáneres, no una forma de demostrar que un identificador es auténtico o está registrado.
¿Superar la prueba de Luhn significa que un número es real?
No. El algoritmo de Luhn es una fórmula pública sin clave secreta, por lo que superarlo solo significa que los dígitos son coherentes entre sí, no que el número se haya emitido a nadie. Cualquiera puede construir una cadena de dígitos que cumpla la comprobación.
Por eso Luhn se usa como filtro inicial para rechazar entradas claramente mal escritas antes de una consulta autorizada más lenta, nunca como prueba de validez o de titularidad. Esta herramienta sirve para aprender cómo funciona la suma de verificación y para probar cadenas de dígitos arbitrarias como identificadores, números IMEI y códigos de barras.