کار با صنعت برای تکامل تراشه ها

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

کوکی‌های دارای حالت پارتیشن‌شده مستقل (CHIPS) یک فناوری Sandbox حریم خصوصی است که به توسعه‌دهندگان اجازه می‌دهد یک کوکی را در فضای ذخیره‌سازی «پارتیشن‌بندی‌شده» با شیشه‌های کوکی جداگانه در هر سایت سطح بالا انتخاب کنند.
نمونه‌هایی از موارد استفاده برای تراشه‌ها شامل هر سناریویی است که در آن منابع فرعی بین سایتی نیاز به مفهومی از جلسه یا حالت پایدار دارند که به فعالیت کاربر در یک سایت سطح بالا محدود می‌شود، مانند ویجت‌های چت شخص ثالث، جاسازی‌های نقشه، بارگذاری CDN منبع فرعی. تعادل، ارائه دهندگان CMS بدون سر و بیشتر.

CHIPS با هدف تبدیل شدن به یک استاندارد وب باز در حال توسعه است. در PrivacyCG در حال بحث است و به مدت ۷ ماه یک آزمایش اولیه داشته است که طی آن تیم Chrome بازخورد مفیدی دریافت کرده است. در طول توسعه، تیم با سهامداران کلیدی برای بررسی این بازخورد کار کرد که منجر به طراحی به روز شده‌ای شد که در خدمت اکوسیستم وب بهتر باشد.

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

حذف پیشوند میزبان و بدون نیاز به Domain

برای تشویق شیوه‌های امنیتی خوب، طراحی CHIPS مستلزم آن است که کوکی‌ها فقط توسط پروتکل‌های ایمن تنظیم و ارسال شوند و کوکی‌های پارتیشن‌بندی شده باید با Secure تنظیم شوند.

همراه با این الزامات، پیشنهاد اولیه ویژگی Domain را در کوکی های پارتیشن بندی شده غیرمجاز می کرد. حذف Domain در کوکی ها از اشتراک گذاری آنها بین زیر دامنه های شخص ثالث مختلف در یک پارتیشن جلوگیری کرد.

در طول آزمایش اولیه، تیم Chrome از شرکا و سایر ذینفعان شنید که نیاز به بدون دامنه، اجرای CHIPS را برای سایت‌های دارای زیر دامنه دشوار می‌کند. برای مثال، اشتراک گذاری شیشه های کوکی پارتیشن بندی شده را برای shop.example.com و pay.example.com سخت تر می کند. در موارد دیگر، جریان های احراز هویت را در زمینه های تعبیه شده دشوار می کند .

نموداری که سایت‌های pay.example.com و shop.example.com را نشان می‌دهد

تیم Chrome این بازخورد را ارزیابی کرد و به این نتیجه رسید که حذف نیاز بدون دامنه چالش‌های حریم خصوصی ایجاد نمی‌کند، اما قابلیت استفاده را بهبود می‌بخشد. در پاسخ، تیم محصول CHIPS بحثی را در GitHub باز کرد و از بازخورد بیشتری در مورد حذف این نیاز دعوت کرد. چندین شرکت که در حال آزمایش CHIPS بودند، به صورت عمومی در مورد اهمیت این تغییر برای موارد استفاده خود پاسخ دادند و نظر دادند.

کروم بازخورد را به گروه جامعه حریم خصوصی W3C برد و پیشنهاد به روز شده را ارائه کرد – فایرفاکس و اج این تغییر را تأیید کردند و سافاری هیچ نگرانی ایجاد نکرد. روز بعد، تیم Chrome Blink-Dev را به‌روزرسانی کرد و طرحی را برای حذف الزامات موجود در مخزن CHIPS Github ارائه کرد.

تیم CHIPS در ابتدا این الزام را پیشنهاد کرد تا تضمین کند که سایت‌ها کوکی‌های متقاطع سایتی را از زیر دامنه‌های مخرب یا در معرض خطر دریافت نمی‌کنند و احتمال استفاده از کوکی‌های دامنه را به عنوان کانالی برای نشت داده‌ها در زیر دامنه‌ها کاهش می‌دهند.

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

پس از اینکه کروم این تغییر را انجام داد، Tableau، شرکتی که در پلتفرم تجزیه و تحلیل بصری که اکنون متعلق به Salesforce است، به اشتراک گذاشت :

