کپچا چیست و چگونه کار می کند

کپچا چطور کار می کند؟

یکی از ابزارهای امنیتی که در فضای اینترنت برای شناسایی کاربر انسانی از ربات کار برد دارد، کپچا می باشد. این ابزار امنیتی در واقع برای امنیت وب سایت ها و سرویس های آنلاین کاربرد دارد.

حتما شما هم برای ثبت نام یا ورود به سایت های اینترنتی با بخشی به‌‌نام کپچا یا CAPTCHA روبه‌رو شده‌اید.

کپچا معمولا شکل های مختلفی دارد، از اعداد و حروف گرفته تا تصویر و کلیک بر روی یک باکس!

اگر برای شما هم این سوال پیش آمده است که کپچا چطور کار می کند و با یک شکل ساده چگونه می تواند در فرم های اینترنتی انسان را از ربات تشخیص دهد. در ادامه با ما همراه باشید.

کپچا چیست و چگونه کار می کند

کپچا یا CAPTCHA چیست؟

عبارت CAPTCHA مخفف Completely Automated Public Turing test to tell Computers and Humans Apart است. می توان گفت که به عبارتی کپچا یک آزمایش تورینگ کاملا خودکار محسوب می‌شود که انسان را از کامپیوتر تشخیص می‌دهد.

کپچا برای اولین‌بار توسط دانشمندان علوم کامپیوتر در دانشگاه کارنگی ملون در سال ۲۰۰۰ به‌‌کار گرفته شد. کپچا تشخیص می‌دهد که کاربر وب‌سایت انسان یا ربات اسپم است.  کدهای کپچا عموما از ترکیبی از اعداد و حروف استفاده می‌کنند و وابسته به توانایی انسان در تشخیص آن‌ها هستند.

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

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

کپچا چگونه کار می‌کند؟

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

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

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

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

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

reCAPTCHA چیست؟

فناوری این نوع از کپچا نیز توسط دانشمندان دانشگاه کارنگی ملون توسعه یافت، اما گوگل آن را در سال ۲۰۰۹ خرید.

reCAPTCHA آزمایش‌های پیچیده‌تری را نسبت به کپچا معمولی اجرا می‌کند. ری‌کپچا سرویس رایگان گوگل است که با هدف جایگزین کردن کپچا سنتی توسعه یافت.

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

گوگل با گذشت زمان چند نوع گوناگون از reCHAPTCHA را توسعه داد تا به‌مرور وابستگی به شناسایی حروف و اعداد از بین برود. چرا که کامپیوترها روز‌به‌روز پیشرفته‌تر می‌شوند و امکان توسعه‌ی توانایی برای شناسایی حروف و اعداد از میان تصاویر در آن‌ها وجود دارد. اکنون reCHAPTCHA در سه‌نوع در وب‌سایت‌ها استفاده می‌شود:

تشخیص تصویر
کادر انتخاب (Checkbox)
ارزیابی رفتار کاربر عمومی (که نیازی به تعامل با کاربر ندارد)

تشخیص تصویر: ۹ یا ۱۶ تصویر مربعی را در کنار یکدیگر به کاربر نمایش می‌دهد. تصاویر در انواع گوناگونی هستند. به‌عنوان مثال ممکن است ۹ تصویر کوچک‌شده از یک عکس بزرگ ببینید یا هر عکس مربعی با دیگری تفاوت داشته باشد. کاربر باید تصاویری که شامل یک سوژه‌ی مشخص و موردنظر آزمایش می‌شود، شناسایی کند. در صورتیکه پاسخ کاربر، با پاسخ اکثریت کاربران دیگری که آزمایش یکسان را گذرانده‌اند، یکسان باشد، آزمایش را با موفقیت پشت سر می‌گذارد.

کادر انتخاب

قطعا تاکنون با ساده‌ترین نوع کپچا یعنی کلیک کردن روی کادر «من ربات نیستم (I’m not a robot)» روبه‌رو شده‌اید. در نگاه اول این آزمایش‌ها ساده هستند و از خود می‌پرسیم چگونه کلیک کردن روی یک کادر، انسان و ربات را از هم متمایز می‌کند؟ آزمایش کپچا از نوع کلیک کردن در یک کادر مشخص، تنها محدود به فرایند کلیک کردن نیست، بلکه تمامی رفتارهایی که به کلیک کردن می‌انجامد را بررسی می‌کند.
reCAPTCHA کادر انتخابی، حرکت ماوس و کوکی‌های کاربر را در تمایز به‌کار می‌گیرد

آزمایش reCHAPTCHA با کلیک در کادر انتخابی، حرکت نشان‌گر ماوس کاربر و نزدیک شدن آن را به کادر انتخاب بررسی می‌کند.  اگر حرکت ماوس کاربر شامل چنین حرکت‌های ناخودآگاهی باشد، آزمایش آن را کاربر انسانی شناسایی می‌شود. reCHAPTCHA شاید حتی از کوکی‌های ذخیره‌شده توسط مرورگر و تاریخچه نیز برای شناسایی کاربر انسانی استفاده کند.

reCHAPTCHA بدون تعامل با کاربر

یکی از جدیدترین انواع reCHAPTCHA با تکیه بر رفتار کاربر و تاریخچه‌ی تعامل او با محتوای موجود در اینترنت کار می‌کند. برنامه در اکثر مواقع با تکیه بر همان داده‌های دریافت‌شده توانایی تمایز دادن بین انسان و ربات را دارد. در چنین مواردی نیاز به گذراندن آزمایش‌های مرسوم نیست. اگر نتوان با استفاده از فاکتورها، کاربر انسانی را شناسایی کرد، یک آزمایش reCHAPTCHA مرسوم برای او نمایش داده می‌شود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *