Luhnアルゴリズム

クレジットカード番号は一定の法則に基づいて番号が割り振られており、うっかり間違ってもチェックできるようになっている。
たとえば、クレジットカード番号は16桁の数字が並んでいる。
3540 0549 7890 654※
だとする。※の数字はひとつの数字になるようになっている。
3540の3を1番目として、奇数番目は2倍、偶数番目はそのままにする。
すると、6580 0589 (14)8(18)0 (12)58※ になる。
そして、二桁の数字は十の位と一の位を足して一桁にする。
すると、6580 0589 5890 358※になる。
これらの数字をすべて足して、10の倍数になるようになっているので、
6+5+8+0+0+5+8+9+5+8+9+0+3+5+8+※=79+※なので、※は1になる。
インターネット通販でカード番号を入力するときに、一瞬でカード番号が間違っていることを指摘されたときは、この計算をしている。
実際にはさらにカード会社に問い合わせて有効なカード番号かは照会する。
15桁目までわかれば、最後の数字は計算でわかるのだ。
すべてのクレジットカードはこの規則で番号がつけられている。

Translate »
タイトルとURLをコピーしました