JSP彩色验证码生成有4个随机数字和杂乱背景的图片,数字和背景颜色会改变,服务器端刷新(用history.go(-1)也会变) 产生验证码图片的文件-----image.jsp <%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %> <%! Color getRandColor(int fc,int bc){//给定范围获得随机颜色 Random random = new Random(); if(fc>255) fc=255; if(bc>255) bc=255; int r=fc+random.nextInt(bc-fc); int g=fc+random.nextInt(bc-fc); int b=fc+random.nextInt(bc-fc); return new Color(r,g,b); } %> <% //设置页面不缓存 response.setHeader...
package test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ImageGenerator extends HttpServlet ...{ /** *//** * */ private static final long serialVersionUID = -3938318741402322164L; private static Color getRandColor(int fc, int bc) ...{ Random random = new Random(); if (fc &...
JSP彩色验证码生成有4个随机数字和杂乱背景的图片,数字和背景颜色会改变,服务器端刷新(用history.go(-1)也会变)
产生验证码图片的文件-----image.jsp
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(int fc,int bc){//给定范围获得随机颜色
Random random = new Random();
if(fc>255) fc=255;
&nbs...
package test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ImageGenerator extends HttpServlet ...{ /** *//** * */ private static&...
我们针对验证码技术深入的了解图形编程在ASP.NET中的应用。
验证码技术是目前很多WEB程序采用的一种安全防御技术。系统在登录的时候不但要输出用户名和密码,还要额外输入一种随机生成的验证码文本,此时用户需要正确的输入这三个信息才能登录到系统中。
由于验证码技术能有效的抵御某些黑客攻击,因此得到相当广泛的应用,而且在一些C/S系统中也采用了这种源自WEB开发的技术。
验证码原理
在现在的软件运行环境下,安全成为大部分软件必须考虑的问题,黑客无处不在,攻击方式日益丰富,尤其是WEB系统由于其开放性更是遇到严峻的考验,黑客事件层出不穷,造成的损失和影响也不断变大,对此我们软件开发人员需要对...
在判断的时候只要把取得的文本框的值与“Session["valicode"] ”进行判断是否一致就行了。
//建立位图对象
Bitmap NewbitMap = new Bitmap(90, 22, PixelFormat.Format32bppArgb);
//根据上面创建的位置对象创建绘图面
Graphics g = Graphics.FromImage(NewbitMap);
//以指定的颜色填充矩形区
g.FillRectangle(new SolidBrush(Color.White), new Rectangle(0, 0, 90, 22));
//创建字体对象
Font newfont = new Font("幼圆", 14);
//创建RectangleF结构指定一个区域
RectangleF rectangle = new RectangleF(0, 0, 90, 22);
//创建随机数
Random Newrd = ne...
Quickstart Guide
In the desired position on your form, add the following code to display the CAPTCHA image:
<img id="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
Next, add the following HTML code to create a text input box:
<input type="text" name="captcha_code" size="10" maxlength="6" />
Note: You can change the maxlength and size properties to match your image settings.
The next step is optional, but can be useful to your users if they cannot re...
官方网站:http://www.phpcaptcha.org/
下载地址:http://www.phpcaptcha.org/download/
验证码图片:<img id="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
验证码文本框:<input type="text" name="captcha_code" size="10" maxlength="6" />
看不清验证码:<a href="#" rel="nofollow" target="_blank">Reload Image</a>
后端PHP验证:
<?php
session_start();
include_once $_SERVER['DOCUMENT_ROOT'] . '/securima...
//+-------------------------------------------------
//| 文件 validate_image.php
//| 预先在支持GD库的做好一些图片,推荐使用GIF格式,文件名与图片里
//| 面的里面的数字一致,将图片放入一个文件夹。设置CONFIG里面的数据.
//| 引用 <IMG SRC="{ filepath }/validate_image.php">
//| 验证页面对比
//| $_COOKIE['validate'] == md5($_POST['input'])
//|==================CONFIG START===================
$image_path="numimage";// 图片文件路径 后面没有'/'
$image_ext ="gif";// 图片文件扩展名
//===================CONFIG E...
<?php//小猪会气功session_start();session_register('code');$width = "70";//图片宽$height = "25";//图片高$len = "4";//生成几位验证码$bgcolor = "#ffffff";//背景色$noise = true;//生成杂点$noisenum = 200;//杂点数量$border = false;//边框$bordercolor = "#000000";$image = imageCreate($width, $height);$back = getcolor($bgcolor);imageFilledRectangle($image, 0, 0, $width, $height, $back);$size = $width/$len;if($size>$height) $size=$height;$left = ($width-$len*($size+$size/10))/$size;for ($i=0; $i<$len; $i++){ $randtext = rand(0, 9); &...
PHP图片验证码原代码,需支持gd2.dll扩展,需修改PHP.ini后重启IIS or ap 调用方法<img src="this.php">
<?PHP session_start(); session_register('SafeCode'); $type = 'gif'; $width= 40; $height= 16; header("Content-type: image/".$type); srand((double)microtime()*1000000); $randval = randStr(4,""); if($type!='gif' && function_exists('imagecreatetruecolor')){ $im = @imagecreatetruecolor($width,$height); }else{ $im = @imagecreate($width,$height); } $r = Array(225,211,255,223); $g = Array(225,236,237,215); $b = Array(225,236,166,125); $key = rand(0,3); $backColor = I...
几个GD函数堆砌出来的玩意,只要搞定怎样把中文写到图片上就可以了,因为GD函数只接受UTF8格式编码的文字,所以在写文字前首先要进行编码转换。PHP自带的iconv和mbstring库都可以完成这项工作,但一般的虚拟主机很少支持,所以要自己写个,像这里用gb2utf8完成这项工作。当然如果你的页面就是以UTF8格式存储的,就可以省去这些额外工作。
<?php/***************************************************************** * excode.php * @author 风舞 * @email wjiujun (at) gmail.com * @note 一个中文附加码 ********************************************...
<?phpsession_start();session_register("login_check_number");//昨晚看到了chianren上的验证码效果,就考虑了一下,用PHP的GD库完成了类似功能//先成生背景,再把生成的验证码放上去$img_height=120; //先定义图片的长、宽$img_width=40;if($HTTP_GET_VARS["act"]== "init"){//srand(microtime() * 100000);//PHP420后,srand不是必须的for($Tmpa=0;$Tmpa<4;$Tmpa++){$nmsg.=dechex(rand(0,15));}//by sports98$HTTP_SESSION_VARS[login_check_number] = $nmsg;//$HTTP_SESSION_VARS[login_check_number] = strval(mt_rand("1111","9...