Gerador de Cartão de Cidadão (Portugal)
Gere e formate números de Cartão de Cidadão (12 caracteres alfanuméricos) de Portugal.
Aguardando geração...
Sobre o Cartão de Cidadão de Portugal
O Cartão de Cidadão é o documento de identificação física e digital dos cidadãos portugueses.
Estruturado no formato `NNNNNNNN C XX Y` (8 dígitos do número civil + 1 dígito de controlo do BI + 2 letras de versão do documento + 1 dígito de controlo geral do cartão baseado em Luhn mod 10 adaptado a caracteres alfanuméricos).
Anatomia & Estrutura do Cartão de Cidadão
O número de documento do Cartão de Cidadão é formado por 12 caracteres divididos em 4 blocos:
| Posição | Campo | Tamanho | Significado & Regra | Exemplo |
|---|---|---|---|---|
| 1 a 8 | NIC | 8 dígitos | Número de Identificação Civil (antigo BI), preenchido com zeros à esquerda se necessário | 12345678 |
| 9 | Check Digit NIC | 1 dígito | Dígito de controlo aritmético do BI | 9 |
| 10 e 11 | Versão / Emissão | 2 caracteres | Código alfanumérico da versão física do documento (ex: ZZ, ZX, 00) | ZZ |
| 12 | Check Digit Geral | 1 char | Dígito de controlo global calculado pelo algoritmo de Luhn em base 36 | 4 |
Algoritmo de Validação do Cartão de Cidadão (Luhn em Base 36)
O algoritmo oficial adotado pelo IRN e AMA opera sobre os 12 caracteres da direita para a esquerda:
sum(dobro_ou_direto(Base36(char_i))) % 10 == 0
- 1. Mapeie cada caractere para seu valor numérico em base 36: dígitos 0-9 valem seu próprio número; letras A-Z valem 10 a 35 (código ASCII - 55).
- 2. Da direita para a esquerda (i=0 a 11), dobre o valor nas posições ímpares (1, 3, 5, 7, 9, 11).
- 3. Se o dobro for maior que 9, subtraia 9 do resultado (equivalente à soma dos algarismos).
- 4. Mantenha os valores diretos nas posições pares (0, 2, 4, 6, 8, 10).
- 5. Some todas as parcelas: o documento é válido se a soma total for estritamente múltipla de 10 (soma % 10 == 0).