Versión actual: 0.1.1-2+rafex
Este proyecto implementa en Rust el algoritmo para generar CURP válidas estructuralmente, conforme a lo estipulado en el Instructivo Normativo para la Asignación de la Clave Única de Registro de Población, publicado oficialmente en el Diario Oficial de la Federación (DOF) el 18 de octubre de 2021.
La CURP es una clave alfanumérica de 18 caracteres generada a partir de:
- Inicial del primer apellido + primera vocal interna.
- Inicial del segundo apellido.
- Inicial del primer nombre (se ignora "María"/"José" si hay segundo nombre).
- Fecha de nacimiento: AAMMDD.
- Sexo: H o M.
- Entidad federativa (2 letras).
- Primeras consonantes internas del primer apellido, segundo apellido y nombre.
- Dígito para el siglo (0–9 antes del 2000, A–Z después).
- Dígito verificador calculado conforme al instructivo.
Este software es únicamente con fines educativos y de prueba. La CURP generada no sustituye a la oficial emitida por RENAPO.
# Importar la clave pública del repositorio
curl -fsSL https://repository.rafex.app/pubkey.asc | sudo gpg --dearmor -o /usr/share/keyrings/rafex-archive-keyring.gpg
# Agregar el repositorio APT usando la clave
echo "deb [signed-by=/usr/share/keyrings/rafex-archive-keyring.gpg] https://repository.rafex.app/debian stable main" | sudo tee /etc/apt/sources.list.d/rafex.list > /dev/null
sudo apt update
sudo apt install libcurp-generator0Si descargaste el .deb directamente, puedes verificar su integridad y firma:
curl -O https://repository.rafex.app/debian/libcurp-generator0_0.1.1-2+rafex_amd64.deb
curl -O https://repository.rafex.app/debian/libcurp-generator0_0.1.1-2+rafex_amd64.deb.sig
curl -O https://repository.rafex.app/pubkey.asc
# Importar la clave pública
gpg --import pubkey.asc
# Verificar la firma
gpg --verify libcurp-generator0_0.1.1-2+rafex_amd64.deb.sig libcurp-generator0_0.1.1-2+rafex_amd64.debcurl -O https://repository.rafex.app/debian/libcurp-generator0_0.1.1-2+rafex_amd64.deb.sha256
sha256sum -c libcurp-generator0_0.1.1-2+rafex_amd64.deb.sha256También puedes verificar el hash SHA256 (si está disponible):
curl -O https://repository.rafex.app/debian/libcurp-generator0_0.1.1-2+rafex_amd64.deb.sha256
sha256sum -c libcurp-generator0_0.1.1-2+rafex_amd64.deb.sha256#include <stdio.h>
#include "curp_generator.h"
int main() {
struct DatosPersonales persona = {
.nombre = "RAUL EDUARDO",
.primer_apellido = "GONZALEZ",
.segundo_apellido = "ARGOTE",
.sexo = 'H',
.fecha_nacimiento = "1988-11-03",
.entidad = "DF"
};
char* curp = generar_curp_c(&persona);
printf("CURP generada: %s\n", curp);
return 0;
}