این حذف تغییر نام، نیاز را با تغییرات قبلی برای افزودن ویژگی «SameSite=None» و بنابراین کمیت «شناخته‌تر» بیشتر می‌کند. از شنیدن بازخوردها، بررسی پیامدها و ایجاد تغییر برای کمک به انتقال آسان‌تر توسط Google، قدردانی می‌کنیم. لی گرابر، معمار مهندسی نرم افزار، تابلو

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

چالش دیگر در اجرای CHIPS محدودیت کوکی ثابت بود.
برای جلوگیری از ردپای حافظه زیاد برای کوکی ها، طراحی اولیه یک محدودیت عددی 10 کوکی در هر سایت در هر پارتیشن پیشنهاد کرد.

Akamai بازخورد عمومی را به اشتراک گذاشت مبنی بر اینکه محدودیت پیشنهادی برای کوکی‌های پارتیشن‌شده ممکن است برای سرویس‌هایی مانند CDN‌هایی که دامنه‌های سطح بالا را برای میزبانی محتوای مشتریان خود (مانند customer.cdn.xyz) ارائه می‌دهند، کافی نباشد. به عنوان مثال، customers1.cdn.xyz و customer2.cdn.xyz می توانند هر دو محتوای شخص ثالث را ارائه دهند و هر کدام می توانند چندین کوکی خود را تنظیم کنند. اگر چندین سایت مشتری مانند این در وب سایت دیگری تعبیه شده باشند، ممکن است به حداکثر 10 کوکی در هر پارتیشن برسند.

تیم Chrome بازخورد مشابهی را در سایر انجمن‌ها، در جلسات شریک و بحث‌های W3C شنیدند، بنابراین بهترین راه‌ها را برای حل چالشی که محدودیت کوکی در این موارد استفاده ارائه می‌کرد، در نظر گرفتند.

نموداری که حداکثر تعداد SameSite=هیچ کوکی را نشان می دهد که یک دامنه در ماشین های کلاینت دارد.
نموداری که حداکثر تعداد SameSite=هیچ کوکی را نشان می دهد که یک دامنه در ماشین های کلاینت دارد.

پس از بررسی نحوه ترکیب بازخورد جامعه، Chrome ایده به روز شده ای را در TPAC 2022 ارائه کرد، که پیشنهاد می کند CHIPS از حد استاتیک 10 کوکی به محدودیت _dynamic _10 کیلوبایت بر اساس حافظه حرکت کند. تجزیه و تحلیل نشان داد که این تغییر باید 99 درصد موارد استفاده در وب را پوشش دهد و از اصول حفظ حریم خصوصی که Chrome در تلاش برای دستیابی به آن بود (محدود کردن اطلاعات به اشتراک گذاشته شده بیش از حد در مورد کاربران بین سایت‌ها) و در عین حال حفظ استفاده‌های کلیدی، حمایت می‌کند.

سایر فروشندگان مرورگر در گفتن اینکه با راه حل به روز شده موافق هستند، که برای اطمینان از حفظ پشتیبانی CHIPS از بین مرورگرها در PrivacyCG مهم است.

در نتیجه، کروم محدودیت جدید را پذیرفت و راه حل را در طراحی CHIPS گنجاند.

کار با صنعت

ما از شرکای بسیاری در طول توسعه تراشه ها شنیده ایم و همکاری با یکدیگر در تلاش برای بهبود حریم خصوصی در وب حیاتی بوده است.

Akamai از یک رابطه همکاری در چندین جبهه با سایر رهبران صنعت مانند Google برخوردار است. بازخوردی که در مورد برنامه CHIPS ارائه کردیم ممکن است جزییات جزئی به نظر برسد، اما این تغییر تا حد زیادی به تضمین حداقل تأثیر منفی بر موارد استفاده خوب و در عین حال دستیابی به هدف نهایی کمک خواهد کرد. سازمان‌های مربوطه ما در تلاش هستند تا اینترنت را به روش خودمان سریع‌تر و ایمن‌تر کنند، و وقتی ما با هم کار می‌کنیم، کل اینترنت بهتر است. مارتین مایر، معمار ارشد در Akamai Technologies

CHIPS نشان داده است که بازخورد اکوسیستم برای بهبود فناوری‌ها در جعبه ایمنی حریم خصوصی ضروری است. گفتگوهای باز وب در GitHub، جلسات W3C و تعامل مداوم با تیم Chrome مستقیماً به تغییراتی که اکنون در Chrome stable ارائه شده است کمک کرده است. تیم Chrome مشتاق شنیدن این بازخورد در طیف وسیعی از پیشنهادات است و این تفاوت بزرگی در نحوه توسعه و عرضه فناوری‌ها در وب ایجاد می‌کند.