創屋ぷれす

一方向ハッシュ関数

一方向ハッシュ関数について調べたので書いていきたいと思います.

○一方向ハッシュ関数とは
元のデータから固定長のデータ=ハッシュ値を作り出す関数です.
元のデータにはソフトウェアや文章データなどが挙げられます.

圧縮されたデータは,元のデータの特徴を要約したものになるという意味で,
メッセージ・ダイジェスト関数とも呼ばれます.

○使い道
先ほど述べた特徴は,データの改ざんを見つけることに利用できます.
送信前と後のデータのハッシュ値を比べ,それらの値が同じであればデータは改ざんされていないと判断します.
ただし,どこがどのように改ざんされたかまではわかりません.

また,あるハッシュ値に対応するデータは無数にあるので元に戻すことができないという意味で,一方向関数とも呼ばれます.
この特徴は,ユーザー認証に利用できます.
パスワードの代わりにパスワードを元に生成したハッシュ値を送れば,仮に盗聴されてハッシュ値が盗まれても,それを元にパスワードを当てることはまず不可能になります.

○代表的なハッシュ関数
代表的なハッシュ関数として以下の2つが挙げられます.
・MD5
・SHA-1

Comments are closed.