Μετάβαση στο περιεχόμενο

Γεννήτρια CURP - Δοκιμή Μεξικανικών Κωδικών Ταυτότητας για Ανάπτυξη

Δημιουργήστε έγκυρα δοκιμαστικά CURP για την ανάπτυξη μεξικανικών εφαρμογών. Δωρεάν εργαλείο δημιουργεί τυχαίους 18-ψήφιους κωδικούς αναγνώρισης σύμφωνα με το επίσημο μορφότυπο RENAPO. Ιδανικό για δοκιμές, συμπλήρωση βάσεων δεδομένων και επικύρωση API.

Δημιουργήστε ένα τυχαίο, συντακτικά έγκυρο δείγμα CURP με σωστό ψηφίο ελέγχου.

Υπολογιστής φόρτωσης...
📚

Τεκμηρίωση

Τι είναι μια γεννήτρια CURP;

Μια γεννήτρια CURP δημιουργεί ένα τυχαίο δείγμα CURP, τον κωδικό 18 χαρακτήρων που χρησιμοποιεί το Μεξικό για την ταυτοποίηση κατοίκων και πολιτών. Το αποτέλεσμα έχει τη σωστή δομή και σωστά υπολογισμένο ψηφίο ελέγχου, αλλά δεν συνδέεται με υπαρκτό πρόσωπο. Οι προγραμματιστές χρησιμοποιούν εργαλεία όπως αυτό για να ελέγχουν λογισμικό χωρίς να εκθέτουν τα πραγματικά προσωπικά δεδομένα κανενός.

Τι είναι η CURP;

Το CURP είναι τα αρχικά του Clave Única de Registro de Población, δηλαδή «Μοναδικός Κωδικός Μητρώου Πληθυσμού». Εκδίδεται από το RENAPO (Registro Nacional de Población e Identidad), το εθνικό μητρώο πληθυσμού του Μεξικού. Σχεδόν κάθε κάτοικος του Μεξικού διαθέτει έναν. Εμφανίζεται σε έντυπα εγγραφής σε σχολεία, φορολογικά αρχεία, ιατρικά έγγραφα και εγγραφές ψηφοφόρων. Ο κωδικός αποτελείται από τμήματα του ονόματος, της ημερομηνίας γέννησης, του φύλου και της πολιτείας γέννησης ενός ατόμου, καθώς και από δύο επιπλέον χαρακτήρες που βοηθούν να ξεχωρίζουν άτομα τα οποία διαφορετικά θα είχαν τον ίδιο κωδικό.

Δομή και μορφή της CURP

Μια CURP έχει πάντοτε 18 χαρακτήρες, όλοι κεφαλαία γράμματα ή ψηφία. Κάθε θέση έχει συγκεκριμένη σημασία.

ΘέσηΣημασία
1Πρώτο γράμμα του πατρικού επωνύμου
2Πρώτο εσωτερικό φωνήεν του πατρικού επωνύμου (το πρώτο φωνήεν μετά το αρχικό γράμμα)
3Πρώτο γράμμα του μητρικού επωνύμου
4Πρώτο γράμμα του κύριου ονόματος
5–6Τα δύο τελευταία ψηφία του έτους γέννησης
7–8Μήνας γέννησης (01–12)
9–10Ημέρα γέννησης (01–31)
11Φύλο: H για Hombre (άνδρας), M για Mujer (γυναίκα)
12–13Κωδικός δύο γραμμάτων για την πολιτεία γέννησης, όπως DF για την Πόλη του Μεξικού ή JC για το Χαλίσκο
14Πρώτο εσωτερικό σύμφωνο του πατρικού επωνύμου
15Πρώτο εσωτερικό σύμφωνο του μητρικού επωνύμου
16Πρώτο εσωτερικό σύμφωνο του κύριου ονόματος
17Ένα ψηφίο για άτομα που γεννήθηκαν πριν από το 2000 ή ένα γράμμα για άτομα που γεννήθηκαν το 2000 ή αργότερα
18Ψηφίο ελέγχου που υπολογίζεται από τους πρώτους 17 χαρακτήρες

