Pular para o conteúdo

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.

Calculadora de carregamento...
📚

Documentação

O que é um gerador de CURP?

Um gerador de CURP cria um CURP de exemplo aleatório, 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 verificador calculado corretamente, mas não está ligado a uma pessoa real. Desenvolvedores usam ferramentas como esta para testar software sem expor os dados pessoais reais de ninguém.

O que é um CURP?

CURP significa Clave Única de Registro de Población, ou Código Único de Registro de População. Ele é atribuído pela Secretaría de Gobernación do México por meio do RENAPO, o registro nacional de população. Segundo o Instructivo Normativo de 2018 publicado no Diario Oficial de la Federación, todo CURP é uma chave alfanumérica de 18 caracteres dada aos mexicanos e aos estrangeiros que vivem legalmente no México. Os órgãos do governo o usam para identificar pessoas em seus registros. O código é montado com partes do nome, da data de nascimento, do sexo e do local de nascimento da pessoa, mais um caractere que distingue pessoas que de outro modo teriam o mesmo código e um dígito verificador final.

Estrutura e formato do CURP

Um CURP sempre tem 18 caracteres, todos letras maiúsculas ou dígitos. Cada posição tem um significado fixo.

PosiçãoSignificado
1Primeira letra do sobrenome paterno
2Primeira vogal interna do sobrenome paterno (a primeira vogal depois da primeira letra)
3Primeira letra do sobrenome materno
4Primeira letra do nome próprio
5–6Dois últimos dígitos do ano de nascimento
7–8Mês de nascimento (01–12)
9–10Dia de nascimento (01–31)
11Sexo: H de Hombre (masculino), M de Mujer (feminino)
12–13Código de duas letras do estado de nascimento, como DF para a Cidade do México ou JC para Jalisco
14Primeira consoante interna do sobrenome paterno
15Primeira consoante interna do sobrenome materno
16Primeira consoante interna do nome próprio
17Distingue códigos idênticos: 0–9 para nascimentos até 31 de dezembro de 1999, A–J para nascimentos a partir de 1 de janeiro de 2000
18Um dígito verificador calculado a partir dos primeiros 17 caracteres

As posições seguem a tabela do mesmo Instructivo. A ferramenta escolhe o código do estado em uma lista de 32 códigos de duas letras, um para cada um dos 31 estados mais a Cidade do México (DF).

Como calcular o dígito verificador do CURP

