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