「ソルト」の版間の差分

提供: セキュリティ
移動: 案内検索
行2: 行2:
 
vim: filetype=mediawiki
 
vim: filetype=mediawiki
 
-->
 
-->
 
+
[[ソルト]](英単語としては塩という意味)は、[[パスワード]]と共に使われる短いデータのことです。
 
読み方
 
読み方
 
;[[ソルト]]:そると
 
;[[ソルト]]:そると
行19: 行19:
  
 
[[ソルト]]のサイズが十分な長さを持たない場合、[[ソルト]]のパターンが少ないため、よく使われるパスワードの[[レインボーテーブル]]を作ることが容易になります。
 
[[ソルト]]のサイズが十分な長さを持たない場合、[[ソルト]]のパターンが少ないため、よく使われるパスワードの[[レインボーテーブル]]を作ることが容易になります。
 +
 +
== ソルトの要件 ==
 +
 +
* ユーザごとに[[ソルト]]が異なること。
 +
* [[乱数]] であることは、求められていない。
 +
** [[パスワード]]と一緒に保存するなら、[[ソルト]]に予測可能性を求めても意味がない。
 +
* [[ソルト]]は、十分な長さであること。
  
 
== ソルトの保存 ==
 
== ソルトの保存 ==

2013年4月21日 (日) 10:21時点における版

ソルト(英単語としては塩という意味)は、パスワードと共に使われる短いデータのことです。 読み方

ソルト
そると
salt
そると

概要

ソルトは、パスワードを暗号化するときに、同じパスワードを設定しても、暗号化の結果が異なる値になるように、暗号化する前にパスワードに付加する値のことをいいます。

encrypted_password = hash( password + salt )

ユーザが同じパスワードを設定していても、異なるソルトを利用することで、異なるハッシュ値となります。

                                        Passwd Salt
b5325989a9149a34e63e2939771ae9f7 = md5 (test + 123456789)
1af3b5af9bfecc67f52227ee6765d878 = md5 (test + ABCDEFGHI)

ソルトのサイズが十分な長さを持たない場合、ソルトのパターンが少ないため、よく使われるパスワードのレインボーテーブルを作ることが容易になります。

ソルトの要件

  • ユーザごとにソルトが異なること。
  • 乱数 であることは、求められていない。
    • パスワードと一緒に保存するなら、ソルトに予測可能性を求めても意味がない。
  • ソルトは、十分な長さであること。

ソルトの保存

Unixでは、パスワードハッシュと一緒にソルトがパスワードファイルに格納されます。 ソルトパスワードハッシュとは、別のデータベースに保存するほうが安全性は高くなると考えられます。

ソルトの長さ

20文字以上であれば、よいです。

関連項目