کپچا ( CAPCHA ) چیست ؟


 






 
حتما در بسیاری از سایتها دیده اید که وقتی میخواهید کاری انجام دهید در یک کادر کوچک یک کلمه به شما نشان داده میشود .و شما باید آن کلمه را عینا تایپ کنید و اگر اینکار را با موفقیت انجام دادید ، میتوانید به مرحله بعد بروید.
گاهی ممکن است یک سوال ساده ریاضی نیز پرسیده شود و از شما خواسته شود که به آن پاسخ دهید به چنین سوالاتی کپچا میگویند (captcha) که مخفف کلمه :
COMPLETELY AUTOMATED PUBLIC TURINGTEST TO TELL COMPUTER AND HUMAN APART

و اما کپچا چیست؟
 

کپچا در تعریفی ساده ، یک آزمون تورینگ است که نشان میدهد جواب دهنده یک برنامه کامپیوتری بوده یا واقعا انسان پشت کامپیوتر نشسته است .آزمون تورینگ به آزمایشی گفته میشود که برای جدا کردن کامپیوترها وانسانها طراحی میشود.در ازمایش کپچا ، از فرد یک سوال ساده پرسیده میشود تا مشخص گردد که او انسانی حقیقی است یا اینکه یک برنامه کامپیوتری (یا اصطلاحایک bot) خود را بجای یک کاربر جا زده است.
سوال پرسیده شده باید دو ویژگی داشته باشد :
1- یک انسان بتواند براحتی و در طول چند ثانیه به آن پاسخ دهد و دراین زمینه به مشکل برنخورد
2- دوم آنکه کامپیوترهای فعلی ، نباید قادر باشند به چنین سوالاتی پاسخ دهند

روش عمومی:
 

این آزمایش میتواند بروشهای گوناگون انجام شود . عام ترین روش ، نشان دادن یک کلمه بهم ریخته و نامرتب است که معمولا هر حرف آن با یک فونت مجزا نوشته میشود .پس زمینه چنین تصاویری پرازخطوط و نقاط متعدد است تا فقط افراد بتوانند نوشته را تشخیص دهند و نه برنامه های کامپیوتری!!
در این روش کاربر باید کلمه را تشخیص داده و آنرا تایپ کند تا ثابت کند که او انسان است!!
اکثر نرم افزارهای تشخیص متن (ocr) قادر به تشخیص چنین کلماتی نیستند و بارد شدن در این آزمون ، از دسترسی به سایر قسمتها باز میمانند.
از روشهای معمول دیگر ، میتوان به دو روش اشاره کرد: یکی یک معادله ساده ریاضی و دیگری پرسیدن یک سوال بسیار ساده!! مثلا اینکه آسمان چه رنگی است!!؟ یا کلمه IT چند حرف دارد!!

موارد استفاده از کپچا:
 

بسیاری از سایتها ، خدماتی را ارایه میدهند که میتواند بستری برای سو استفاده خرابکاران باشد. آنها میتوانند با نوشتن یک برنامه ساده، از قابلیتهای رایگانی که سایت در اختیار افراد میگذارد در ابعاد وسیع استفاده کنند و کارهای مخرب انجام دهند! این درحالیست که اگر تنها یک کاربر بخواهد از این خدمات استفاده کند ، مشکلی پیش نمی آید.
مثلا یک سایت ممکن است ، خدمات ایمیل رایگان ارایه دهد.درصورتیکه هر فر برای خود یک حساب کاربری ایجاد کند مشکلی نیست،ولی یک فرستنده اسپم میتواند با یک برنامه ساده، صدها حساب کاربری درست کند و از آنها سیلی از اسپم های خود را بسوی دیگر کاربران روانه کند.
یا یک وبلاگ را در نظر بگیرید، اگر کسی بخواهد نظر خود را درباره یک مطلب در بخش نظرات بنویسد باید بتواند این کار را انجام دهد ، ولی ممکن است یک خرابکار بخواهد با یک برنامه کامپیوتری صدها نظر در مورد یک مطلب بگذارد و به این وسیله به وبلاگ مورد نظر حمله کند. یا اینکه این برنامه طوری باشد که یک پیام تبلیغاتی را در بخش نظرات وبلاگهای مختلف قرار دهد . در این حال کپچا مانع آن میشود که برنامه های کامپیوتری دست به چنین کاری بزنند . چون در مرحله کپچا میمانند و نمیتوانند از آن فراتر روند.
همچنین اگر یک نام کاربری داشته باشید و چند بار پسورد آنرا اشتباه بزنید ، سایت مورد نظر احتمالا از شا درخواست خواهد کرد که یک کپچا را جواب دهید تا مشخص شود که یک فرد دارد پسوردها را آزمایش میکند یا پای یک برنامه برای بدست آوردن کلمه عبور شما بروش BRUTE FORCE در کار است.

