ハッシュ化されたパスワード

提供: セキュリティ
2013年8月25日 (日) 18:14時点におけるDaemon (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク

ハッシュ化されたパスワード とは、平文パスワード を推測不能な状態に ハッシュ アルゴリズムを利用して、ハッシュ値 です。人間にとっては、ただのバイト列です。

読み方

ハッシュ化されたパスワード
はっしゅか された ぱすわーど

概要

ハッシュ化されたパスワード とは、平文パスワード を推測不能な状態に ハッシュ アルゴリズムを利用して、ハッシュ値 です。人間にとっては、ただのバイト列です。 ハッシュ関数 は、暗号理論にもとづいて開発された、安全なアルゴリズムを利用すべきです。

ハッシュ化されたパスワード は、ハッシュ値 の求め方によって、強度が変わってきます。純粋なハッシュ化だけでハッシュ値(ハッシュ化したパスワード) を求めるのか、ストレッチング を組み込むかによって、強度は変わってきます。

パスワード平文データベースなどのシステムに保存すると、システム管理者 は、パスワード を閲覧できます。 パスワードが流出した場合、そのまま利用できます。

以下の問題を解決するために、パスワード は、ハッシュ化して保存するのが一般的です。

扱いやすくするために、Base64によるエンコードをされているかもしれません。

ただ単にハッシュ化すればいいわけではない

パスワード をただハッシュすればいいわけではありません。

単純に MD5ハッシュ化 した場合、どうなるでしょうか?

hash-value = md5 ( clear-text-password )

MD5 は、すでに推奨されません。 GPU を利用して、簡単にパスワードクラックできます(例: ighashgpu)。

上記の手順でハッシュ値 を作成する場合、 同じパスワード を設定しているユーザが容易にわかってしまいます。それは、同じ平文ハッシュすると、常に同じハッシュ値 になるからです。 1つのパスワード がわかれば、ほかの同じパスワード を設定しているユーザのパスワードがわかります。

このような手順では、レインボーテーブル を作成することで、より早く、パスワードクラック が可能です。 レインボーテーブル とは、あらかじめ作成しておくハッシュ化されたパスワード のリストです。

「ハッシュ化されたパスワード」の作り方

正しい ハッシュ化されたパスワード の生成は、以下の通りです。

関連項目




スポンサーリンク