Pular para o conteúdo principal

Validador de CNH

Valide números de CNH (Carteira Nacional de Habilitação). Para testes.

Sobre o Validador de CNH

Esta ferramenta verifica a validade matemática de um número de CNH (Carteira Nacional de Habilitação). A validação é baseada nos algoritmos de cálculo dos dois dígitos verificadores, que garantem a integridade e a autenticidade da sequência numérica do documento.

É uma ferramenta essencial para desenvolvedores e testadores (QAs) que precisam garantir que seus sistemas validem corretamente o formato de uma CNH. Um número de CNH matematicamente válido passará por validações de formulário, mas isso não significa que a CNH pertence a uma pessoa real ou que está registrada em algum DETRAN.

Anatomia & Estrutura da CNH

A Carteira Nacional de Habilitação possui 11 dígitos numéricos decimais:

PosiçãoCampoTamanhoSignificado & RegraExemplo
1 a 9Registro Renach9 dígitosNúmero sequencial atribuído ao prontuário do condutor027877543
10 e 11Dígitos Verificadores2 dígitosDois dígitos de integridade calculados pela fórmula da Portaria Denatran 185/200602

Algoritmo Oficial da CNH (Denatran Portaria 185/2006)

O Denatran estipula duas somas com pesos opostos e fator de decremento quando o DV1 atinge resto 10:

DV1 = (Σ d[i]*(9-i) % 11); se DV1 > 9 -> {DV1 = 0; desc = 2}; DV2 = (Σ d[i]*(1+i) % 11 - desc)
  1. 1. Multiplique os 9 primeiros dígitos pelos pesos decrescentes de 9 a 1.
  2. 2. Calcule o resto da divisão por 11.
  3. 3. Se o resto for maior que 9, DV1 é 0 e o fator de decremento é 2; senão DV1 é o resto e o decremento é 0.
  4. 4. Para o DV2, multiplique os 9 primeiros dígitos pelos pesos crescentes de 1 a 9.
  5. 5. Calcule o resto por 11 e subtraia o fator de decremento.
  6. 6. Se DV2 for negativo, some 11; se maior que 9, defina DV2 como 0.
  7. 7. Rejeitam-se sequências com todos os dígitos repetidos.

Perguntas Frequentes (FAQ)