Το Μεξικό έχει 32 κωδικούς πολιτειών σε αυτό το σύστημα, έναν για καθεμία από τις 31 πολιτείες, καθώς και έναν για την Πόλη του Μεξικού.

Όταν οι τέσσερις πρώτοι χαρακτήρες σχηματίζουν τυχαία μια λέξη που θεωρείται αγενής στα ισπανικά, το RENAPO αντικαθιστά τον δεύτερο χαρακτήρα με X. Ένα άτομο με το όνομα Ines Bueno Estrada θα ξεκινούσε διαφορετικά με BUEI, οπότε ο κωδικός αρχίζει με BXEI. Η γεννήτρια αποκλείει τις ίδιες 82 λέξεις και εφαρμόζει την ίδια αντικατάσταση.

Πώς υπολογίζεται το ψηφίο ελέγχου της CURP

Ο 18ος χαρακτήρας εντοπίζει σφάλματα πληκτρολόγησης και αντιγραφής. Υπολογίζεται από τους πρώτους 17 χαρακτήρες με την εξής μέθοδο:

  1. Αναζητήστε κάθε έναν από τους πρώτους 17 χαρακτήρες στο αλφάβητο 0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ. Η θέση του σε αυτόν τον κατάλογο, με αφετηρία το 0, είναι η τιμή του. Έτσι, το 0 έχει τιμή 0, το A έχει τιμή 10, το R έχει τιμή 28 και το Z έχει τιμή 36.
  2. Πολλαπλασιάστε την τιμή κάθε χαρακτήρα με έναν συντελεστή στάθμισης. Ο συντελεστής ξεκινά από 18 για τον πρώτο χαρακτήρα και μειώνεται κατά ένα για κάθε επόμενο χαρακτήρα, καταλήγοντας στο 2 για τον 17ο χαρακτήρα.
  3. Προσθέστε τα 17 γινόμενα για να λάβετε ένα άθροισμα, S.
  4. Το ψηφίο ελέγχου είναι (10 − (S mod 10)) mod 10.

Λυμένο παράδειγμα

Ας θεωρήσουμε ένα φανταστικό άτομο, τον Juan Pérez Ramírez, που γεννήθηκε αρσενικό στις 15 Μαρτίου 1985, στο Χαλίσκο.

  • Θέση 1: P, πρώτο γράμμα του «Pérez»
  • Θέση 2: E, πρώτο εσωτερικό φωνήεν του «Pérez» (τα γράμματα μετά το πρώτο είναι E, R, E, Z, επομένως το πρώτο φωνήεν είναι το E)
  • Θέση 3: R, πρώτο γράμμα του «Ramírez»
  • Θέση 4: J, πρώτο γράμμα του «Juan»
  • Θέσεις 5–10: 850315, για την 1985-03-15
  • Θέση 11: H, άνδρας
  • Θέσεις 12–13: JC, Χαλίσκο
  • Θέση 14: R, πρώτο εσωτερικό σύμφωνο του «Pérez»
  • Θέση 15: M, πρώτο εσωτερικό σύμφωνο του «Ramírez»
  • Θέση 16: N, πρώτο εσωτερικό σύμφωνο του «Juan»
  • Θέση 17: 0, ψηφίο, επειδή το έτος γέννησης είναι πριν από το 2000 (τα πραγματικά αρχεία χρησιμοποιούν έναν σταθερό κανόνα για την επιλογή του ψηφίου· αυτό το παράδειγμα χρησιμοποιεί το 0)

Οι πρώτοι 17 χαρακτήρες είναι PERJ850315HJCRMN0. Η εφαρμογή του παραπάνω τύπου σε αυτή τη συμβολοσειρά δίνει άθροισμα 2342. Εφόσον 2342 mod 10 = 2, το ψηφίο ελέγχου είναι (10 − 2) mod 10 = 8. Η πλήρης CURP είναι PERJ850315HJCRMN08.