O 18º caractere detecta erros de digitação e de cópia. O Instructivo diz apenas que ele vem de um algoritmo aplicado pela Secretaría de Gobernación. Esta ferramenta o calcula a partir dos primeiros 17 caracteres com o método ponderado abaixo:

  1. Procure cada um dos primeiros 17 caracteres no alfabeto 0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ. A posição dele nessa lista, começando em 0, é o seu valor. Assim, 0 tem valor 0, A tem valor 10, R tem valor 28 e Z tem valor 36.
  2. Multiplique o valor de cada caractere por um peso. O peso começa em 18 para o primeiro caractere e cai uma unidade a cada caractere seguinte, terminando em 2 para o 17º caractere.
  3. Some os 17 produtos para obter uma soma, S.
  4. O dígito verificador é (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, então 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 (os registros reais começam em 0 e só avançam quando duas pessoas têm os mesmos 16 primeiros caracteres)

Os primeiros 17 caracteres são PERJ850315HJCRMN0. Aplicar a fórmula acima a essa sequência dá uma soma de 2342. Como 2342 mod 10 = 2, o dígito verificador é (10 − 2) mod 10 = 8. O CURP completo é PERJ850315HJCRMN08.

Como este gerador funciona

A ferramenta monta um CURP de exemplo em poucas etapas. Ela inventa três nomes curtos aleatórios, cada um com uma letra, uma vogal e uma consoante, e deles tira as posições 1–4 e 14–16. Se as quatro primeiras letras formarem uma palavra da sua lista interna de palavras ofensivas, ela tenta de novo. Em seguida escolhe uma data de nascimento aleatória e válida no calendário entre 1940 e o ano passado, um sexo aleatório (H ou M) e um código de estado aleatório. Para a posição 17, escolhe um dígito aleatório se o ano de nascimento for anterior a 2000, ou uma letra aleatória de A a J se for 2000 ou posterior, conforme o Instructivo. Por fim, calcula o dígito verificador com a fórmula acima. O resultado tem o formato certo, mas não está ligado a nenhuma pessoa real.

Usos comuns de CURPs gerados

As equipes de software usam CURPs gerados para testar formulários de cadastro, campos de banco de dados e lógica de validação antes de lançar um produto para usuários mexicanos. Como os códigos são aleatórios, podem ser criados em grande quantidade para testes de carga ou para popular um banco de dados de desenvolvimento, sem usar nem armazenar informações de identificação reais de ninguém.

História do sistema CURP

O governo federal do México adotou o CURP por meio de um acordo publicado no Diario Oficial de la Federación em 23 de outubro de 1996. Ele dizia que o CURP seria atribuído a todas as pessoas que vivem no México e aos mexicanos que vivem no exterior, com o RENAPO encarregado de atribuí-lo. As regras atuais para montar o código estão no Instructivo de 2018. Na posição 17, a troca de dígitos por letras marca o século de nascimento: dígitos para nascimentos nos anos 1900, letras para nascimentos a partir de 2000.

O que o código revela

Ao contrário de um número puramente sequencial, o CURP embute informações legíveis: data de nascimento, sexo e local de nascimento. O Instructivo observa que essas partes, junto com as quatro primeiras letras, permitem que qualquer pessoa verifique se uma chave foi montada corretamente. Esta ferramenta verifica se cada data de nascimento gerada é uma data real do calendário, no passado.

Perguntas frequentes

Para que serve um gerador de CURP?

Ele cria um código aleatório no mesmo formato de um CURP real, para uso em testes de software, para popular bancos de dados e para verificar se a lógica de validação funciona corretamente.

Os CURPs gerados estão ligados a pessoas reais?

Não. Cada caractere é escolhido ao acaso ou calculado a partir de outros valores aleatórios. O resultado não está ligado a nenhuma pessoa real, viva ou morta.

Um CURP gerado pode ser usado em um formulário oficial?

Não. Somente a Secretaría de Gobernación, por meio do RENAPO, atribui um CURP real. Um código gerado não pertence a ninguém e não deve ser usado em nenhum formulário do governo nem em documento oficial.

Por que alguns CURPs terminam em letra e outros em dígito na posição 17?

A posição 17 distingue pessoas cujos primeiros 16 caracteres são iguais. Segundo o Instructivo, ela é um dígito de 0 a 9 para pessoas nascidas até 1999 e uma letra de A a J para pessoas nascidas em 2000 ou depois. Este gerador segue a mesma regra: um dígito para datas anteriores a 2000 e uma letra de A a J para datas posteriores a 2000.

Por que um CURP às vezes tem X como segundo caractere?

Porque, de outro modo, os quatro primeiros caracteres formariam uma palavra considerada grosseira em espanhol. Nesse caso, o RENAPO troca o segundo caractere por X, então BUEI vira BXEI.

Esta ferramenta armazena os CURPs que gera?

Não. O código é gerado no navegador com JavaScript. Nada é enviado a um servidor nem salvo.

Como o dígito verificador é calculado?

Cada um dos primeiros 17 caracteres é convertido em um número com base na sua posição em um alfabeto fixo de 37 caracteres, multiplicado por um peso de 18 a 2 e somado. O dígito verificador é (10 − (sum mod 10)) mod 10. Veja o exemplo resolvido acima.

Referências

  1. Secretaría de Gobernación, Diario Oficial de la Federación. Instructivo Normativo para la asignación de la Clave Única de Registro de Población (18 de junho de 2018). sidof.segob.gob.mx — chave alfanumérica de 18 caracteres; significado de cada posição; a posição 17 é 0–9 até 1999 e A–J a partir de 2000; a posição 18 é um dígito verificador obtido por um algoritmo.
  2. Secretaría de Gobernación, Diario Oficial de la Federación. Convenio de Coordinación con el Estado de Guanajuato sobre la CURP. sidof.segob.gob.mx — o acordo que adotou o CURP foi publicado no DOF em 23 de outubro de 1996, atribuindo-o a todas as pessoas que vivem no México e aos nacionais no exterior.