CURP-Generator - Test mexikanischer Identifikationscodes für Entwicklung
Generieren Sie gültige Test-CURPs für die mexikanische Anwendungsentwicklung. Kostenloses Tool erstellt zufällige 18-stellige Identifikationscodes nach offiziellem RENAPO-Format. Perfekt zum Testen, Datenbankbestückung und API-Validierung.
Generieren Sie eine zufällige, syntaktisch gültige Beispiel-CURP mit einer korrekten Prüfziffer.
Dokumentation
Was ist ein CURP-Generator?
Ein CURP-Generator erstellt einen zufälligen Beispiel-CURP, den 18-stelligen Code, den Mexiko zur Identifizierung von Einwohnern und Staatsbürgern verwendet. Das Ergebnis hat die richtige Struktur und eine korrekt berechnete Prüfziffer, ist aber keiner realen Person zugeordnet. Entwickler verwenden solche Tools, um Software zu testen, ohne die echten personenbezogenen Daten anderer Menschen offenzulegen.
Was ist ein CURP?
CURP steht für Clave Única de Registro de Población, also „Eindeutiger Code des Bevölkerungsregisters“. Der Code wird von RENAPO (Registro Nacional de Población e Identidad), dem nationalen Bevölkerungsregister Mexikos, vergeben. Fast jeder Einwohner Mexikos besitzt einen solchen Code. Er erscheint auf Formularen zur Schuleinschreibung, in Steuerunterlagen, medizinischen Dokumenten und bei der Wählerregistrierung. Der Code setzt sich aus Teilen des Namens, des Geburtsdatums, des Geschlechts und des Geburtsstaats zusammen. Hinzu kommen zwei Zeichen, die Personen unterscheiden, die ansonsten denselben Code hätten.
Aufbau und Format des CURP
Ein CURP besteht immer aus 18 Zeichen, ausschließlich aus Großbuchstaben oder Ziffern. Jede Position hat eine festgelegte Bedeutung.
| Position | Bedeutung |
|---|---|
| 1 | Erster Buchstabe des väterlichen Familiennamens |
| 2 | Erster innerer Vokal des väterlichen Familiennamens (der erste Vokal nach dem ersten Buchstaben) |
| 3 | Erster Buchstabe des mütterlichen Familiennamens |
| 4 | Erster Buchstabe des Vornamens |
| 5–6 | Letzte beiden Ziffern des Geburtsjahres |
| 7–8 | Geburtsmonat (01–12) |
| 9–10 | Geburtstag (01–31) |
| 11 | Geschlecht: H für Hombre (männlich), M für Mujer (weiblich) |
| 12–13 | Zweibuchstabiger Code für den Geburtsstaat, zum Beispiel DF für Mexiko-Stadt oder JC für Jalisco |
| 14 | Erster innerer Konsonant des väterlichen Familiennamens |
| 15 | Erster innerer Konsonant des mütterlichen Familiennamens |
| 16 | Erster innerer Konsonant des Vornamens |
| 17 | Eine Ziffer für Personen, die vor 2000 geboren wurden, oder ein Buchstabe für Personen, die 2000 oder später geboren wurden |
| 18 | Eine aus den ersten 17 Zeichen berechnete Prüfziffer |
Mexiko verwendet in diesem System 32 Bundesstaat-Codes, einen für jeden der 31 Bundesstaaten sowie für Mexiko-Stadt.
Wenn die ersten vier Zeichen zufällig ein im Spanischen als anstößig geltendes Wort bilden, ersetzt RENAPO das zweite Zeichen durch X. Eine Person namens Ines Bueno Estrada würde ansonsten mit BUEI beginnen, daher beginnt der Code stattdessen mit BXEI. Dieser Generator sperrt dieselben 82 Wörter und wendet dieselbe Ersetzung an.
So wird die CURP-Prüfziffer berechnet
Das 18. Zeichen erkennt Tipp- und Übertragungsfehler. Es wird anhand der ersten 17 Zeichen nach folgendem Verfahren berechnet:
- Jedes der ersten 17 Zeichen wird im Alphabet
0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZnachgeschlagen. Seine Position in dieser Liste, beginnend bei 0, ist sein Wert.0hat also den Wert 0,Aden Wert 10,Rden Wert 28 undZden Wert 36. - Der Wert jedes Zeichens wird mit einem Gewicht multipliziert. Das Gewicht beginnt beim ersten Zeichen mit 18 und sinkt für jedes folgende Zeichen um 1. Beim 17. Zeichen beträgt es 2.
- Die 17 Produkte werden addiert. Das Ergebnis ist die Summe S.
- Die Prüfziffer ist
(10 − (S mod 10)) mod 10.
Durchgerechnetes Beispiel
Betrachtet wird eine fiktive Person namens Juan Pérez Ramírez, männlich, geboren am 15. März 1985 in Jalisco.
- Position 1:
P, erster Buchstabe von „Pérez“ - Position 2:
E, erster innerer Vokal von „Pérez“ (die Buchstaben nach dem ersten sind E, R, E, Z; der erste Vokal ist daher E) - Position 3:
R, erster Buchstabe von „Ramírez“ - Position 4:
J, erster Buchstabe von „Juan“ - Positionen 5–10:
850315für 1985-03-15 - Position 11:
H, männlich - Positionen 12–13:
JC, Jalisco - Position 14:
R, erster innerer Konsonant von „Pérez“ - Position 15:
M, erster innerer Konsonant von „Ramírez“ - Position 16:
N, erster innerer Konsonant von „Juan“ - Position 17:
0, eine Ziffer, da das Geburtsjahr vor 2000 liegt (für echte Datensätze gilt eine feste Regel zur Auswahl dieser Ziffer; dieses Beispiel verwendet 0)
Die ersten 17 Zeichen lauten PERJ850315HJCRMN0. Wird die oben genannte Formel auf diese Zeichenfolge angewendet, ergibt sich eine Summe von 2.342. Da 2.342 mod 10 = 2 ist, lautet die Prüfziffer (10 − 2) mod 10 = 8. Der vollständige CURP ist PERJ850315HJCRMN08.
So funktioniert dieser Generator
Das Tool erstellt einen Beispiel-CURP in mehreren Schritten. Zuerst wählt es zufällige Buchstaben für den Namensbereich aus. Danach wird ein Geburtsjahr von 1940 bis zum Jahr vor dem aktuellen Jahr gewählt, sodass das Datum immer in der Vergangenheit liegt. Der Tag wird innerhalb der tatsächlichen Länge des ausgewählten Monats bestimmt. Der 29. Februar erscheint daher nur in Schaltjahren. Geschlecht und Bundesstaat-Code werden zufällig ausgewählt. Anschließend fügt das Tool die drei inneren Konsonanten hinzu, wendet bei Bedarf die Ersetzung für anstößige Wörter an, wählt für Position 17 bei einem Geburtsjahr ab 2000 einen Buchstaben und bei einem früheren Jahr eine Ziffer aus und berechnet die Prüfziffer mit der oben genannten Formel.
Bevor ein Code angezeigt wird, prüft das Tool ihn erneut: Die Form muss dem Muster mit 18 Zeichen entsprechen, der Monat muss zwischen 01 und 12 liegen, das codierte Datum muss im Kalender existieren und in der Vergangenheit liegen, und die Prüfziffer muss stimmen. Das Jahrhundert für diese Datumsprüfung wird aus Position 17 abgeleitet, nach derselben Regel wie bei RENAPO: Eine Ziffer bedeutet die 1900er-Jahre, ein Buchstabe die 2000er-Jahre. Ein Code, der eine dieser Prüfungen nicht besteht, wird nicht angezeigt.
Typische Verwendungszwecke generierter CURPs
Softwareteams verwenden generierte CURPs, um Registrierungsformulare, Datenbankfelder und Validierungslogik zu testen, bevor ein Produkt für mexikanische Nutzer veröffentlicht wird. Da die Codes zufällig sind, können sie in großer Zahl für Lasttests oder zum Befüllen einer Entwicklungsdatenbank erstellt werden, ohne die identifizierenden Daten realer Personen zu verwenden oder zu speichern.
Geschichte des CURP-Systems
Mexiko führte den CURP 1996 ein, um eine Reihe unterschiedlicher Identifikationssysteme zu ersetzen, die von verschiedenen Behörden getrennt verwendet wurden. Dadurch war es schwierig, Datensätze derselben Person über mehrere Datenbanken hinweg abzugleichen. Seitdem ist der CURP für viele Behördengänge erforderlich, darunter die Schuleinschreibung, die Abgabe von Steuererklärungen und die Beantragung eines Reisepasses. Bei Personen, die ab 2000 geboren wurden, trägt RENAPO an Position 17 einen Buchstaben statt einer Ziffer ein.
Vergleich des CURP mit anderen nationalen Identifikationssystemen
| Land | System | Format |
|---|---|---|
| Mexiko | CURP | 18 Zeichen, Buchstaben und Ziffern |
| Vereinigte Staaten | Social Security Number | 9 Ziffern |
| Kanada | Social Insurance Number | 9 Ziffern |
| Brasilien | CPF | 11 Ziffern |
| Indien | Aadhaar | 12 Ziffern |
| Spanien | DNI/NIE | 8 Ziffern plus Prüfbuchstabe |
Im Gegensatz zu einer rein fortlaufenden Nummer enthält der CURP lesbare Informationen: Geburtsdatum, Geschlecht und Bundesstaat. Dadurch lässt sich prüfen, ob das codierte Datum ein gültiges Kalenderdatum ist. Diese Prüfung führt das Tool beim Erstellen eines Beispielcodes ebenfalls durch.
Häufig gestellte Fragen
Wofür wird ein CURP-Generator verwendet?
Er erstellt einen zufälligen Code im selben Format wie ein echter CURP. Dieser kann zum Testen von Software, zum Befüllen von Datenbanken und zum Überprüfen der korrekten Funktionsweise von Validierungslogik verwendet werden.
Sind generierte CURPs realen Personen zugeordnet?
Nein. Jedes Zeichen wird entweder zufällig ausgewählt oder aus anderen zufälligen Werten berechnet. Das Ergebnis steht mit keiner realen Person in Verbindung, unabhängig davon, ob diese lebt oder bereits verstorben ist.
Kann ein generierter CURP auf einem offiziellen Formular verwendet werden?
Nein. Nur RENAPO kann einer realen Person einen gültigen CURP ausstellen. Die Verwendung eines generierten Codes auf einem Behördenformular, einer Steuererklärung oder einem anderen offiziellen Dokument wäre Betrug.
Warum enden manche CURPs an Position 17 mit einem Buchstaben und andere mit einer Ziffer?
Position 17 unterscheidet Personen, die ansonsten identische CURPs hätten. RENAPO verwendet für Personen, die vor 2000 geboren wurden, eine Ziffer und für Personen, die 2000 oder später geboren wurden, einen Buchstaben.
Warum enthält ein CURP manchmal ein X als zweites Zeichen?
Die ersten vier Zeichen würden ansonsten ein im Spanischen als anstößig geltendes Wort bilden. RENAPO ersetzt in diesem Fall das zweite Zeichen durch X, sodass BUEI zu BXEI wird.
Speichert dieses Tool die generierten CURPs?
Nein. Der Code wird mit JavaScript im Browser erzeugt. Es wird nichts an einen Server gesendet oder gespeichert.
Wie wird die Prüfziffer berechnet?
Jedes der ersten 17 Zeichen wird anhand seiner Position in einem festen Alphabet mit 37 Zeichen in eine Zahl umgewandelt, mit einem Gewicht von 18 bis 2 multipliziert und anschließend addiert. Die Prüfziffer ist (10 − (sum mod 10)) mod 10. Das durchgerechnete Beispiel weiter oben zeigt den Ablauf.
Quellen
- SEGOB (Secretaría de Gobernación), offizielles CURP-Portal.
- RENAPO (Registro Nacional de Población e Identidad), Instructivo Normativo para la Asignación de la CURP.