کپچاها سخت تر میشوند!!
 

با پیشرفت برنامه های کامپیوتری ، طراحی کپچاهای مناسب دشوارتر میشود، مثلا ممکن است شما هم با این مشکل برخورد کرده باشید که کلمه ای که برای تایپ به شما ارایه میشود آنقدر پیچیده و سخت باشد که نتوان آنرا براحتی تشخیص داد.
یک نمونه اخیر مربوط به یک سایت میشود که خدمات آپلود و دانلود فایل را در اختیار افراد قرار میدهد این سایت برای مقابله با دانلود های بی رویه در هربار دانلود از فرد میخواهد که یک کپچا را پاسخ دهد وبرنامه های بسیاری با این هدف نوشته شده که کپچاهای این سایت را بصورت اتوماتیک جواب دهند و چون بعضی از انها به موفقیت انجامید، کپچاهای سایت را سخت و سخت تر کردند تا دسترسی این برنامه ها کاهش یابد . تا اینکه سرانجام کار به جایی کشید که چند حرف به کاربر نشان داده میشد که پشت هر حرف عکس یک سگ یا گربه به شکل بسیار محو کشیده شده بود .از کاربران خوسته میشد که تنها حروفی را وارد کنند که پشتشان عکس گربه است ، ولی چون تشخیص این حیوانات بسیار مشکل بود ، زیاد پیش می امد که افراد در جواب دادن اشتباه کنند.
این کپچاها ، قانون اول را نقض میکردند و حرکت این سایت مورد انتقادات فراوانی قرار گرفت و بعد از مطالب طنز امیزی که درباره اش نوشته شد، تصمیم گرفتند از سیستم دیگری برای کپچا استفاده کنند.

روش های جدید:
 

یک روش جدید برای اعمال کپچا اینست که یک ویدیوی سه بعدی از یک مکعب چرخان نشان داده شود که در آن ، حروف مختلف روی وجوه آن قرارگرفته اند . این روش از دوجهت قابلیت اطمینان کپچاها را زیاد میکند ، اول آنکه نوشتن یک نرم افزار کامپیوتری برای تشخیص حروف انیمیشن بسیار سخت است و ثانیا بعضی وقتها خرابکاران افرادی را استخدام میکنند که کپچاهای مختلف را در ازای گرفتن مبالغ ناچیزی تشخیص داده و وارد کنند. سرعت این افراد دراین روش بسیار کاهش میابد و بدست آوردن کپچاهای مختلف برای خرابکاران هزینه بسیار بیشتری خواهد داشت.

پروژه reCAPTCHA
 

کپچاها میتوانند خدمات جانبی دیگری را هم ارایه دهند . مثلا در پروژه reCAPTCHA ازکپچاها برای تشخیص کلماتی استفاده میشود که سیستم های OCR معمولی قادر به تشخیص آنها نیستند .پروژه های زیادی در حال انجام هستند تا کتابهای خطی و چاپی را اسکن کنند و بصورت دیجیتال ذخیره سازند.بعضی از کلمات موجود در این کتابها از سوی ocr ها ناخوانا تشخیص داده میشوند.میتوان این کلمات را به عنوان کپچا به کاربران داد تا انها کلمات را شناسایی و بطور صحیح وارد کنند .برای حصول اطمینان از اینکه جواب وارد شده صحیح استو فرد کلمه اشتباه را تشخیص نداده، دو کلمه به کاربر داده میشود ، یکی از کلمات ، کلمه کلیدی است که کامپیوتر آنرا میداند و کلمه دیگر ، کلمه مبهم مورد نظر است.
اگر کاربر کلمه کلیدی را درست وارد کند ، به احتمال فراوان کلمه نامعلوم دیگری را نیز درست وارد کرده است.با استفاده از این سیستم میتوان به پیشبرد اسکن دیجیتال کتابهای چاپی کمک فراوانی نمود، اگر میخواهید سیستم کپچا رایگان روی سایت یا وبلاگ خود داشته باشید . میتوانید از reCAPTCHA استفاده کنید.

سخن پایانی:
 

به نظر میرسد با پیشرفت برنامه های کامپیوتری ، کپچاها سخت تر از قبل شوند .درهرحال روشهای جدیدی غیر از روش مرسوم نشان دادن یک متن کج و رنگی شده در راه هستند و احتمالا در آینده رواج بیشتری خواهند یافت.
منبع: www.infotech-era.com