IT用語 システム開発

チェックデジットの仕組みを学ぼう!

2023年5月25日

ポイントカードや銀行口座、マイナンバーの番号など日々の生活において、色々な識別番号が使われています。

それらの番号は当然、システムなどで使われるのですが、システムへ入力した際に間違っていると大変ですよね。

例えば、自分のポイントカードの番号をシステムが間違えて読み込み、その結果、ポイントが別の人に付与されてしまったら悲しいですよね。

番号を間違えて扱ってしまうことを回避するために、誤りを気付かせるための仕組みがあります。

今回は番号の読み取り誤りを回避するためのチェックデジットに関して解説していきます。

チェックデジットとは?

チェックデジット(check digit)は、システムにおいて誤入力を無くすために、各種コードへ付与された数字のことです。

チェックデジットを使うことで、簡単に誤った番号であることを検知することができるので、銀行口座番号をはじめ様々な番号に付与されています。

チェックデジットの作成方法は色々ありますが、「ある符号から一定の計算式によって1桁以上の数字を算出し、符号に追加して使用する」というのが最も使われる方式ですね。

以下に簡単なチェックデジット作成の例を載せてますが、バーコードが汚れてしまい、たまたまエラーになったことを検出したい程度の簡単なものはチェックデジットの算出方法が公開されています。

しかし、大事な情報の偽造の防止などが必要とされる場合は適合する番号が簡単に逆算できないような複雑な計算方法を採用したり、算出方法を非公開とすることもあるみたいですね。

チェックデジット生成の流れ

チェックデジットは以下のように様々な用途で使われています。

チェックデジットを使った番号例

  • バーコード
  • 学校の学籍番号
  • 金融機関の口座番号
  • クレジットカードの番号
  • 運転免許証
  • マイナンバー
  • 乗車券など

具体的なチェックの流れ

では、チェックデジットを使った具体的なチェック方法を見ていきましょう。

と言っても、全然難しくなく、以下の流れでチェックします。

チェックデジットを使ったチェックの流れ

  • チェックする番号をシステムへ入力または読み込む
  • 取り決めたチェックデジットのルールを元にチェックするための値を読み取った番号から算出する
  • 算出された値と読み取った番号に付与されているチェックデジットを比較して、データの正しさを判定する
チェックデジットを使ったチェックの例

チェックデジットはバーコードだけでなく、QRコードにも埋め込まれていますね。

また、リーダーでの読み取り時だけでなく、手入力作業などにおいても、誤入力検出に利用してます。

まとめ

今回はチェックデジットの仕組みと使い方に関して解説しました。

チェックデジットのまとめ

  • チェックデジットは誤入力を無くすために、各種コードへ付与された数字のこと
  • チェックデジットの作成方法は色々ある
  • 商品コードや社員番号、免許証、銀行口座など様々な用途で使われる

チェックデジットを使うことで、間違ったデータ入力や読み取りを防止し、正しい番号をシステム内で取り扱えますし、導入も比較的楽なので、活用シーンが多いのは覚えておくと良いですね。

また、誤りを検出した後の誤り訂正に関しては、以下の記事で解説していますので、併せて読んでみてください。

以上です!

-IT用語, システム開発