Luhnin algoritmi

Tarkista numerosarjan oikeellisuus Luhnin algoritmilla tai laske puuttuva tarkistusnumero – sama menetelmä on käytössä esimerkiksi maksukorttien numeroissa.

Toiminto

Numerosarja

Kirjoita pelkät numerot. Välilyönnit ja väliviivat jätetään huomiotta. Tarkistustilassa anna koko sarja, laskentatilassa sarja ilman viimeistä numeroa.

Esimerkit:

Tulokset

  • Tulosta
  • Linkitä
  • Luhnin algoritmi – tarkistusnumero ja validointi

    Luhnin algoritmi on yleinen mod 10 -tarkistussumma, jolla havaitaan numerosarjojen tavallisimmat näppäilyvirheet. Tämä laskuri tarkistaa, läpäiseekö annettu numerosarja Luhn-tarkistuksen, ja osaa myös laskea puuttuvan tarkistusnumeron. Samaa menetelmää käytetään muun muassa maksukorttien numeroissa ja IMEI-koodeissa.

    Mihin Luhnin algoritmi perustuu?

    Algoritmi lisää numerosarjan loppuun tarkistusnumeron, joka valitaan niin, että painotettu numeroiden summa on jaollinen 10:llä. Kun sarja myöhemmin syötetään, sama lasku toistetaan: jos summa ei mene tasan kymmenellä, jokin numero on muuttunut.

    Sarja on kelvollinen, jos painotettu summa mod 10 = 0

    Laskennan vaiheet

    Numerot käsitellään oikealta vasemmalle:

    1. Aloita tarkistusnumerosta ja etene vasemmalle.
    2. Kerro joka toinen numero (toinen, neljäs, kuudes oikealta) kahdella.
    3. Jos kaksinkertaistettu luku on suurempi kuin 9, vähennä siitä 9 (sama kuin laskea sen numerot yhteen).
    4. Laske kaikki numerot yhteen.
    5. Jos summa on jaollinen 10:llä, sarja läpäisee tarkistuksen.

    Vaiheittainen esimerkki

    Tarkistetaan numerosarja 7992739871 3, jossa viimeinen numero 3 on tarkistusnumero.

    Jos jokin numero olisi syötetty väärin, summa ei enää menisi tasan kymmenellä ja laskuri ilmoittaisi virheestä.

    Tarkistusnumeron laskeminen

    Kun sinulla on numerosarja ilman tarkistusnumeroa, oikea tarkistusnumero saadaan laskemalla painotettu summa ja valitsemalla numero, joka täydentää sen seuraavaan kymmeneen:

    tarkistusnumero = (10 − (summa mod 10)) mod 10

    Tässä summa lasketaan kuin tarkistusnumero olisi jo paikallaan, eli kaksinkertaistaminen alkaa sarjan oikeanpuoleisimmasta numerosta.

    Mitä virheitä Luhn havaitsee?

    Mihin Luhnia käytetään?

    Luhnin algoritmi on käytössä maksukorttien numeroiden viimeisenä tarkistusnumerona, jolloin selvästi virheellinen kortinnumero voidaan hylätä jo ennen tiedonsiirtoa. Sitä käytetään myös matkapuhelinten IMEI-tunnuksissa ja useissa muissa kansainvälisissä numerointijärjestelmissä. Yksinkertaisuutensa ansiosta tarkistus voidaan tehdä nopeasti jopa käsin.

    Usein kysytyt kysymykset

    Mikä on Luhnin algoritmi?
    Luhnin algoritmi on yksinkertainen tarkistussummakaava, jolla havaitaan numerosarjoissa tavallisimmat näppäilyvirheet. Se tunnetaan myös nimellä mod 10 -algoritmi. Menetelmä ei suojaa väärentämiseltä, vaan sen tarkoitus on huomata vahingossa syntyneet virheet, kuten yksi väärä numero tai kahden vierekkäisen numeron vaihtuminen.
    Miten Luhn-tarkistus lasketaan?
    Numerot käydään läpi oikealta vasemmalle. Joka toinen numero (tarkistusnumerosta laskettuna toinen, neljäs ja niin edelleen) kerrotaan kahdella; jos tulo on suurempi kuin 9, siitä vähennetään 9. Kaikki numerot lasketaan yhteen, ja jos kokonaissumma on jaollinen 10:llä, sarja on kelvollinen.
    Mihin Luhnin algoritmia käytetään?
    Luhnin algoritmi on käytössä esimerkiksi maksukorttien numeroiden viimeisenä tarkistusnumerona, matkapuhelinten IMEI-koodeissa ja monissa kansainvälisissä tunnisteissa. Se mahdollistaa virheen havaitsemisen heti syöttövaiheessa ennen kuin numeroa lähetetään eteenpäin.
    Käytetäänkö Luhnia suomalaisessa viitenumerossa?
    Suomalaisen pankkiviitteen tarkistusnumero lasketaan eri menetelmällä, jossa numeroita painotetaan kertoimilla 7, 3 ja 1. Se ei siis ole Luhnin algoritmi. Luhn on kuitenkin laajasti käytetty maksukorttialalla ja monissa kansainvälisissä tunnisteissa, joten se on hyödyllinen yleinen tarkistustyökalu.
    Mikä on tarkistusnumero?
    Tarkistusnumero on numerosarjan loppuun lisätty numero, joka lasketaan muiden numeroiden perusteella. Sen tehtävä on varmistaa, että sarja on syötetty oikein: jos jokin numero muuttuu, tarkistusnumero ei enää täsmää ja virhe paljastuu. Luhnin algoritmissa tarkistusnumero valitaan niin, että kokonaissummasta tulee jaollinen 10:llä.
    Oliko tästä laskurista apua?

    Linkitä tämä laskuri

    Kopioi koodi ja liitä se omalle sivustollesi.

    Suositut laskurit