از زمانی که رایانههای شخصی در بازار لوازم الکترونیکی مصرفی شتاب پیدا کردند، آزمون تورینگ عمومی کاملاً خودکار برای تشخیص رایانهها و انسانها (CAPTCHA) در مرور اینترنت جا افتاده است. تقریباً تا زمانی که مردم آنلاین میشوند، توسعهدهندگان وب به دنبال راههایی برای مسدود کردن رباتهای اسپم بودهاند. سرویس CAPTCHA بین فعالیت انسان و ربات تمایز قائل می شود تا ربات ها را دور نگه دارد. متأسفانه، روش های آن کمتر از دقت است. در تلاش برای محافظت از انسان ها، توسعه دهندگان بسیاری از وب را برای افراد دارای معلولیت غیرقابل دسترس کرده اند.
روشهای احراز هویت، مانند CAPTCHA، معمولاً از طبقهبندی تصاویر، پازلها، نمونههای صوتی یا آزمایشهای مبتنی بر کلیک برای تعیین اینکه آیا کاربر انسان است استفاده میکنند. در حالی که انواع چالش ها به خوبی مستند شده اند، منطق آنها دانش عمومی نیست. مردم فقط می توانند حدس بزنند که برای «اثبات» انسان بودنشان چه چیزی لازم است.
CAPTCHA چیست؟ CAPTCHA یک آزمون تورینگ معکوس است که به شکل یک آزمون چالش-پاسخ است. به عنوان مثال، اگر به کاربران دستور می دهد که «همه تصاویر دارای پله را انتخاب کنند»، آنها باید پله ها را از نرده ها، راهروها و گذرگاه ها انتخاب کنند. یا ممکن است از آنها خواسته شود متنی را که می بینند وارد کنند، مجموع تاس ها را اضافه کنند یا یک پازل کشویی را تکمیل کنند. CAPTCHA های مبتنی بر تصویر مسئول ناامیدکننده ترین تجربیات مشترک کاربران اینترنت هستند - تصمیم گیری در مورد انتخاب مربع زمانی که فقط یک تکه کوچک از شی مورد نظر در آن است.
صرف نظر از روش، یک کامپیوتر یا الگوریتم در نهایت تعیین می کند که آزمایش شونده انسان است یا ماشین. این سرویس احراز هویت انشعابات بسیاری از جمله reCAPTCHA و hCAPTCHA ایجاد کرده است. حتی منجر به ایجاد کل شرکتهایی مانند GeeTest و Arkose Labs شده است. سیستم خودکار متعلق به Google reCAPTCHA از کاربران میخواهد برای احراز هویت روی کادر انتخاب با عنوان «من ربات نیستم» کلیک کنند. یک تحلیل تطبیقی را در پسزمینه اجرا میکند تا امتیاز ریسک را تعیین کند. hCAPTCHA یک جایگزین مبتنی بر طبقه بندی تصویر است. سایر روشهای احراز هویت عبارتند از: احراز هویت چند عاملی (MFA)، کدهای QR، شمارههای شناسایی موقت شخصی (PIN) و بیومتریک. آنها از فرمول چالش-پاسخ پیروی نمی کنند، اما اساساً اهداف مشابهی را دنبال می کنند. در نظر گرفته شده است که این شاخه ها بهتر از نمونه اصلی باشند، اما اغلب نمی توانند استانداردهای دسترسی مدرن را برآورده کنند. به عنوان مثال، hCaptcha را در نظر بگیرید، که از یک کوکی استفاده می کند تا به شما امکان می دهد آزمایش پاسخ به چالش را به طور کامل دور بزنید. از نظر تئوری ایده خوبی است، اما در عمل کار نمی کند. قرار است یک کد یکبار مصرف از طریق ایمیل دریافت کنید که از طریق پیامک به شماره خاصی ارسال می کنید. کاربران گزارش میدهند که پیامهای خطای بیپایانی دریافت کردهاند که آنها را مجبور به تکمیل متن استاندارد CAPTCHA میکند. این تنها در صورتی در دسترس است که سایت به صراحت آن را در طول پیکربندی فعال کرده باشد. اگر راهاندازی نشده باشد، باید چالش تصویری را تکمیل کنید که صفحهخوانها را نمیشناسد. حتی زمانی که فرآیند اولیه کار می کند، احراز هویت بعدی به یک کوکی بین سایتی شخص ثالث متکی است که اکثر مرورگرها به طور خودکار آن را مسدود می کنند. همچنین، کد پس از مدت کوتاهی منقضی میشود، بنابراین اگر برای رفتن به مرحله بعدی طولانی شد، باید کل فرآیند را دوباره انجام دهید. چرا تیم ها از روش های CAPTCHA و احراز هویت مشابه استفاده می کنند؟ CAPTCHA رایج است زیرا تنظیم آن آسان است. توسعه دهندگان می توانند آن را طوری برنامه ریزی کنند که ظاهر شود و آزمایش را به صورت خودکار انجام می دهد. به این ترتیب، آنها میتوانند روی موضوعات مهمتر تمرکز کنند و در عین حال از هرزنامه، کلاهبرداری و سوء استفاده جلوگیری کنند. این ابزارها قرار است استفاده ایمن از اینترنت را برای انسان آسانتر کنند، اما اغلب افراد واقعی را از ورود به سیستم باز میدارند. این آزمایش ها به طور کلی منجر به تجربه کاربری ضعیفی می شود. یک مطالعه نشان داد که کاربران بیش از 819 میلیون ساعت را در بیش از 512 میلیارد جلسه reCAPTCHA v2 تا سال 2023 تلف کرده اند. با وجود همه اینها، ربات ها غالب هستند. مدلهای یادگیری ماشینی میتوانند CAPTCHA مبتنی بر متن را در کسری از ثانیه با بیش از ۹۷ درصد دقت حل کنند. یک مطالعه در سال 2024 در مورد reCAPTCHA v2 گوگل - که با وجود عرضه reCAPTCHA v3 هنوز به طور گسترده مورد استفاده قرار می گیرد - نشان داد که ربات ها می توانند طبقه بندی تصویر CAPTCHA را با دقت 100٪، بسته به شیئی که وظیفه شناسایی آن را دارند، حل کنند. محققان از یک مدل رایگان و متن باز استفاده کردند که به این معنی است که بازیگران بد می توانند به راحتی کار خود را تکرار کنند. چرا توسعه دهندگان وب باید استفاده از CAPTCHA را متوقف کنند؟ روشهای احراز هویت مانند CAPTCHA مشکل دسترسی دارند. پیشرفتهای یادگیری ماشینی این سرویسها را مجبور کرد که به طور فزایندهای پیچیده شوند. حتی هنوز هم، آنها بی اشتباه نیستند. ربات ها دریافت می کننددرست است بیش از مردم. تحقیقات نشان می دهد که آنها می توانند reCAPTCHA را در عرض 17.5 ثانیه تکمیل کنند و دقت 85٪ را به دست آورند. انسان ها بیشتر طول می کشد و دقت کمتری دارند. بسیاری از افراد در تست های CAPTCHA مردود می شوند و نمی دانند چه اشتباهی انجام داده اند. برای مثال، درخواستی که به کاربران دستور می دهد «همه مربع ها را با چراغ راهنمایی انتخاب کنند» به اندازه کافی ساده به نظر می رسد، اما اگر تکه ای از قطب در مربع دیگری باشد، پیچیده می شود. آیا آنها باید آن کادر را انتخاب کنند یا این همان کاری است که یک الگوریتم انجام می دهد؟ اگرچه قابلیتهای رباتها به میزان زیادی افزایش یافته است، اما انسانها به همان شکل باقی ماندهاند. همانطور که تست ها به تدریج سخت تر می شوند، تمایل کمتری به انجام آن دارند. یک نظرسنجی نشان می دهد که تقریباً 59٪ از مردم پس از چندین تجربه بد، استفاده از یک محصول را متوقف می کنند. اگر احراز هویت خیلی دست و پا گیر یا پیچیده باشد، ممکن است به طور کامل از وب سایت استفاده نکنند. افراد ممکن است به دلایل مختلف از جمله موارد فنی در این آزمایشات مردود شوند. اگر کوکیهای شخص ثالث را مسدود کنند، یک پروکسی محلی در حال اجرا داشته باشند، یا مرورگر خود را برای مدتی بهروزرسانی نکرده باشند، بدون در نظر گرفتن چند بار تلاش، ممکن است به شکست ادامه دهند. مشکلات احراز هویت با CAPTCHA به دلایلی که در بالا ذکر شد، اکثر انواع CAPTCHA ذاتاً غیرقابل دسترسی هستند. این امر به ویژه برای افراد دارای معلولیت صادق است، زیرا این آزمونهای پاسخ به چالش با در نظر گرفتن نیازهای آنها طراحی نشده است. برخی از مشکلات رایج شامل موارد زیر است: مسائل مربوط به استفاده از ویژوال ها و صفحه خوان صفحهخوانها نمیتوانند CAPTCHAهای بصری استاندارد، مانند تست متن تحریف شده را بخوانند، زیرا کلمات درهم و برهم قابل خواندن توسط ماشین نیستند. طبقه بندی تصویر و روش های پازل کشویی به طور مشابه غیرقابل دسترسی هستند. در یک نظرسنجی WebAIM که از سال 2023 تا 2024 انجام شد، کاربران صفحهخوان پذیرفتند که CAPTCHA مشکلسازترین مورد است و آن را بالاتر از پیوندهای مبهم، تغییرات غیرمنتظره صفحه نمایش، متن جایگزین، جستجوی غیرقابل دسترس و عدم دسترسی به صفحه کلید رتبهبندی میکند. نقطه بالای آن برای بیش از یک دهه بدون تغییر باقی مانده است و تاریخچه غیرقابل دسترس بودن آن را نشان می دهد. مسائل مربوط به شنوایی و پردازش صدا CAPTCHAهای صوتی نسبتاً غیر معمول هستند زیرا بهترین روشهای توسعه وب توصیه میکنند از پخش خودکار صدا جلوگیری کنند و بر اهمیت کنترلهای کاربر تأکید دارند. با این حال، CAPTCHA های صوتی هنوز وجود دارند. افرادی که کم شنوا یا ناشنوا هستند ممکن است هنگام انجام این آزمایشات با مانعی مواجه شوند. حتی با وجود فناوری کمکی، اعوجاج صوتی عمدی و نویز پسزمینه، درک این نمونهها را برای افراد مبتلا به اختلالات پردازش شنوایی چالش برانگیز میکند. مسائل مربوط به موتور و مهارت تستهایی که به مهارتهای حرکتی و مهارتهای مهارتی نیاز دارند میتواند برای افرادی که دارای اختلالات حرکتی یا ناتوانیهای جسمی هستند چالش برانگیز باشد. به عنوان مثال، شخصی که لرزش دست دارد ممکن است پازلهای لغزشی را دشوار بداند. همچنین، آزمایشهای طبقهبندی تصویر که تصاویر بیشتری را بارگیری میکنند تا زمانی که هیچ کدام از معیارها مطابقت نداشته باشند، ممکن است چالشی ایجاد کنند. مسائل مربوط به شناخت و زبان با پیچیده تر شدن CAPTCHA ها، برخی از توسعه دهندگان به تست هایی روی می آورند که به ترکیبی از تفکر خلاق و انتقادی نیاز دارند. مواردی که از کاربران می خواهند یک مسئله ریاضی را حل کنند یا یک پازل را کامل کنند، می توانند برای افراد مبتلا به نارساخوانی، دیسکالکلولیا، اختلالات پردازش بینایی یا اختلالات شناختی چالش برانگیز باشند. چرا فناوری کمکی شکاف را پر نمی کند؟ CAPTCHAها عمداً برای تفسیر و حل توسط انسان طراحی شدهاند، بنابراین فناوری کمکی مانند صفحهخوانها و کنترلهای هندزفری ممکن است کمک چندانی به شما نکند. ReCAPTCHA به طور خاص یک مشکل ایجاد می کند زیرا فعالیت پس زمینه را تجزیه و تحلیل می کند. اگر دستگاههای دسترسی را بهعنوان ربات علامتگذاری کند، یک CAPTCHA بالقوه غیرقابل دسترس ارائه میکند. حتی اگر این فناوری بتواند شکاف را پر کند، توسعهدهندگان وب نباید از آن انتظار داشته باشند. استانداردهای صنعت حکم می کند که آنها باید از اصول طراحی جهانی پیروی کنند تا وب سایت های خود را تا حد امکان در دسترس و کاربردی کنند. مشکلات دسترسی CAPTCHA اگر یک ابزار امنیتی موثر بود قابل بخشش بود، اما از آنجایی که رباتها بیشتر از انسانها آن را درست میکنند، به دور از خطا نیست. چرا همچنان از روشی استفاده می کنیم که ناکارآمد است و موانعی برای افراد دارای معلولیت ایجاد می کند؟ جایگزین های بهتری وجود دارد. اصول برای احراز هویت در دسترس این ایده که انسان ها باید به طور مداوم از الگوریتم ها بهتر عمل کنند، منسوخ شده است. روش های احراز هویت بهتری مانند احراز هویت چند عاملی (MFA) وجود دارد. ارزش بازار احراز هویت دو عاملی تا سال 2027 حدود 26.7 میلیارد دلار خواهد بود که بر محبوبیت آن تأکید می کند. این ابزارموثرتر از CAPTCHA است زیرا از دسترسی غیرمجاز، حتی با داشتن اعتبارنامه قانونی، جلوگیری می کند.
اطمینان حاصل کنید که تکنیک MFA شما در دسترس است. به جای اینکه بازدیدکنندگان وب سایت کدهای پیچیده را رونویسی کنند، باید اعلان های فشاری یا پیامک ارسال کنید. برای ضبط و وارد کردن خودکار کد، به تکمیل خودکار کد تأیید اعتماد کنید. همچنین، میتوانید ویژگی «به یاد داشته باشید این دستگاه» را برای رد شدن از احراز هویت در دستگاههای مورد اعتماد معرفی کنید. رویکرد احراز هویت دو عاملی اپل به این شکل طراحی شده است. یک دستگاه قابل اعتماد به طور خودکار یک کد تأیید شش رقمی را نمایش می دهد، بنابراین نیازی به جستجوی آن نیست. وقتی از شما خواسته شد، کاربران آیفون میتوانند روی پیشنهادی که بالای صفحهکلید موبایلشان برای تکمیل خودکار ظاهر میشود ضربه بزنند.
Single sign-on گزینه دیگری است. این سرویس احراز هویت جلسه و کاربر به افراد اجازه می دهد تا با یک مجموعه از اعتبارنامه های ورود به چندین وب سایت یا برنامه وارد شوند و نیاز به تأیید هویت مکرر را به حداقل می رساند. "لینک های جادویی" یک بار مصرف جایگزین عالی برای reCAPTCHA و پین های موقت هستند. به جای به خاطر سپردن یک کد یا حل یک پازل، کاربر روی یک دکمه کلیک می کند. از تحمیل ضربالاجلها اجتناب کنید، زیرا طبق معیار موفقیت WCAG 2.2.3، کاربران نباید با محدودیتهای زمانی مواجه شوند، زیرا افراد دارای معلولیت ممکن است به زمان بیشتری برای انجام اقدامات خاص نیاز داشته باشند. یا می توانید از Cloudflare Turnstile استفاده کنید. بدون نشان دادن CAPTCHA احراز هویت میشود و اکثر مردم هرگز مجبور نیستند یک کادر را علامت بزنند یا دکمهای را بزنند. این نرم افزار با ایجاد یک چالش کوچک جاوا اسکریپت در پشت صحنه کار می کند تا به طور خودکار بین ربات ها و انسان ها تمایز قائل شود. Cloudflare Turnstile را می توان در هر وب سایتی تعبیه کرد که آن را به یک جایگزین عالی برای وظایف طبقه بندی استاندارد تبدیل می کند. تست و ارزیابی طرحهای احراز هویت در دسترس آزمایش و ارزیابی روشهای احراز هویت جایگزین در دسترس شما ضروری است. بسیاری از طرح ها روی کاغذ خوب به نظر می رسند اما در عمل کار نمی کنند. در صورت امکان، از کاربران واقعی بازخورد جمع آوری کنید. یک بتا باز ممکن است راهی موثر برای به حداکثر رساندن دید باشد. به یاد داشته باشید، ملاحظات عمومی دسترسی فقط برای افراد دارای معلولیت اعمال نمی شود. آنها همچنین شامل افرادی می شوند که واگرای عصبی هستند، به دستگاه تلفن همراه دسترسی ندارند یا از فناوری کمکی استفاده می کنند. مطمئن شوید که طرح های جایگزین شما این افراد را در نظر می گیرند.
به طور واقع بینانه، شما نمی توانید یک سیستم کامل ایجاد کنید زیرا همه افراد منحصر به فرد هستند. بسیاری از مردم برای دنبال کردن فرآیندهای چند مرحله ای، حل معادلات، پردازش دستورالعمل های پیچیده یا به خاطر سپردن رمزهای عبور تلاش می کنند. در حالی که اصول طراحی وب جهانی می تواند انعطاف پذیری را بهبود بخشد، هیچ راه حل واحدی نمی تواند نیازهای همه را برآورده کند. صرف نظر از تکنیک احراز هویتی که استفاده می کنید، باید چندین گزینه احراز هویت را در ابتدا به کاربران ارائه دهید. آنها تواناییهای خود را بهتر میدانند، بنابراین به آنها اجازه دهید تصمیم بگیرند که از چه چیزی استفاده کنند، به جای تلاش برای مهندسی بیش از حد راهحلی که برای هر لبه کار میکند. با تغییرات طراحی، مشکل دسترسی را برطرف کنید فردی که لرزش دست دارد ممکن است نتواند یک پازل لغزشی را کامل کند، در حالی که فردی که اختلال پردازش صدا دارد ممکن است با نمونه های صوتی تحریف شده مشکل داشته باشد. با این حال، شما نمی توانید به سادگی CAPTCHA ها را با جایگزین ها جایگزین کنید، زیرا آنها اغلب به یک اندازه غیرقابل دسترسی هستند. برای مثال، اسکن کدهای QR ممکن است برای افرادی که کنترل موتورهای ظریف کمتری دارند دشوار باشد. افرادی که دارای اختلال بینایی هستند ممکن است برای پیدا کردن آن روی صفحه مشکل داشته باشند. به طور مشابه، بیومتریک می تواند برای افرادی که ناهنجاری های صورت یا محدوده حرکتی محدودی دارند، مشکل ایجاد کند. پرداختن به مشکل دسترسی نیاز به تفکر خلاق دارد. میتوانید با مراجعه به آموزشهای دسترسپذیری Web Accessibility Initiative برای توسعهدهندگان برای درک بهتر طراحی جهانی شروع کنید. اگرچه این آموزش ها بیشتر بر روی محتوا تمرکز می کنند تا احراز هویت، شما همچنان می توانید از آنها به نفع خود استفاده کنید. یادداشت پیش نویس گروه W3C در مورد عدم دسترسی به CAPTCHA راهنمایی های مرتبط تری را ارائه می دهد. شروع کار به آسانی تحقیق در مورد بهترین شیوه هاست. درک اصول اولیه ضروری است زیرا هیچ راه حل جهانی برای طراحی وب در دسترس وجود ندارد. اگر میخواهید دسترسی را بهینه کنید، بازخوردهایی را از افرادی که واقعاً از وبسایت شما بازدید میکنند، در نظر بگیرید. ادامه مطلب
«کاپچا: چشم اندازها و چالشها»، دارکو برودیچ و آلسیا آملیو "طراحی متن قابل دسترس بر روی تصاویر: بهترین روش ها، تکنیک ها و منابع" هانا میلان "در جستجوی بهترین CAPTCHA"، دیوید بوشل مدل امتیاز دهی پیشنهادی WCAG 3.0: یک تغییردر ارزیابی دسترسی، میخائیل پروسمیتسکی