Co prozradí první číslice karty
Číslo platební karty není chaotická směsice číslic. Už pohled na začátek prozradí, o jaký typ karty jde. Karty Visa vždycky začínají čtyřkou, Mastercard pětkou, American Express trojkou a čtyřkou nebo trojkou a sedmičkou. Každá první číslice vlastně označuje odvětví vydavatele – trojka patří cestování a zábavě, čtyřka a pětka bankám a finančním institucím.
Délka čísla se také liší. Zatímco klasické karty Visa a Mastercard mají šestnáct číslic, American Express jich má patnáct. Některé starší karty Visa měly dokonce jen třináct číslic.
Struktura čísla karty od začátku do konce
Prvních šest číslic tvoří takzvaný BIN nebo IIN – identifikační číslo vydavatele. Díky němu systém pozná, která banka nebo instituce kartu vydala. Prostřední část čísla identifikuje konkrétní účet držitele karty. Poslední číslice má pak zcela speciální úlohu – je to kontrolní číslo, kterému se říká kontrolní číslice nebo check digit.
Tahle kontrolní číslice také samozřejmě není náhodná. Vypočítá se pomocí tzv. Luhnova algoritmu, který v padesátých letech vynalezl vědec Hans Peter Luhn z IBM. Algoritmus funguje jako jednoduchá pojistka – dokáže odhalit překlepy a neplatné kombinace ještě předtím, než se systém spojí s bankou.
Online obchody ho používají stále. Když při placení zadáváte číslo karty a systém vám hned hlásí chybu, není to proto, že by se dotazoval banky. Prostě jen zkontroloval, jestli číslo odpovídá matematickým pravidlům.
Takže stručně platí:
Prvních 6 čísel (BIN/IIN) - identifikuje vydavatele karty:
- První číslice určuje typ karty (4 = Visa, 5 = Mastercard, 3 = American Express atd.)
- Dalších 5 číslic identifikuje konkrétní banku nebo instituci
Prostřední číslice - identifikují číslo účtu (délka se liší podle typu karty)
Poslední číslice - kontrolní číslice vypočítaná pomocí Luhnova algoritmu
Mohlo by vás zajímat
Tip: všimli jste si někdy této podivnosti na platebních kartách? Jde o skrytou funkci, kterou ne všichni znají
Jak algoritmus vlastně funguje
Zkusme si to ukázat na příkladu. Vezměme si fiktivní číslo karty: 3845 0732 7862 1263
Poslední trojka je kontrolní číslice, tu si necháme stranou. Teď postupujeme ve třech krocích:
První krok: Zdvojnásobení každé druhé číslice
- Začneme zprava u číslice před kontrolní číslicí, tedy u šestky. Každou druhou číslici zdvojnásobíme. Pokud nám vyjde dvouciferné číslo, sečteme jeho číslice. Šest krát dva je dvanáct, takže výsledek je 1+2=3.
- Projdeme celé číslo: 3×2=6, 4 zůstává, 0×2=0, 3 zůstává, 7×2=14 tedy 1+4=5, a tak dál.
Druhý krok: Sečtení všech číslic
- Teď sečteme všechny zdvojnásobené hodnoty: 6+8+0+6+5+3+2+3 = 33
- Pak přičteme číslice, které jsme nezdvojnásobovali: 8+5+7+2+8+2+2 = 34
Třetí krok: Kontrola
- Sečteme obě čísla: 33+34 = 67. Přičteme kontrolní číslici: 67+3 = 70.
- A máme výsledek. Pokud je celkový součet dělitelný deseti, číslo karty je platné. V našem případě to vychází, takže karta prošla kontrolou.
Co algoritmus neodhalí?
I Luhnův algoritmus má své limity. Například nepozná, když zaměníte číslice 09 za 90 nebo naopak. Také záměny některých párů číslic mu uniknou – když si spletete 22 s 55, 33 s 66 nebo 44 s 77, algoritmus to neodhalí.
A hlavně: algoritmus jen ověří, že číslo je matematicky v pořádku. Neřekne vám ale nic o tom, jestli je karta platná, zda vypršela její platnost, jestli je zablokovaná nebo třeba odcizená. Na to musí systém kontaktovat banku.
Pro běžného uživatele to možná není nutná znalost, ale pravidla čísel na kartě mají svůj význam. Díky Luhnovu algoritmu webové stránky okamžitě poznají hrubé chyby při psaní čísla karty. Ušetří se tím čas a zbytečné dotazy do bankovních systémů. Je to elegantní způsob, jak odfiltrovat zřejmé nesmysly ještě před tím, než se transakce vůbec nechá prověřit. Takže až budete příště platit kartou online a systém vám vyhodí chybu po napsání čísla, vzpomeňte si na pana Luhna a jeho chytrý matematický trik z padesátých let.
Zdroj: Scientific american, Wikipedia