目次:
クレジットカードでは、チェックサムはアカウント番号の1桁の数字で、コンピュータ、または関係する計算式に精通している人なら誰でも番号が有効かどうかを判断できます。チェックサムは、誤って入力されたクレジットカード番号、または偽造者によって作成された偽のクレジットカード番号を識別するのに役立ちます。
チェックサム
チェックサムは、一連のデータに埋め込まれた値です。チェックサムを使用すると、保存中または転送中にそのデータセットにエラーが発生したかどうかを簡単に判断できます。それが大きい配達と来るパッキングスリップのように考えてください。出荷中に紛失したものがないことを確認する方法は、各明細を梱包明細と照合することです。データを扱うときに、情報が完全に届いたことを確認する方法は、チェックサムと照らし合わせて確認することです。
チェックデジット
クレジットカードでは、チェックサムは「チェックディジット」の形式を取ります。通常の16桁のクレジットカード番号では、最初の6桁がカードを発行した機関を識別します。次の9桁は、カードに関連付けられている個々のアカウントを識別します。最後の桁、16桁目はチェックディジットです。クレジットカード発行会社は、最初の15桁をLuhnアルゴリズムと呼ばれる数式に変換します。これにより、1桁の結果が得られます。その結果がチェックディジットになります。
目的
チェックディジットの主な目的は、カード番号が有効であることを確認することです。あなたがオンラインで何かを買っていて、あなたが2桁の桁を切り替えることによってあなたのクレジットカード番号を間違ってタイプしたとしましょう。おそらく最も一般的なエラーです。ウェブサイトがあなたが入力した番号を見て最初の15桁にLuhnアルゴリズムを適用すると、結果はあなたが入力した番号の16桁目と一致しません。コンピュータは番号が無効であることを認識しており、承認のために購入を送信しようとすると番号が拒否されることを認識しています。そのため、番号を再入力するように求められます。チェックデジットの第2の目的は、偽のクレジットカード番号を作成しようとする不器用な試みを阻止することです。しかしながら、Luhnアルゴリズムに精通している偽造者は、この特定のハードルを乗り越えることができます。
実際のアルゴリズム
16桁のカード番号を確認するには、最初の15桁(機関コードと個々のアカウントID)を使用します。たとえば、カード番号4578 4230 1376 9219では、これらの数字は次のようになります。
4-5-7-8-4-2-3-0-1-3-7-6-9-2-1
最初の桁から始めて、2桁ごとに2を掛けます。
8-5-14-8-8-2-6-0-2-3-14-6-18-2-2
あなたが2桁の数字を持っているたびに、ただ1桁の結果のためにそれらの数字を一緒に足してください:
8-5-5-8-8-2-6-0-2-3-5-6-9-2-2
最後に、すべての数字をまとめて追加します。
8 + 5 + 5 + 8 + 8 + 2 + 6 + 0 + 2 + 3 + 5 + 6 + 9 + 2 + 2 = 71
この数字をチェックディジットに追加すると、結果は10の偶数倍になるはずです。この場合:
71 + 9 = 80
したがって、番号は有効です。アルゴリズムが10の倍数を生成しない場合、カード番号は無効になります。