「ハッシュ化されたパスワード」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> ハッシュ化されたパスワード とは、平文 の パスワード を推測不能な状態に ハッシュ ...」) |
(相違点なし)
|
2013年7月27日 (土) 09:15時点における版
ハッシュ化されたパスワード とは、平文 の パスワード を推測不能な状態に ハッシュ アルゴリズムを利用して、ハッシュ値 です。人間にとっては、ただのバイト列です。
読み方
- ハッシュ化されたパスワード
- はっしゅか された ぱすわーど
概要
ハッシュ化されたパスワード とは、平文 の パスワード を推測不能な状態に ハッシュ アルゴリズムを利用して、ハッシュ値 です。人間にとっては、ただのバイト列です。 ハッシュ関数 は、暗号理論にもとづいて開発された、安全なアルゴリズムを利用すべきです。
パスワード を 平文 でデータベースなどのシステムに保存すると、システム管理者 は、パスワード を閲覧できます。 パスワードが流出した場合、そのまま利用できます。
以下の問題を解決するために、パスワード は、ハッシュ化して保存するのが一般的です。
扱いやすくするために、Base64によるエンコードをされているかもしれません。
ただ単にハッシュ化すればいいわけではない
単純に MD5 で ハッシュ化 した場合、どうなるでしょうか?
hash-value = md5 ( clear-text-password )
MD5 は、すでに推奨されません。 GPU を利用して、簡単にパスワードクラックできます。
上記の手順でハッシュ値 を作成する場合、 同じパスワード を設定しているユーザが容易にわかってしまいます。それは、同じ平文をハッシュすると、常に同じハッシュ値 になるからです。 1つのパスワード がわかれば、ほかの同じパスワード を設定しているユーザのパスワードがわかります。
このような手順では、レインボーテーブル を作成することで、より早く、パスワードクラック が可能です。 レインボーテーブル とは、あらかじめ作成しておくハッシュ化されたパスワード のリストです。
「ハッシュ化されたパスワード」の作り方
正しい ハッシュ化されたパスワード の生成は、以下の通りです。