WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:パスワードを暗号化する(crypt関数)

へのへのもへし [WriteDate : Sat Dec 16 21:48:00 2000]

 暗号化処理について質問があります。
 いまいち crypt 関数についてよく分かりません。ある参考書(リファレンス)には、

  crypt( PLAINTEXT, SALT )
   パスワードを暗号化する関数。
   PLAINTEXTはユーザパスワード、SALTは[a-zA-Z./]の中の2文字
     からなる文字列。

と記述されています。この説明では以下のスクリプトを理解するには苦しいです。

 ## --- 削除キーを暗号化
>1 sub make_pwd {
>2  $times = time;
>3  $salt = substr($times,-2,2);
>4  return crypt($_[0],$salt);
>5 }

 $saltには秒数、下位2桁の整数が代入されると思われるため、上記の参考書の説明(SALTは、[a-zA-Z./])と違う解釈が必要になるのではないか?、と思うのです。
 また、crypt関数の戻り値は、第1引数と第2引数の間でどういう処理がなされてどんな戻り値(暗号化されたパスワードでしょうか?)を出しているのか?、 
 という2つの質問です。
 私の質問の仕方がいまいち分かりづらいと言う方は、『crypt関数について分かりやすく教えてください』、という質問に代えて受け取ってもかまいません。

 よろしくお願いします。

Nobu3 [MAIL] [URL] [WriteDate : Sat Dec 16 23:47:23 2000]

salt には[0-9]もはいります。

で、どんな処理をしているのかは知りません。
ちなみに、認証するときはcryptされたパスワードをsaltに入れるだけでいい様です。
つまり、
$cryptedpass = crypt($pass, '12');
if(crypt($newpass, $cryptedpass) eq $cryptedpass){
  $pass と $newpass は同じ
}else{
  $pass と $newpass は違う
}
ってことです。
回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]