ITニュース、ほか何でもあり。by KGR

ITニュースの解説や感想。その他、気になる話題にもガンガン突っ込む。映画の感想はネタばれあり。

年金番号に「チェックディジット」はないのか。

2009-01-25 00:10:17 | IT
生きてるのに「死亡」 年金ストップ 社保庁ミス(朝日新聞) - goo ニュース

なぜこんな間違いが起こったか。

基礎年金番号の入力ミスだそうです。

番号だけでやったから?
いえ、そうは思いません。

いろんなものに識別番号をつけるのはよくあることで、
それ自体が悪いことではありません。

桁数が多くても少なくても番号の入力ミスは起こりえますが、
桁数が多いほど入れ間違う可能性は高くなります。

また、数字だけでできている番号の場合、
入力ミスを発見するのは難しくなります。

そこで、入力ミスを完全になくすのが無理とすれば、
ミスを発見しやすくする方法が取られます。

その一つが「チェックディジット」です。
直訳すれば「検査数字」ということになります。

付け方、計算の仕方はいろいろ手法がありますが、
ざっくりと言うと、数字の間違いを検知する仕組みです。

例えば、ある会員番号が5桁の数字だとします。

13579番と13578番を入力間違っても、
どちらの数字も実在する番号であれば、間違いかどうかはわかりません。

そこで、いろんなやり方がありますが、
わかりやすい例として、全部のケタを足してその下1ケタを付け加え
6ケタの番号にすることにしてみます。

この場合、その加える数字をチェックディジットと言います。

13579番は、
1+3+5+7+9=25なので、下ひとけたは5、
6ケタ目を加えた会員番号は、135795となります。
最初の5桁が本当の意味での会員番号で、最後の1桁がチェックディジットです。

では、チェックディジット付きの番号を間違えたらどうなるでしょう。

135795を一文字間違えて、135785と入力したとしましょう。
検算すると、1+3+5+7+8=24となり、
計算上のチェックディジットは4なのに、入力では5となっています。

これで入力に間違いがあったことが判ります。

賢明な方はお分かりでしょうが、
この方法では135795を135975と、
7と9を入れ替えて間違えると、どちらもチェックディジットは5となり、
いずれも合っているので間違いを検知できません。

この場合は、となりあった数字だけでなく、
最初の5桁のどの2つを入れ替えても同じチェックディジットになります。

また、13579でも、13524でも同じチェックディジットになるなど、
2つ間違うと検知できない場合がでてきます。

チェックディジットの出し方(計算式)にはいくつもの方式があり、
現実にはこんな単純な式ではなく、もっと複雑な計算式を使います。

また2重にチェックディジットをつけるやり方もあって、
(クレジットカードなどはそうなっている)
どこまで厳密に検証するかによって方式が変わってきます。

いずれにせよ、どんなに注意深く慎重にやっても、
人のやることだから間違いを完全になくすことはできない。

とすれば、間違いが起こってもそれが判るようにしよう、ということです。

これは特別な話ではなく、要は大切な番号であれば、
ミスを検知できるようその番号の付け方に工夫をするということです。

これはシステム設計者、システムエンジニアにとってみれば
常識中の常識、基本中の基本、初歩の初歩。
新人教育のテキストにも出てきそうな事柄です。

基礎年金番号にチェックディジットが付いていないとは到底思えないのですが、
だとすれば、なぜ単純な入力ミスが検知できないのか、摩訶不思議、理解不能です。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« QSOパーティ、ログ提出 | トップ | Windows7ベータ版、インスト... »
最新の画像もっと見る

コメントを投稿

IT」カテゴリの最新記事