Bagaimana untuk menggunakan kod pengesahan dalam borang PHP untuk mengelakkan serangan automasi?
Dengan perkembangan Internet, serangan automatik telah menjadi cabaran utama kepada keselamatan rangkaian. Untuk melindungi keselamatan tapak web, banyak tapak web menggunakan kod pengesahan untuk pengesahan semasa proses penyerahan borang. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan kod pengesahan borang untuk mengelakkan serangan automatik.
Pertama, kita perlu menambah kotak input kod pengesahan pada halaman borang, menjana kod pengesahan rawak di latar belakang dan menyimpannya dalam Sesi pengguna. Apabila pengguna menyerahkan borang, mereka perlu mengesahkan sama ada kod pengesahan yang dimasukkan adalah konsisten dengan yang disimpan dalam Sesi. Berikut ialah contoh mudah:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
|
Dalam kod di atas, kami mentakrifkan tiga fungsi: generateCaptcha()
digunakan untuk menjana kod pengesahan rawak dan menyimpannya ke Sesi, outputCaptcha( )
digunakan untuk mengeluarkan kod pengesahan ke halaman dan validateCaptcha()
digunakan untuk mengesahkan sama ada kod pengesahan yang dimasukkan oleh pengguna adalah betul. generateCaptcha()
用来生成随机验证码并保存到Session中,outputCaptcha()
用来将验证码输出到页面,validateCaptcha()
用来验证用户输入的验证码是否正确。
然后,我们需要创建一个名为captcha.php
的文件来输出验证码的图片。以下是一个简单的示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
在captcha.php
文件中,我们先使用imagecreatetruecolor()
创建一个100x30像素的真彩色图片,在图片上填充一个白色背景,然后使用随机生成的验证码在图片上输出黑色文本。最后,我们使用imagepng()
将图片输出到页面上。
在用户提交表单后,我们需要在后台验证用户输入的验证码是否正确。以下是一个简单的submit.php
captcha.php
untuk mengeluarkan imej kod pengesahan. Berikut ialah contoh mudah: 1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
captcha.php
, kami mula-mula menggunakan imagecreatetruecolor()
untuk mencipta imej warna sebenar 100x30 piksel dan mengisi imej A latar belakang putih dan kemudian output teks hitam pada imej menggunakan kod pengesahan yang dijana secara rawak. Akhir sekali, kami menggunakan imagepng()
untuk mengeluarkan imej ke halaman. Selepas pengguna menyerahkan borang, kami perlu mengesahkan di latar belakang sama ada kod pengesahan yang dimasukkan oleh pengguna adalah betul. Berikut ialah contoh fail submit.php
mudah: 🎜rrreee🎜Dengan kod di atas, kami boleh menggunakan kod pengesahan dalam borang PHP untuk mengelakkan serangan automatik. Pengguna perlu memasukkan kod pengesahan yang betul secara manual untuk menyerahkan borang, yang meningkatkan keselamatan tapak web. Pada masa yang sama, kami juga memastikan keunikan dan kesahihan kod pengesahan dengan menyimpannya dalam Sesi. 🎜🎜Sudah tentu, kod pengesahan hanyalah satu cara untuk menghalang serangan automatik dan tidak boleh menghalang sepenuhnya semua serangan berniat jahat. Tetapi dengan menggabungkannya dengan langkah keselamatan lain, kami boleh melindungi tapak web kami dengan lebih baik dan mengurangkan risiko serangan automatik. 🎜Atas ialah kandungan terperinci Bagaimana untuk menggunakan captcha dalam bentuk PHP untuk mengelakkan serangan automasi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!