Skip to main content

Clave Única de Registro de Población

Mexico · Persone fisiche

AAAA000000HAAAAA00

Incolla o digita il numero: la punteggiatura è facoltativa.

Cosa verifica questo controllo e cosa no

Questo strumento verifica la struttura del numero e la sua cifra di controllo, usando l'algoritmo pubblicato per quel documento. Un numero che passa è ben formato: è coerente dal punto di vista aritmetico e avrebbe potuto essere rilasciato.

Non dice se il numero sia stato davvero rilasciato, se sia attivo né a chi appartenga. Solo l'autorità fiscale emittente può confermarlo tramite il proprio servizio di verifica. Considera un esito positivo come «pronto da inviare», mai come prova d'identità.

La cifra di controllo del CURP si lascia sfuggire più di un refuso su cinque

Il CURP messicano termina con una cifra di controllo calcolata modulo 10 su un alfabeto di 37 caratteri. Quel disallineamento è fatale per il rilevamento degli errori: provando tutte le 612 sostituzioni possibili di un singolo carattere su un CURP valido, 139 di esse — il 22,7% — producono una stringa che passa comunque. Una cifra mod 10 semplicemente non può distinguere 37 simboli.

Come funziona

  • Convalida la struttura a 18 caratteri e ricalcola la cifra di controllo finale.
  • Segnala quale regola strutturale è fallita e non soltanto che qualcosa è fallito.
  • Dichiara che cosa la cifra di controllo può e non può intercettare, ed è meno di quanto quasi tutti presumano.
alfabeto: 0-9 poi A-N, Ñ, O-Z  (37 simboli, indice 0-36)

somma = Σ indice(carattereᵢ) × (18 − i)   per i = 0 … 16
cifra di controllo = (10 − (somma mod 10)) mod 10

i pesi vanno da 18 fino a 2; la cifra è il diciottesimo carattere

Esempio pratico

Calcolo della cifra di controllo per tre corpi di CURP e successiva prova di ciò che la cifra rileva.

  1. BADD110313HCMLNS0 → cifra di controllo 6
  2. SABC560626MDFLRN0 → cifra di controllo 1
  3. MAAJ800101HDFRRN0 → cifra di controllo 9
  4. 612 sostituzioni di un carattere provate → 139 non rilevate (22,7%)
  5. 14 trasposizioni adiacenti provate → 1 non rilevata

All'incirca un carattere digitato male su cinque passa senza rumore, e circa il 10% delle stringhe casuali passa per caso. La cifra di controllo esclude le corruzioni più grossolane e poco altro: è una verifica di coerenza del formato, non una difesa contro l'errore di trascrizione.

Come leggere il risultato

  • La debolezza è strutturale e non un difetto dell'implementazione. Rilevare ogni errore di un carattere richiede un modulo grande almeno quanto l'alfabeto: per questo esistono gli schemi mod 11 e per questo il RUT cileno tollera una lettera K anziché ridursi a mod 10.
  • Confronta il SIN canadese, dove Luhn intercetta tutte le 81 sostituzioni possibili di una cifra. Stesso compito, stessa classe di identificativo e una garanzia completamente diversa: a separarli è la scelta del modulo.
  • I primi 16 caratteri derivano da nome, data di nascita, sesso e stato, quindi un CURP non è opaco. Codifica dati personali in modo diretto, il che conta per come viene conservato, registrato e mostrato.
  • Un CURP strutturalmente valido non è necessariamente emesso. Solo RENAPO può confermare la registrazione, e nessun calcolo offline stabilisce che esista una persona con quel CURP.

Domande frequenti

Questo intercetterà un refuso nel mio CURP?
Spesso no. Su 612 modifiche possibili di un carattere provate su un CURP valido, 139 hanno comunque superato la cifra di controllo. Se l'accuratezza conta, richiedi il valore due volte e confrontalo, perché la sola somma di controllo lascia passare circa un quinto degli errori di battitura.
Una cifra di controllo valida significa che il CURP è reale?
No. Significa che i 18 caratteri sono coerenti fra loro, cosa che riesce anche a circa il 10% delle stringhe casuali. Confermare che un CURP sia stato davvero emesso richiede RENAPO; nulla calcolato offline può stabilirlo.