Controllore dell'Algoritmo di Luhn

Luhn verifica solo la cifra di controllo, non se la carta è attiva.

L’algoritmo di Luhn (ISO/IEC 7812-1) è il checksum che protegge i numeri delle carte di credito, gli identificatori dei dispositivi IMEI, i SIN canadesi, i NPI statunitensi e un certo numero di altri schemi numerici contro errori di battitura a cifra singola. Incolla una stringa di cifre, spazi e trattini vengono ignorati, e il controllore mostra se il numero è valido e illustra i passaggi di raddoppio e somma in modo che tu possa verificarlo a mano se lo desideri.

Come viene calcolato il controllo di Luhn

  1. 1

    Rimuovi i non numeri

    Spazi, trattini e punti vengono rimossi. Solo le cifre da 0 a 9 contano.

  2. 2

    Raddoppia ogni seconda cifra da destra

    Partendo dalla penultima, ogni cifra alternata viene raddoppiata.

  3. 3

    Somma le cifre di ogni valore raddoppiato

    Se il raddoppio dà 14, somma 1 + 4 = 5. Equivalente a sottrarre 9 da qualsiasi raddoppio ≥ 10.

  4. 4

    Totale tutti i valori risultanti

    Somma le cifre raddoppiate e ridotte più le cifre non toccate.

  5. 5

    Controlla la divisibilità per 10

    Se il totale termina con 0, il numero è valido. Altrimenti è non valido.

Esempio pratico

Controlla 4539 1488 0343 6467:

Pos (destra→sinistra) Cifra Raddoppiata? Valore
1 7 no 7
2 6 12 → 3
3 4 no 4
4 6 12 → 3
5 3 no 3
6 4 8
7 3 no 3
8 0 0
9 8 no 8
10 8 16 → 7
11 4 no 4
12 1 2
13 9 no 9
14 3 6
15 5 no 5
16 4 8

Totale: 80. 80 mod 10 = 0 → valido.

Dove viene utilizzato Luhn

Sistema Lunghezza Protetto da Luhn?
Visa, Mastercard, Discover 13–19 cifre
American Express 15 cifre
IMEI (ID dispositivo GSM) 15 cifre
Assicurazione Sociale Canadese 9 cifre
Identificatore Nazionale USA 10 cifre
ID israeliano (Teudat Zehut) 9 cifre
ISBN-13 13 cifre no (usa mod 10 con pesi 1,3)

Cosa rileva e cosa perde Luhn

  • Rileva: tutti gli errori a cifra singola, la maggior parte (ma non tutti) delle trasposizioni di cifre adiacenti.
  • Perde: la trasposizione 09 ↔ 90 e diverse coppie simili. È un controllo di battitura, non un controllo di sicurezza.
  • Non è una funzione di sicurezza. Un numero valido secondo Luhn è facile da generare. La validazione del PAN presso i gateway di pagamento utilizza intervalli di emittenti, CVV, AVS e 3-D Secure, non solo Luhn.

Domande frequenti

No. Luhn verifica solo che il numero sia matematicamente ben formato. Non dice nulla su se la carta sia stata emessa, abbia fondi o sia rubata. La vera validazione avviene presso l’emittente durante l’autorizzazione.

Sì, l’ultima cifra è la cifra di controllo e può sempre essere scelta per rendere la somma divisibile per 10. È così che funzionano i generatori IMEI e i numeri di carta di prova.

Rileva ogni sostituzione a cifra singola e la maggior parte delle trasposizioni di cifre adiacenti, ma alcune coppie (come 09 ↔ 90) lasciano invariato il checksum. Schemi più robusti (ISBN-13, Verhoeff, Damm) scambiano complessità per una maggiore copertura degli errori.

Il controllore funziona interamente nel tuo browser, quindi nulla viene trasmesso, ma incollare dati PAN reali ovunque non sia necessario è una cattiva abitudine. Usa numeri di prova (ad es., 4242 4242 4242 4242) quando sperimenti.

Luhn funziona su qualsiasi lunghezza ma è standardizzato per schemi specifici (di solito 9–19 cifre). Il controllore non limita la lunghezza.

Strumenti correlati

Strumento disponibile in altre lingue