Πώς λειτουργεί αυτή η γεννήτρια

Το εργαλείο δημιουργεί ένα δείγμα CURP σε λίγα βήματα. Επιλέγει τυχαία γράμματα για το τμήμα του ονόματος και έπειτα ένα έτος γέννησης από το 1940 έως το έτος πριν από το τρέχον, ώστε η ημερομηνία να βρίσκεται πάντοτε στο παρελθόν. Η ημέρα επιλέγεται μέσα στο πραγματικό μήκος του μήνα που κληρώθηκε, επομένως η 29η Φεβρουαρίου εμφανίζεται μόνο σε δίσεκτα έτη. Το φύλο και ο κωδικός πολιτείας επιλέγονται τυχαία. Στη συνέχεια το εργαλείο προσθέτει τα τρία εσωτερικά σύμφωνα, εφαρμόζει την αντικατάσταση της αγενούς λέξης αν χρειάζεται, επιλέγει ένα γράμμα για τη θέση 17 όταν το έτος γέννησης είναι 2000 ή μεταγενέστερο και ένα ψηφίο όταν είναι προγενέστερο, και υπολογίζει το ψηφίο ελέγχου με τον παραπάνω τύπο.

Πριν εμφανίσει έναν κωδικό, το εργαλείο τον ελέγχει ξανά: η μορφή πρέπει να αντιστοιχεί στο μοτίβο των 18 χαρακτήρων, ο μήνας πρέπει να είναι 01-12, η κωδικοποιημένη ημερομηνία πρέπει να υπάρχει στο ημερολόγιο και να βρίσκεται στο παρελθόν, και το ψηφίο ελέγχου πρέπει να συμφωνεί. Ο αιώνας για τον έλεγχο της ημερομηνίας προκύπτει από τη θέση 17, σύμφωνα με τον ίδιο κανόνα που χρησιμοποιεί το RENAPO: ένα ψηφίο σημαίνει τον αιώνα του 1900, ενώ ένα γράμμα σημαίνει τον αιώνα του 2000. Κωδικός που αποτυγχάνει σε οποιονδήποτε από αυτούς τους ελέγχους δεν εμφανίζεται.

Συνήθεις χρήσεις των παραγόμενων CURP

Οι ομάδες λογισμικού χρησιμοποιούν παραγόμενες CURP για να ελέγχουν φόρμες εγγραφής, πεδία βάσεων δεδομένων και τη λογική επικύρωσης πριν από την κυκλοφορία ενός προϊόντος για Μεξικανούς χρήστες. Επειδή οι κωδικοί είναι τυχαίοι, μπορούν να δημιουργηθούν μαζικά για δοκιμές φόρτου ή για αρχική τροφοδότηση μιας βάσης ανάπτυξης, χωρίς χρήση ή αποθήκευση πραγματικών στοιχείων ταυτοποίησης.

Ιστορικό του συστήματος CURP

Το Μεξικό εισήγαγε την CURP το 1996, για να αντικαταστήσει ένα συνονθύλευμα συστημάτων ταυτοποίησης που χρησιμοποιούσαν ξεχωριστά διάφορες κυβερνητικές υπηρεσίες, γεγονός που δυσχέραινε την αντιστοίχιση των αρχείων του ίδιου ατόμου μεταξύ βάσεων δεδομένων. Έκτοτε, η CURP έχει καταστεί απαραίτητη για πολλές συναλλαγές με το κράτος, όπως η εγγραφή σε σχολείο, η υποβολή φορολογικής δήλωσης και η αίτηση διαβατηρίου. Για άτομα που γεννήθηκαν από το 2000 και μετά, το RENAPO συμπληρώνει τη θέση 17 με γράμμα αντί για ψηφίο.

Πώς συγκρίνεται η CURP με άλλα εθνικά συστήματα ταυτοποίησης

