ハッシュ関数

「ハヤシライス」という食べ物を、私はあまり好きではありません。

味が単調だし、明らかにカレーライスの二番煎じであるところがイヤなのかもしれません。

カレーのCMで南利明が「ハヤシもあるでよ〜」と言っていたように、あくまでも二番手なのです。

「ハヤシ」の語源には、人名説など諸説ありますが、「ハッシュドビーフ」由来との説が有力です。

ならば「ハッシュド」とはなんぞや。「hash」という動詞の意味を、手持ちの英和辞典で調べてみると、

(1)(肉などを)細かに切る、(2)ごた混ぜにする、(3)徹底的に討議(吟味)する

ここからが本題です。最近「ハッシュ関数」という言葉をよく耳にしますね(耳にしませんか)。

あるデータから、一定の演算によって、固定長の数値(ハッシュ値)を生成することです。

元データを細かく切って、ごた混ぜにして、徹底的に吟味して算出した数値ということなのでしょうか。

データの改ざんの有無を見つけ出すのに有効な手法であり、セキュリティーの要です。

厚労省が、レセプト情報と特定健診情報を統合する際に、データの匿名化に使ったのもハッシュ関数でした。

保険者番号や氏名、生年月日等の情報から計算したハッシュ値によって、両者を「名寄せ」する算段でした。

ところが元データに全角と半角が混在していたため、ハッシュ値も異なり、名寄せ不可能となりました。

たしかにレセプト上では、保険者の記号番号には全角の数字が使われています。いまどき全角の数字です。

何億もかけて構築したシステムが、こんな時代遅れのしきたりによって、あっさり役立たず。

いつも思うことですが、レセプトに限らず、お役所は全角数字に固執しすぎです。