پیاده سازی تصویر امنیتی (CAPTCHA) در C#

در این مقاله میخواهیم تصویر امنیتی را در سی شارپ پیاده سازی کنیم

پیاده سازی تصویر امنیتی (CAPTCHA) در C#

در این مقاله خواهید دید که چگونه بدون استفاده از کتابخانه captcha و سازنده تصویر ،تصویر امنیتی ایجاد کنیم.

Captcha (Completely Automated Public Turing test to tell Computers and Humans Apart) برای امتحان کردن و تشخیص کسی که از کامپیوتر استفاده میکند انسان باشد و نه یک رباط.

ما همه به نیاز استفاده از تصویر امنیتی آگاه هستیم و از کتابخانه تصویر امنیتی یا پلاگین برای ایجاد captcha به صورت تصویر  یا متن برپایه تصویر به دلیل راحتی و آسانی کار استفاده میکنیم.

ما می توانیم به سادگی دانلود کنیم و یا  تصاویر ی از متن یا اعداد را تولید کنیم..تعداد زیادی از ویرایشگرهای عکس در حال حاضر در بازار هستند که  آزادانه در دسترس می باشند.

حالا برای پیاده سازس واقعی یک پروژه جدید از نوع وب فرم بسازید و صفحه ای که میخواهید تصویر امنیتی را پیاده سازی کنید انتخاب کنید. در اینجا یک Image Button داریم و یک textbox برای وارد کردن متن توسط کاربرحال به قسمت aspx.cs رفته و کد زیر را در رویداد Page_Load بنویسید:

protected void Page_Load(object sender, EventArgs e)  
{  
    if (!IsPostBack) //Check whether this is pos back occurred or not  
    {  
        DateTime now = DateTime.Now;  
        int s = now.Second;  
        a = s % 10;  
        if (a == 0)  
        {  
            ImageButton1.ImageUrl = "~/imge/0.jpg"; //captcha image 1  
        }  
        if(a == 1)  
        {  
            ImageButton1.ImageUrl = "~/imge/1.jpg"; //captcha image 2  
        }  
        ……………………………………………………………..  
        …………………………………………………….  
    }  
} 

سپس در رویداد کلیک دکمه ای که قرار دادیم کد زیر را مینویسیم:

protected void Button1_Click(object sender, EventArgs e)  
{  
    switch (a)  
    {  
        case 0:  
            if (TextBox1.Text == "abc")  
            {  
                Response.Write("You are a man…");  
            }   
            else   
            {  
                Response.Write("Robot Found.. Try Again");  
                Response.Redirect(Request.RawUrl.ToString());  
            }  
            break;  
        case 1:  
            if (TextBox1.Text == "def")  
            {  
                Response.Write("You are a man..");  
            }   
            else   
            {  
                Response.Write("Robot found .. try again");  
                Response.Redirect(Request.RawUrl.ToString());  
            }  
            break;  
            ………………………………………………….  
            ……………………………………………………………………………………………………  
            //We can extend it more as per our requirement.  
    }  
} 

دانلود فایل های ضمیمه مخصوص اعضای سایت می باشد !
کاربر مهمان! جهت دانلود و استفاده از امکانات سایت لطفا وارد سایت شوید و یا ثبت نام کنید