Validador do Algoritmo de Luhn
O Luhn apenas valida o dígito de verificação, não se o cartão está ativo.
O algoritmo de Luhn (ISO/IEC 7812-1) é a verificação que protege números de cartão de crédito, identificadores de dispositivos IMEI, SINs canadenses, NPIs dos EUA e uma série de outros esquemas numéricos contra erros de digitação de um dígito. Cole uma sequência de dígitos, espaços e traços são ignorados, e o validador mostra se o número é válido e percorre as etapas de duplicação e soma para que você possa verificar manualmente, se desejar.
Como a verificação de Luhn é calculada
-
1
Remover não-dígitos
Espaços, traços e pontos são removidos. Apenas dígitos de 0 a 9 contam.
-
2
Dobrar cada segundo dígito da direita
Começando com o penúltimo, cada dígito alternado é dobrado.
-
3
Somar os dígitos de cada valor dobrado
Se dobrar resulta em 14, adicione 1 + 4 = 5. Equivalente a subtrair 9 de qualquer dobro ≥ 10.
-
4
Totalizar todos os valores resultantes
Adicione os dígitos dobrados e reduzidos mais os dígitos não tocados.
-
5
Verificar divisibilidade por 10
Se o total termina em 0, o número é válido. Caso contrário, é inválido.
Exemplo prático
Verifique 4539 1488 0343 6467:
| Pos (direita→esquerda) | Dígito | Duplicado? | Valor |
|---|---|---|---|
| 1 | 7 | não | 7 |
| 2 | 6 | sim | 12 → 3 |
| 3 | 4 | não | 4 |
| 4 | 6 | sim | 12 → 3 |
| 5 | 3 | não | 3 |
| 6 | 4 | sim | 8 |
| 7 | 3 | não | 3 |
| 8 | 0 | sim | 0 |
| 9 | 8 | não | 8 |
| 10 | 8 | sim | 16 → 7 |
| 11 | 4 | não | 4 |
| 12 | 1 | sim | 2 |
| 13 | 9 | não | 9 |
| 14 | 3 | sim | 6 |
| 15 | 5 | não | 5 |
| 16 | 4 | sim | 8 |
Total: 80. 80 mod 10 = 0 → válido.
Onde o Luhn é usado
| Sistema | Comprimento | Protegido pelo Luhn? |
|---|---|---|
| Visa, Mastercard, Discover | 13–19 dígitos | sim |
| American Express | 15 dígitos | sim |
| IMEI (ID de dispositivo GSM) | 15 dígitos | sim |
| Seguro Social Canadense | 9 dígitos | sim |
| Identificador Nacional dos EUA | 10 dígitos | sim |
| ID Israelense (Teudat Zehut) | 9 dígitos | sim |
| ISBN-13 | 13 dígitos | não (usa mod 10 com pesos 1,3) |
O que o Luhn detecta e ignora
- Detecta: todos os erros de um dígito, a maioria (mas não todos) das transposições de dígitos adjacentes.
- Ignora: a transposição 09 ↔ 90 e vários pares semelhantes. É uma verificação de erro de digitação, não uma verificação de segurança.
- Não é uma característica de segurança. Um número válido pelo Luhn é fácil de gerar. A validação de PAN em gateways de pagamento usa faixas de emissor, CVV, AVS e 3-D Secure, não apenas Luhn.
Perguntas frequentes
Não. O Luhn apenas verifica se o número está matematicamente bem formado. Não diz nada sobre se o cartão foi emitido, tem fundos ou é roubado. A validação real acontece no emissor durante a autorização.
Sim, o último dígito é o dígito de verificação e pode sempre ser escolhido para tornar a soma divisível por 10. É assim que geradores de IMEI e números de cartão de teste funcionam.
Ele captura cada substituição de um dígito e a maioria das transposições de dígitos adjacentes, mas alguns pares (como 09 ↔ 90) mantêm a verificação inalterada. Esquemas mais robustos (ISBN-13, Verhoeff, Damm) trocam complexidade por cobertura extra de erros.
O validador roda inteiramente no seu navegador, então nada é transmitido, mas colar dados de PAN ao vivo em qualquer lugar que você não precise é um mau hábito. Use números de teste (por exemplo, 4242 4242 4242 4242) ao experimentar.
O Luhn funciona em qualquer comprimento, mas é padronizado para esquemas específicos (geralmente 9–19 dígitos). O validador não limita o comprimento.
Ferramentas relacionadas
Referência da Tabela ASCII
Tabela ASCII completa de 0 a 127 com valores decimais, hexadecimais, octais e binários e notação de referência numérica HTML, incluindo NUL, LF e DEL.
Referência de Caracteres HTML
Lista pesquisável de entidades HTML, seus códigos nomeados e numéricos, e uma cópia com um clique para caracteres e símbolos especiais.
Referência de atalhos de teclado
Pesquise atalhos padrão documentados do VS Code, Chrome e Bash com GNU Readline no macOS, Windows e Linux.
Gerador de EditorConfig
Gere um arquivo .editorconfig com suas regras de estilo e tamanho de indentação, fim de linha, charset e espaços em branco para formatação consistente entre IDEs e editores.
Validador de Email
Valide um endereço de email: verificação de sintaxe RFC 5322, consulta de registro MX em tempo real, além de detalhes de parte local, domínio e comprimento. Nenhum email é enviado.
Conversor de Tamanho de Arquivo
Converta entre bytes, KB, MB, GB, TB e as unidades binárias IEC (KiB, MiB, GiB, TiB), combinando decimal e binário como preferir.
Ferramenta disponível em outros idiomas
- Luhn-Algorithmus-Prüfer [DE]
- Pemeriksa Algoritma Luhn [ID]
- Walidator algorytmu Luhna [PL]
- เครื่องตรวจสอบอัลกอริทึมของ Luhn [TH]
- Trình kiểm tra thuật toán Luhn [VI]
- Luhnアルゴリズムチェッカー [JA]
- Luhn-algoritmens kontrollverktyg [SV]
- Verificador del Algoritmo de Luhn [ES]
- أداة فحص خوارزمية Luhn [AR]
- Luhn 알고리즘 검사기 [KO]
- Vérificateur d'algorithme de Luhn [FR]
- Luhn-algoritme-checker [NL]
- Luhn Algorithm Checker [EN]
- Controllore dell'Algoritmo di Luhn [IT]
- Проверка по алгоритму Луна [RU]
- Luhn Algoritma Kontrolcüsü [TR]
- Luhn 算法校验工具 [ZH]