いつもお世話になっております。

ユーザーから入力していただいたパスワードをcrypt関数にて、暗号化したいのですが、

crypt($inpass);

以下のようなエラーメッセージがでてしまいます。
Call to unsupported or undefined function crypt() in

この関数を使用するのに特別な作業等が必要なのでしょうか?

環境は
Win98se
ANHTTPD1.36
php4です。

よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

PHPマニュアルによると、(PHP 3, PHP 4 >= 4.0b1)で


サポートされているようですので、特別な作業無しで
使用できるはずですが・・・。

また、PHPマニュアルによると
「salt引数が指定されない場合、PHPによりランダムに生成されます。」
となっていますので、関数の使用方法も間違っていないようです。

私の環境(PHP4.0.6)では、問題なく使えます。

この際、md5()関数を使用してはいかがでしょうか?

この回答への補足

アドバイス誠にありがとうございます。
回避策としてmd5を使用して構築しているのですが、cryptは、私の環境だとだめということは、私自身の環境に問題があるということですね。
md5ではうまくいってます。

今回はこちらで構築し、サーバーにアップロードする時にでも、もう一度crypt関数を試してみます。

ご親切なアドバイスありがとうございました。m(__)m

補足日時:2001/11/28 16:48
    • good
    • 0

私はPerlからcryptを使用していますが、引数は二つです。


書籍を参考にして使っていますので詳しくは解りませんが、以下の様な感じです。

$saltset = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789./";
$n1 = int(rand 64);
$n2 = ($n1 + time) % 64;
$salt = substr($saltset, $n1, 1) . substr($saltset, $n2, 1);
$pass = crypt($pass, $salt);

crypt自体の使い方は同様なのではないかと予想しているのですが…。
一応御確認下さい。
    • good
    • 0
この回答へのお礼

すばやいアドバイス誠にありがとうございます。

Perlのcrypt関数は私も調べました。
今回の原因は私の環境のせいだということで、
回避策で構築してみます。

ありがとうございました。

お礼日時:2001/11/28 16:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング