Come ottenere il numero completo della carta di credito utilizzando le ultime quattro cifre
Non è possibile. L'ultima cifra di un numero di carta di credito è una cifra di controllo che dipende dai valori dei 15 numeri precedenti in quell'ordine specifico, è impossibile estrapolare le dodici cifre precedenti dalle ultime quattro.
Ecco come una pagina web può sapere se avete inserito un numero di carta di credito errato prima di provare a trasmetterlo al server. Lo script lato browser può convalidarlo prima. Esegue lo stesso algoritmo di convalida e confronta il risultato atteso con l'ultima cifra. Il solito errore è che l'utente ha inavvertitamente scambiato due delle cifre, nel qual caso l'ultima cifra della carta sarà ora 'sbagliata', e la pagina evidenzierà il numero della carta di credito come non valido.
Se i caratteri della carta di credito sono in un array char[16], txtchr allora il seguente codice C# lo convaliderà.
- int chksum = 0;
- for (int i = 0; i < 16; i++)
- chksum += ((i % 2) == 1) ? txtchr[i] - '0' : ((txtchr[i] - '0') * 2) / 10 + ((txtchr[i] - '0') * 2) % 10;
If chksum is divisible by 10:
- if(chksum % 10 == 0)
then the card number is valid.
Detto questo, è valido solo come numero di carta a sé stante. Deve quindi essere convalidato rispetto ai dati dell'emittente (contenuti nelle prime sei cifre); anche il nome esatto, la data di scadenza e il numero CVV devono essere corretti.
Articoli simili
- Cosa succede se qualcuno conosce le ultime quattro cifre della mia carta?
- Come trovare il numero della carta di credito senza la carta
- Come rompere un lucchetto a quattro cifre numeriche
- Come impostare un promemoria del calendario di Google per più di quattro settimane? Perché è limitato a un massimo di quattro settimane