ΧώραΣύστημαΜορφή
ΜεξικόCURP18 χαρακτήρες, γράμματα και ψηφία
Ηνωμένες ΠολιτείεςΑριθμός Κοινωνικής Ασφάλισης9 ψηφία
ΚαναδάςΑριθμός Κοινωνικής Ασφάλισης9 ψηφία
ΒραζιλίαCPF11 ψηφία
ΙνδίαAadhaar12 ψηφία
ΙσπανίαDNI/NIE8 ψηφία και ένα γράμμα ελέγχου

Σε αντίθεση με έναν καθαρά αύξοντα αριθμό, η CURP ενσωματώνει αναγνώσιμες πληροφορίες: ημερομηνία γέννησης, φύλο και πολιτεία. Έτσι είναι δυνατό να ελεγχθεί αν η κωδικοποιημένη ημερομηνία είναι πραγματική ημερολογιακή ημερομηνία, ένας από τους ελέγχους που εκτελεί αυτό το εργαλείο κατά τη δημιουργία ενός δείγματος κωδικού.

Συχνές ερωτήσεις

Σε τι χρησιμεύει μια γεννήτρια CURP;

Δημιουργεί έναν τυχαίο κωδικό στην ίδια μορφή με μια πραγματική CURP, για χρήση σε δοκιμές λογισμικού, αρχική τροφοδότηση βάσεων δεδομένων και έλεγχο της σωστής λειτουργίας της λογικής επικύρωσης.

Συνδέονται οι παραγόμενες CURP με πραγματικά άτομα;

Όχι. Κάθε χαρακτήρας επιλέγεται τυχαία ή υπολογίζεται από άλλες τυχαίες τιμές. Το αποτέλεσμα δεν συνδέεται με κανένα πραγματικό άτομο, εν ζωή ή νεκρό.

Μπορεί να χρησιμοποιηθεί παραγόμενη CURP σε επίσημο έντυπο;

Όχι. Μόνο το RENAPO μπορεί να εκδώσει έγκυρη CURP για πραγματικό άτομο. Η χρήση παραγόμενου κωδικού σε κρατικό έντυπο, φορολογική δήλωση ή οποιοδήποτε επίσημο έγγραφο θα ήταν απάτη.

Γιατί ορισμένες CURP τελειώνουν σε γράμμα και άλλες σε ψηφίο στη θέση 17;

Η θέση 17 ξεχωρίζει άτομα που διαφορετικά θα είχαν πανομοιότυπες CURP. Το RENAPO χρησιμοποιεί ψηφίο για άτομα που γεννήθηκαν πριν από το 2000 και γράμμα για άτομα που γεννήθηκαν το 2000 ή αργότερα.

Γιατί μια CURP έχει μερικές φορές X ως δεύτερο χαρακτήρα;

Επειδή οι τέσσερις πρώτοι χαρακτήρες διαφορετικά θα σχημάτιζαν λέξη που θεωρείται αγενής στα ισπανικά. Σε αυτή την περίπτωση, το RENAPO αντικαθιστά τον δεύτερο χαρακτήρα με X, οπότε το BUEI γίνεται BXEI.

Αποθηκεύει αυτό το εργαλείο τις CURP που δημιουργεί;

Όχι. Ο κωδικός δημιουργείται στο πρόγραμμα περιήγησης με JavaScript. Δεν αποστέλλεται τίποτα σε διακομιστή ούτε αποθηκεύεται.

Πώς υπολογίζεται το ψηφίο ελέγχου;

Καθένας από τους πρώτους 17 χαρακτήρες μετατρέπεται σε αριθμό με βάση τη θέση του σε ένα σταθερό αλφάβητο 37 χαρακτήρων, πολλαπλασιάζεται με συντελεστή στάθμισης από 18 έως 2 και προστίθεται. Το ψηφίο ελέγχου είναι (10 − (sum mod 10)) mod 10. Δείτε το αναλυτικό παράδειγμα παραπάνω.

Παραπομπές

  1. SEGOB (Secretaría de Gobernación), επίσημη πύλη CURP.
  2. RENAPO (Registro Nacional de Población e Identidad), Κανονιστικές οδηγίες για την εκχώρηση της CURP.