レポ
クラウドで
伸びる人沈む人

連絡特定商取引将来設計運営方針&メルマガSEの彼女は?
成功レポート集 Fedora9インストール! EclipseでJava Oracleバックアップのアーキテクチャ ゼロからHPでCGI 便利ネット知識
無料レポ&講習 IT業界の実態 linux処方箋 Java処方箋 Oracle処方箋 Perl処方箋
パスワードをCGIで暗号化する

<IT技術の処方箋:パスワードをCGIで暗号化する>



.htaccessや.htpasswdなどを利用して、
暗号化したパスワードを作成する場合があります。

暗号化したパスワードは、CGI(Perl)で作成するのが簡単ですね。
以下のCGIを参考にして解説します。

#!/usr/bin/perl
$pswd="pass";
$salt="12";
$crypt_pswd = crypt($pswd,$salt);

print "$crypt_pswd\n";

●実行すると、passを暗号化したものが表示されます。
暗号化キーは、$salt= 12となります。


この暗号化キーが同じだと、
基本的にどのマシンでつくっても毎回同じ暗号になります。


セキュリティを高めるためには、暗号化キーを乱数にしたほうがいいでしょう。
以下のような関数を使ってみましょう。

#!/usr/bin/perl
$pswd="pass";
$salt = &get_salt;
$crypt_pswd = crypt($pswd,$salt);
print "$crypt_pswd\n";
sub get_salt {
my(@s_set)=('a'..'z','A'..'Z','0'..'9','.','/');
srand;
my($s1) = int(rand(64));
my($s2) = int(rand(64));
my($salt) = $s_set[$s1] . $s_set[$s2];
return $salt;
}

●実行すると、毎回違う暗号になりますね。
こちらを使ったほうが安全です。

●参考
特定のファイル(拡張子)へアクセス不可とする
http://www.searchman.info/tips/2180.html

パスワードをCGIで暗号化する
http://www.searchman.info/tips/2190.html

特定のディレクトリへのアクセス制限
http://www.searchman.info/tips/2200.html


クラウドで伸びる人沈む人 ||Copyright © 2005-2020 SearchMan,All Rights Reserved.