ハッシュ

 ハッシュというのは、通信データ(文書など)が本物であるかを素早く認証するのに使われる技術です。
 まず、文章を与えるとそれに対して、ひとつの数値を決める「計算方法」があります。出てくる数値は文章に比べると非常に短くて、たとえば128ビットなど文章の長さによらず一定の長さにします。そして重要なことは、文章がちょっとでも違うと全然違う数が出てくるということです。
 ですから、この数値を見れば文書が改ざんされたかどうかが分かるという仕組みです。そして、短い数値なので文章を全部チェックするよりずっと早く確認できます。この「計算方法」をハッシュ関数、出てくる数値をハッシュ値といいます。
 でもちょっと待って!... たとえば何千文字もある文章をたった128ビットで区別できるわけがありませんよね。違う文章から同じハッシュ値が出ることはいくらだってあるのじゃないかと疑問を感じませんか?
 そうなんです。そこで、ハッシュ関数のもうひとつ重要な性質があります。それは同じハッシュ値を発生する文書を見つけるのが非常に困難だということ。言い換えればハッシュ値が変わらないように偽文書を作ることはとても難しいということです。
 ハッシュ関数も暗号と同じで破られることがあります。ですから「よりよいハッシュ関数」が常に求められているのです。
 ハッシュはハッシュドビーフの「hash」で、ごちゃ混ぜにするという意味があります。ごちゃ混ぜにされちゃっているから偽造できないというわけなのでしょう。 --- Y.O.

→ IT用語 INDEX へ       → TOP へ