PDA

نسخه کامل مشاهده نسخه کامل : حروف چپ اندر قیچی ( CAPTCHA )



Ghaioom
19-03-2012, 08:27
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

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

نام این تست‌ها CAPTCHA است که هدف از طراحی آن، این است که مشخص شود كاربر در حقیقت انسان است يا رایانه. احتمالاً این نوع از تست‌ها را در بسیاری از سایت‌ها مشاهده کرده‌اید. متداول‌ترین مدل این تست‌ها شامل تعدادی حروف به‌هم ریخته و درهم می‌شود. به همین منظور لازم است شما حروف صحیح شکل مقابل‌تان را تشخیص دهيد و در قسمت مربوط به آن تایپ کنید. چنانچه حروف وارد شده دقیقاً مشابه همان حروف بود، شما به آسانی از عهده انجام این تست برآمده‌اید.
دلیل اصلی انجام این تست برای تشخیص کاربر از رایانه چیست؟ برخی کاربران قصد دارند نقطه ضعف سایت‌های اینترنتی را از این راه پیدا کنند. هرچند تعداد این کاربران، بسیار اندک است، ولی -- کردن این سایت‌ها می‌تواند نتایج زیانباری برای دیگر کاربران در برداشته باشد. برای مثال سایتی که به صورت رایگان ایمیل ارائه می‌کند، امکان دارد توسط یک سیستم خودکار میلیون‌ها درخواست برای باز کردن ایمیل دریافت کند و در ضمن همین برنامه خودکار رایانه‌ای ممکن است قسمتی از یک بخش بزرگ‌تر برای ارسال هرزنامه و spam به کاربران اینترنتی را تشکیل دهد. به همین منظور تست CAPTCHA برای این کاربرد دارد که تشخیص دهد چه رایانه‌ای حقیقتاً کاربر یا صرفاً برنامه خودکار رایانه‌ای است.

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

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

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

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


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

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

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

منبع: ضمیمه کلیک

Carl
19-03-2012, 19:39
سلام..
ممنون از انتخابت؛ دیروز این مطلب رو توی کلیک دیدم.. انتظار داشتم حداقل توش اشاره‌ای به نوآوری‌های شرکت‌ها در این زمینه شده باشه؛ در عوض مطالب دانشنامه‌ای رو توی قالب مقاله نوشته بود.

مثلاً یکی از کارای جالب در این زمینه، کار گوگله: الان گوگل داره شماره‌های قدیمی نشریه‌ی نیویورک‌تایمز و کتاب‌هایی از گوگل Books رو دیجیتال می‌کنه! اون هم با کمک پروژه‌ی reCAPTCHA.

توی این صفحه ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])، می‌تونید ببینید چجوری!

Ghaioom
19-03-2012, 22:39
reCAPTCHA چیکار میکنه؟ با CAPTCHA چه فرقی داره؟

Carl
20-03-2012, 12:24
reCAPTCHA چیکار میکنه؟ با CAPTCHA چه فرقی داره؟
reCAPTCHA در واقع یک گونه CAPTCHA مثل بقیه‌س؛ ولی نسبت به اصلش خیلی پیشرفت کرده. همین کدهای تأیید دوتایی که توی صفحات ثبت‌نام و تأیید اعتبار لازمه وارد بشن، جزء پروژه‌ی reCAPTCHA هستن.


[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

توضیح این‌که: یکی از کلمات، توسّط سیستم OCR (تشخیص کاراکتر از روی عکس) تشخیص داده شده و کلمه‌ی دوم رو (که OCR نتونسته تشخیص بده و فقط اعلام کرده که ناتوان از خوندن اون کلمه‌س یا شک داره که درسته) کاربر به دیتابیس سیستم اضافه می‌کنه.


[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

حالا مسئله‌ای که پیش می‌آد اینه که سیستم از کجا می‌فهمه کاربر درست می‌گه؟ خب؛ در مرحله‌ی اوّل: کاربر نمی‌دونه که کدوم کلمه رو سیستم درست تشخیص داده، بنابراین حدّاکثر زورشو می‌زنه که هر دو کلمه رو درست حدس بزنه. سیستم هم فرض می‌کنه کاربر هر دو کلمه رو درست نوشته و کلمه‌ی موردشک (که طبیعتاً تا حدود زیادی با حدس OCR مطابقت داره) رو اضافه می‌کنه.
(زندگی بر پایه‌ی اعتماد متقابل که می‌گن همینه! :‌دی)
در مرحله‌ی دوم: سیستم، این کلمه‌ی موردشک رو به تعدادی از کاربرا نشون می‌ده و ورودی‌ها رو با حدس کاربر اوّل مقایسه می‌کنه. این کار فقط برای اطمینان بیشتر صورت می‌گیره.

در واقع از هوش انسانی به‌جای هوش مصنوعی برای تطبیق واژه‌ها استفاده می‌کنه و با یه تیر، حداقل دو نشون می‌زنه: تأیید هویت کاربر و دیجیتالیزه‌کردن متن کتاب‌های قدیمی!

البتّه این قضیه اغلب مواقع با اعصاب ملّت بازی می‌کنه! مثلاً یه بار به من یه کلمه‌ی چینی نشون داد و من کد رو reload کردم! :‌دی

Ghaioom
20-03-2012, 21:02
متن جالبی بود.
من اولش فک کردم captcha این عکسی که دادی هست. ولی الان مثل اینکه اون عکسایی که روشون حروف هست ، هست نه؟ مثلا اونا راحت تر میتونی بخونی ولی این recaptcha رو نه! :‌دی
درست گفتم؟

گاهی عکسا هم هست که مثلا نوشته فلان چیز رو انتخاب کن اسم یه چیزی رو میگه که عکس اونو باید بزنی اینم captcha میشه؟

Carl
21-03-2012, 10:52
متن جالبی بود.
من اولش فک کردم captcha این عکسی که دادی هست. ولی الان مثل اینکه اون عکسایی که روشون حروف هست ، هست نه؟ مثلا اونا راحت تر میتونی بخونی ولی این recaptcha رو نه! :‌دی
درست گفتم؟

گاهی عکسا هم هست که مثلا نوشته فلان چیز رو انتخاب کن اسم یه چیزی رو میگه که عکس اونو باید بزنی اینم captcha میشه؟
راستش کامل متوجّه نشدم چی گفتی!

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

ری‌کپچا (طبق عکسی که اوّل گذاشتم) کلمات رو از متن کتاب‌ها جدا می‌کنه و باهاشون ور می‌ره تا ناخواناتر بشن.

عکسایی هم که می‌گی، بله، کپچا محسوب می‌شن. کلّاً کپچا یعنی: یک آزمون تورینگ ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]آزمون_تورینگ) کاملاً خودکار که برای مجزّا کردن انسان از ماشین ساخته شده.

توی نت بگردی، مطلب زیاده در این مورد (و هر مورد دیگه البتّه :‌دی).