ハッシュ関数
データをハッシュ化する関数
同じ値を入れると必ず同じハッシュが返却される
不可逆である
元のデータが一文字でも変わると返却される値は全く異なるものになる
ハッシュ関数の種類
division method
名前xを表の大きさ$ Nで割った剰余を関数の結果とする
$ Nが素数の場合に良い方法
なんで?
$ N^2で割ることもある
mid-square method
名前xの2乗$ x^2の中程のビットを適当に取り出したものを関数の結果とする
folding method
名前xの各桁または各部分桁列どうしを加えたり、排他的論理和を取ったりしたものを関数の結果とする