PDA

View Full Version : مبتدی: تصاویر جلوگیری از هک



ya ali
شنبه 01 مهر 1391, 13:12 عصر
با سلام خدمت دوستان

اگه ممکنه آموزش نحوه استفاده از اعداد و حروف تصادفی که در صفحات ثبتنام استفاده می کنند بدید ممنون:خجالت:

AmirGhasemi
دوشنبه 03 مهر 1391, 10:12 صبح
سلام دوست عزيزم
اسم اين روش Captcha است! روشهاي خيلي متفاوتي داره
من خودم يك كلاس نوشته ام كه برايت مي گذارم

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;

namespace Libraries
{
///<summary>
///كلاس استفاده از تصاوير امنيتي جهت جلوگيري از دخالت ماشين مجازي
/// Developed By Amir ghasemi
/// </summary>
/// <remarks>
/// Version 1.1.0
/// </remarks>
public class Captcha
{
/// <summary>
/// تعريف پراپرتي رنگ زمينه كپتچا
/// </summary>
private Color _backColor;
public Color BackColor
{
get
{
return (_backColor);
}
set
{
_backColor = value;
}
}

/// <summary>
/// تعريف رنگ فونت كپتچا
/// </summary>
private Color _forColor;
public Color ForColor
{
get
{
return (_forColor);
}
set
{
_forColor = value;
}
}

/// <summary>
/// Manam Captcha
/// Using For Windows Forms
/// Don't Forget: Using "manam Captcha dll"
/// </summary>
public object[] ManamCaptcha_Esh()
{
object[] objResult = new object[2];
ManamCaptcha.Captcha myManamCaptcha = new ManamCaptcha.Captcha();
myManamCaptcha.BackColor = BackColor;
myManamCaptcha.ForColor = ForColor;
myManamCaptcha.FontSize = 24;
Bitmap myBmp = new Bitmap(myManamCaptcha.LoadCaptcha(myManamCaptcha.G enerateRandomWord(6)));
string strCaptchaCode = myManamCaptcha.CaptchaCode;
objResult[0] = myBmp;
objResult[1] = strCaptchaCode;
return (objResult);
}

/// <summary>
/// Amir Captcha
/// Using For Web Pages
/// Developed By Amir Ghasemi
/// </summary>
/// <returns></returns>
public string AmirCaptcha()
{
string strResult = string.Empty;
string strRandom = string.Empty;
//************************ ايجاد شي گرافيك و ديگر ملزومات مربوط به آن************************
Bitmap objBMP = new Bitmap(60, 20);
Graphics objGraphics = System.Drawing.Graphics.FromImage(objBMP);
objGraphics.Clear(BackColor);
objGraphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
// ************************************************** *********

//************************ تنظيم فونت نوشته روي آن ************************
Font objFont = new Font("Tahoma", 10, FontStyle.Italic);
// ************************************************** *********
//************************ توليد رشته 5 رقمي تصادفي ************************
Random objRandom = new Random();
strRandom = objRandom.Next(12345, 98765).ToString();
// ************************************************** *********

//************************ اضافه كردن متن در جلسه ************************
strResult = strRandom;
// ************************************************** *********
//************************ نوشتن متن **************************************
objGraphics.DrawString(strRandom, objFont, Brushes.White, 6, 3);
// ************************************************** *********

//************************ تنظیم نوع عکس و برگرداندن آن به عنوان خروجی ************************
//مسير ذخيره فايل تصويري را متناسب با پروژه خودتان مشخص نماييد
objBMP.Save(@"E:\Programing Projects\Original_Generic_Web_ Libraries\UI\Images\Bitmap2.gif", System.Drawing.Imaging.ImageFormat.Gif);
// ************************************************** *********
return (strResult);
}
}
}

hamed_hossani
دوشنبه 03 مهر 1391, 10:25 صبح
capcha
http://www.codeproject.com/Articles/8751/A-CAPTCHA-Server-Control-for-ASP-NET
http://www.codeproject.com/Articles/5947/CAPTCHA-Image
http://captcha.codeplex.com/

moslem.hady
دوشنبه 03 مهر 1391, 14:50 عصر
http://programmer.persianblog.ir/post/23