Gerador de CURP - Teste de Códigos de Identificação Mexicanos para Desenvolvimento
Gere CURPs de teste válidos para desenvolvimento de aplicações mexicanas. Ferramenta gratuita cria códigos de identificação aleatórios de 18 caracteres seguindo o formato oficial da RENAPO. Perfeito para testes, preenchimento de banco de dados e validação de API.
Gere uma amostra CURP aleatória, sintaticamente válida com um dígito de verificação correto.
Documentação
O que é um gerador de CURP?
Um gerador de CURP cria uma amostra aleatória de CURP, o código de 18 caracteres que o México usa para identificar residentes e cidadãos. O resultado tem a estrutura correta e um dígito de verificação calculado corretamente, mas não está vinculado a uma pessoa real. Desenvolvedores usam ferramentas desse tipo para testar softwares sem expor dados pessoais reais de ninguém.
O que é uma CURP?
CURP significa Clave Única de Registro de Población, ou Código Único de Registro da População. Ela é emitida pelo RENAPO (Registro Nacional de Población e Identidad), o registro nacional de população do México. Quase todos os residentes do México têm uma. Ela aparece em formulários de matrícula escolar, registros fiscais, documentos médicos e registros eleitorais. O código é formado por partes do nome, da data de nascimento, do sexo e do estado de nascimento da pessoa, além de dois caracteres extras que ajudam a diferenciar pessoas que, de outra forma, teriam o mesmo código.
Estrutura e formato da CURP
Uma CURP sempre tem 18 caracteres, todos letras maiúsculas ou dígitos. Cada posição tem um significado fixo.
| Posição | Significado |
|---|---|
| 1 | Primeira letra do sobrenome paterno |
| 2 | Primeira vogal interna do sobrenome paterno (a primeira vogal depois da primeira letra) |
| 3 | Primeira letra do sobrenome materno |
| 4 | Primeira letra do nome |
| 5–6 | Dois últimos dígitos do ano de nascimento |
| 7–8 | Mês de nascimento (01–12) |
| 9–10 | Dia de nascimento (01–31) |
| 11 | Sexo: H para Hombre (masculino), M para Mujer (feminino) |
| 12–13 | Código de duas letras do estado de nascimento, como DF para a Cidade do México ou JC para Jalisco |
| 14 | Primeira consoante interna do sobrenome paterno |
| 15 | Primeira consoante interna do sobrenome materno |
| 16 | Primeira consoante interna do nome |
| 17 | Um dígito para pessoas nascidas antes de 2000 ou uma letra para pessoas nascidas em 2000 ou depois |
| 18 | Um dígito de verificação calculado a partir dos 17 primeiros caracteres |
O México tem 32 códigos de estado nesse sistema: um para cada um dos 31 estados e um para a Cidade do México.
Quando os quatro primeiros caracteres formam por acaso uma palavra considerada grosseira em espanhol, o RENAPO substitui o segundo caractere por X. Uma pessoa chamada Ines Bueno Estrada teria o início BUEI, mas o código começa com BXEI. Este gerador bloqueia as mesmas 82 palavras e aplica a mesma substituição.
Como calcular o dígito de verificação da CURP
O 18º caractere identifica erros de digitação e cópia. Ele é calculado a partir dos 17 primeiros caracteres usando este método:
- Consulte cada um dos 17 primeiros caracteres no alfabeto
0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ. A posição desse caractere na lista, começando em 0, é o seu valor. Assim,0tem valor 0,Atem valor 10,Rtem valor 28 eZtem valor 36. - Multiplique o valor de cada caractere por um peso. O peso começa em 18 para o primeiro caractere e diminui em um para cada caractere seguinte, terminando em 2 para o 17º caractere.
- Some os 17 produtos para obter uma soma, S.
- O dígito de verificação é
(10 − (S mod 10)) mod 10.
Exemplo prático
Considere uma pessoa fictícia, Juan Pérez Ramírez, do sexo masculino, nascida em 15 de março de 1985, em Jalisco.
- Posição 1:
P, primeira letra de “Pérez” - Posição 2:
E, primeira vogal interna de “Pérez” (as letras depois da primeira são E, R, E, Z; portanto, a primeira vogal é E) - Posição 3:
R, primeira letra de “Ramírez” - Posição 4:
J, primeira letra de “Juan” - Posições 5–10:
850315, para 1985-03-15 - Posição 11:
H, masculino - Posições 12–13:
JC, Jalisco - Posição 14:
R, primeira consoante interna de “Pérez” - Posição 15:
M, primeira consoante interna de “Ramírez” - Posição 16:
N, primeira consoante interna de “Juan” - Posição 17:
0, um dígito, porque o ano de nascimento é anterior a 2000 (registros reais usam uma regra fixa para escolher o dígito; este exemplo usa 0)
Os 17 primeiros caracteres são PERJ850315HJCRMN0. Ao aplicar a fórmula acima a essa sequência, o resultado é uma soma de 2.342. Como 2.342 mod 10 = 2, o dígito de verificação é (10 − 2) mod 10 = 8. A CURP completa é PERJ850315HJCRMN08.
Como este gerador funciona
A ferramenta cria uma CURP de amostra em algumas etapas. Ela escolhe letras aleatórias para a parte do nome e depois um ano de nascimento de 1940 até o ano anterior ao atual, para que a data esteja sempre no passado. O dia é escolhido dentro da quantidade real de dias do mês sorteado, portanto 29 de fevereiro aparece somente em anos bissextos. O sexo e o código do estado são escolhidos aleatoriamente. Em seguida, a ferramenta acrescenta as três consoantes internas, aplica a substituição de palavra grosseira quando necessário, escolhe uma letra para a posição 17 quando o ano de nascimento é 2000 ou posterior e um dígito quando é anterior, e calcula o dígito de verificação com a fórmula acima.
Antes de exibir um código, a ferramenta o verifica novamente: o formato deve corresponder ao padrão de 18 caracteres, o mês deve estar entre 01 e 12, a data codificada deve existir no calendário e estar no passado, e o dígito de verificação deve corresponder. O século usado nessa verificação da data vem da posição 17, seguindo a mesma regra do RENAPO: um dígito indica os anos 1900, enquanto uma letra indica os anos 2000. Um código que falhe em qualquer uma dessas verificações não é exibido.
Usos comuns de CURPs geradas
Equipes de software usam CURPs geradas para testar formulários de cadastro, campos de banco de dados e lógicas de validação antes de lançar um produto para usuários mexicanos. Como os códigos são aleatórios, eles podem ser criados em grande quantidade para testes de carga ou para preencher um banco de dados de desenvolvimento, sem usar ou armazenar informações de identificação reais de ninguém.
História do sistema CURP
O México introduziu a CURP em 1996 para substituir um conjunto fragmentado de sistemas de identificação que diferentes órgãos governamentais usavam separadamente. Isso dificultava a associação dos registros da mesma pessoa entre bancos de dados. Desde então, a CURP tornou-se necessária em muitas interações com o governo, incluindo matrícula escolar, declaração de impostos e solicitação de passaporte. Para pessoas nascidas a partir de 2000, o RENAPO preenche a posição 17 com uma letra em vez de um dígito.
Comparação da CURP com outros sistemas nacionais de identificação
| País | Sistema | Formato |
|---|---|---|
| México | CURP | 18 caracteres, letras e dígitos |
| Estados Unidos | Social Security Number | 9 dígitos |
| Canadá | Social Insurance Number | 9 dígitos |
| Brasil | CPF | 11 dígitos |
| Índia | Aadhaar | 12 dígitos |
| Espanha | DNI/NIE | 8 dígitos mais uma letra de verificação |
Diferentemente de um número puramente sequencial, a CURP incorpora informações legíveis: data de nascimento, sexo e estado. Isso permite verificar se a data codificada é uma data real do calendário, uma das verificações que esta ferramenta realiza ao gerar um código de amostra.
Perguntas frequentes
Para que serve um gerador de CURP?
Ele cria um código aleatório no mesmo formato de uma CURP real, para uso em testes de software, preenchimento de bancos de dados e verificação do funcionamento correto da lógica de validação.
As CURPs geradas estão vinculadas a pessoas reais?
Não. Cada caractere é escolhido aleatoriamente ou calculado a partir de outros valores aleatórios. O resultado não está ligado a nenhuma pessoa real, viva ou falecida.
Uma CURP gerada pode ser usada em um formulário oficial?
Não. Somente o RENAPO pode emitir uma CURP válida para uma pessoa real. Usar um código gerado em um formulário governamental, declaração de impostos ou qualquer documento oficial seria fraude.
Por que algumas CURPs terminam com uma letra e outras com um dígito na posição 17?
A posição 17 diferencia pessoas que, de outra forma, teriam CURPs idênticas. O RENAPO usa um dígito para pessoas nascidas antes de 2000 e uma letra para pessoas nascidas em 2000 ou depois.
Por que às vezes a CURP tem um X como segundo caractere?
Porque os quatro primeiros caracteres formariam uma palavra considerada grosseira em espanhol. Nesse caso, o RENAPO substitui o segundo caractere por X, fazendo com que BUEI se torne BXEI.
Esta ferramenta armazena as CURPs que gera?
Não. O código é gerado no navegador usando JavaScript. Nada é enviado a um servidor ou salvo.
Como o dígito de verificação é calculado?
Cada um dos 17 primeiros caracteres é convertido em um número com base em sua posição em um alfabeto fixo de 37 caracteres, multiplicado por um peso de 18 a 2, e somado. O dígito de verificação é (10 − (sum mod 10)) mod 10. Consulte o exemplo prático acima.
Referências
- SEGOB (Secretaría de Gobernación), portal oficial da CURP.
- RENAPO (Registro Nacional de Población e Identidad), Instructivo Normativo para la Asignación de la CURP.