PACT: طرح موزیلا برای دنیای بدون کپچا
خلاصهٔ کاملتر
نویسنده -- دنیس جکسون، مهندس ارشد رمزنگاری موزیلا -- تو این پست توضیح میده که چرا سیستمهای ضد بات این روزها هم برای کاربرها اذیتکنندهست و هم دیگه واقعاً کار نمیکنه. حفاظتهای حریم خصوصی مرورگرها سیگنالهایی که سیستمهای ضد سوءاستفاده بهشون تکیه میکردن رو از بین برده، و هوش مصنوعی هم کپچاها رو تقریباً بیاثر کرده. نتیجهش اینه که سایتها بهجاش از کاربرها میخوان ایمیل، لاگین یا حتی خاموش کردن VPNشون رو افشا کنن، که هم اذیتکنندهست و هم به ضرر حریم خصوصیه.
به گفتهی نویسنده، ایجنتهای هوش مصنوعی مرورگر این مشکل رو بدتر هم کرده، چون سایتها راهی برای تشخیص ایجنتهای قانونی از باتهای سوءاستفادهگر ندارن و معمولاً هردو رو مسدود میکنن. راهحلهای قبلی مثل Web Environment Integrity گوگل (که سال ۲۰۲۳ کنار گذاشته شد) و Private Access Tokens اپل، هر دو بر پایهی attestation سختافزاری کار میکردن؛ یعنی کنترل نهایی رو میسپردن دست تولیدکنندهی سختافزار، نه خود کاربر.
ایدهی موزیلا اینه که سایتها اصلاً نیازی به هویت واقعی کاربر ندارن؛ فقط کافیه بدونن کاربر از یه سقف مصرف مشخص رد نشده. برای این کار باید به یه چیز کمیاب تکیه کرد که مهاجم نتونه ارزون تکثیرش کنه -- مثل اشتراک، شماره تلفن یا حساب کاربری قدیمی. مثلاً یه ارائهدهندهی VPN میتونه برای مشترکینش ضمانت بده تا سایتها بهجای بلاک کلی VPN، بشه هر کاربر رو جداگانه محدود کرد.
پایهی فنی این طرح، پروتکل Privacy Pass ـه که از قبل تو Private Relay اپل، محافظت IP کروم و جستجوی خصوصی Kagi استفاده میشه: کاربر یه توکن میگیره که موقع مصرف قابل ردیابی به منبع صدورش نیست. چالش اصلی اینه که حتی دونستنِ اینکه یه کاربر از کدوم صادرکننده توکن گرفته، خودش یه نشتی حریم خصوصیه؛ موزیلا این مشکل رو با یه روش اثبات دانشصفر به اسم issuer blinding حل میکنه که فقط ثابت میکنه توکن از یکی از صادرکنندههای مورد اعتماده، بدون فاش کردن اینکه دقیقاً کدومه.
طرح نهایی موزیلا اسمش PACT ـه و از سه نقش تشکیل شده: یه Anchor که بر اساس یه سیگنال کمیاب (مثل اشتراک) به کاربر Endorsement میده؛ یه Moderator که این Endorsement رو میگیره و در ازاش یه Credential با حالت داخلی صادر میکنه؛ و خود سایت که این Credential رو چک میکنه. با فناوری Anonymous Credit Tokens، سایت میتونه بر اساس رفتار کاربر شمارندهی داخل Credential رو بالا یا پایین ببره، بدون اینکه هیچوقت مقدار واقعیش رو ببینه یا بشه ارائههای مختلف یه Credential رو به هم ربط داد.
اگه کاربر Endorsement مناسبی نداشته باشه، سیستم به همون کپچا یا لاگین قدیمی برمیگرده، یعنی هیچکس کاملاً از دسترسی محروم نمیشه. ایجنتهای هوش مصنوعی هم میتونن یا Credential خود کاربر رو حمل کنن یا اپراتورشون یه Anchor مخصوص خودش راه بندازه. به گفتهی نویسنده، موزیلا این طرح رو تو یه کارگاه W3C با کلادفلر و کروم شکل داده و قراره پیشنویسش رو به IETF و W3C ببره؛ فعلاً جزئیات هنوز کامل نیست و نیاز به بررسی دقیق امنیتی داره.
نکات کلیدی:
- سیستم پیشنهادی موزیلا به اسم PACT، بهجای هویت واقعی، فقط یه سیگنال کمیاب رو بین کاربر و سایت رد و بدل میکنه
- نقشهای اصلی: Anchor (صادرکنندهی Endorsement)، Moderator (صادرکنندهی Credential)، و خود سایت
- «issuer blinding» با اثبات دانشصفر جلوی فاش شدن منبع Endorsement رو میگیره
- Anonymous Credit Tokens اجازه میده سقف دسترسی بر اساس رفتار کاربر تغییر کنه، بدون امکان ردیابی
- ایجنتهای هوش مصنوعی هم میتونن با Credential کاربر یا Anchor مخصوص خودشون وارد این سیستم بشن
- طرح هنوز در مرحلهی اولیهست و قراره به IETF و W3C برده بشه




