PHP 簡易検証コード生成例_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:47:41
オリジナル
1062 人が閲覧しました

検証コードを使用すると、一部のユーザーがパスワードを推測するために繰り返し送信したり、総当たりツールを使用してパスワードを推測したりすることができなくなります。以下にセッションベースの検証コード プログラムを示します。


Web サイトにログインしたり登録したりする場合、他人が機械的な暴力を使って登録やログインを行うことを防ぐために、確認コードがよく使用されます。確認コードを追加すると、Web サイトがある程度安全になります。次に、比較的簡単な確認コードの生成を示します。 、セッションの割り当ても提供します。

コードは次のとおりです コードをコピー

session_start();
header(“コンテンツタイプ: image/png”);
//トゥルーカラーのホワイトペーパーを作成します
$im = @imagecreatetruecolor(50, 20) または die("画像の作成に失敗しました");
//背景色を取得します
$background_color = imagecolorallocate($im, 255, 255, 255);
//背景色を塗りつぶします(これは石油バレルに似ています)
imagefill($im,0,0,$background_color);
//枠線の色を取得します
$border_color = imagecolorallocate($im,200,200,200);
// 境界線の色 200,200,200 で長方形を描画します
imagerectangle($im,0,0,49,19,$border_color);

//背景を 1 行ずつ表示します。全画面表示の場合は 1 または 0 を使用します
for($i=2;$i //ランダムな光の色を取得します
$line_color = imagecolorallocate($im,rand(200,255),rand(200,255),rand(200,255));
//線を描く
イメージライン($im,2,$i,47,$i,$line_color);
}

//フォントサイズを設定する
$font_size=12;

//印刷テキストを設定します
$Str[0] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
$Str[1] = "abcdefghijklmnopqrstuvwxyz";
$Str[2] = “01234567891234567890123456″;

//最初のランダムなテキストを取得します
$imstr[0]["s"] = $Str[rand(0,2)][rand(0,25)];
$imstr[0]["x"] = ランド(2,5);
$imstr[0]["y"] = ランド(1,4);

//2 番目のランダムなテキストを取得します
$imstr[1]["s"] = $Str[rand(0,2)][rand(0,25)];
$imstr[1]["x"] = $imstr[0]["x"]+$font_size-1+rand(0,1);
$imstr[1]["y"] = rand(1,3);

//3番目のランダムなテキストを取得します
$imstr[2]["s"] = $Str[rand(0,2)][rand(0,25)];
$imstr[2]["x"] = $imstr[1]["x"]+$font_size-1+rand(0,1);
$imstr[2]["y"] = rand(1,4);

//4 番目のランダムなテキストを取得します
$imstr[3]["s"] = $Str[rand(0,2)][rand(0,25)];
$imstr[3]["x"] = $imstr[2]["x"]+$font_size-1+rand(0,1);
$imstr[3]["y"] = rand(1,3);

//表示された配列をセッションに割り当てます
$_SESSION['CODE'] = $imstr[0]["s"].$imstr[1]["s"].$imstr[2]["s"].$imstr[3]["s" ];

//ランダムな文字列を書き込む
for($i=0;$i $text_color = imagecolorallocate($im,rand(50,180),rand(50,180),rand(50,180));
imagechar($im,$font_size,$imstr[$i]["x"],$imstr[$i]["y"],$imstr[$i]["s"],$text_color);
}
//画像を表示する
imagepng($im);
//写真を破棄します
imagedestroy($im);
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632840.html技術記事確認コードを使用すると、一部のユーザーがパスワードを推測するために繰り返し送信したり、ブルート フォース ツールを使用してパスワードを推測したりすることができなくなります。以下に基づいた方法を示します。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!