موزیلا بهزودی سیستم تقسیمبندی کش (Cache Partitioning) فایرفاکس 85 را به شکلی محسوس بهبود میدهد. تقسیمبندی کش چیست و چه اهمیتی دارد؟
نسخهی ۸۵ مرورگر موزیلا فایرفاکس (Mozilla Firefox) قرار است در نخستین ماه از سال آیندهی میلادی بهصورت رسمی منتشر شود. این نسخه از فایرفاکس بهوسطهی بهبودهایی که در سیستم تقسیمبندی حافظهی کش (Cache Partitioning) اعمال کرده است، به شکلی بهتر از حریم خصوصی کاربران در فضای وب محافظت میکند.
در تعداد زیادی از رسانههای خبری، سیستم تقسیمبندی کش موزیلا فایرفاکس با تقسیمبندی شبکه اشتباه گرفته شده است. احتمالا دلیل اصلی این اشتباه، به یکی از فلگهای فایرفاکس با نام privacy.partition.network_state مربوط میشود. این فلگ به کاربران حرفهای امکان میدهد مطابق میل خود، قابلیت تقسیمبندی کش را فعال یا غیرفعال کنند.
تقسیمبندی کش چیست و چه اهمیتی دارد
بهطور خلاصه و بهزبانی ساده، تقسیمبندی کش به فرآیندی گفته میشود که در جریان آن، کشهایی که در اختیار وبسایتها قرار میگیرند از هم جدا میشوند و اصطلاحا برای هر وبسایت بر اساس درخواستهایی که آن وبسایت ثبت میکند، یک محفظهی کش مستقل تعریف میشود.
در حالت عادی فایلهای ذخیرهشده در کش، در چند وبسایت استفاده میشوند تا مرورگر مجبور نباشد فایلها را برای بارگذاری هر صفحه از اول دانلود کند؛ اما سیستم تقسیمبندی کش جلوی این اتفاق را میگیرد.
آنچه گفتیم میتواند تعریفی بسیار ساده از حملات سایبری Timing Attack با محوریت کش باشد که بهصورت منظم اتفاق میافتند. حملات سایبریِ پیچیدهتر ممکن است روی المانهایی تمرکز کنند که نشان دهند کاربر در آن لحظهی بهخصوص در وبسایت هدف لاگین کرده است. بااینحال در حملات Timing Attack، کاربر بهتازگی در وبسایت حضور داشته است و اکنون دیگر حضور ندارد.
در برخی مواقع وبسایت هدف ممکن است بتواند سوابق کش را استخراج کند و همین موضوع به آن امکان میدهد بفهمد ظهور دوبارهی سوابق مورد بحث چقدر طول میکشد و این یعنی، دسترسی آن وبسایت به دادههای بیشتر از فعالیت کاربر.
ایراد اصلی تقسیمبندی کش
برخی از منابع به شکلی کاملاً قانونی و تقریباً سراسری در دنیای وب، در هزاران یا حتی میلیونها وبسایت مورد استفاده قرار میگیرند. برای مثال میتوانیم به فونتهایی اشاره کنیم که از طریق سرویسهایی نظیر Google Fonts در وبسایتها قرار میگیرند.
درصورتیکه از سیستم کش عادی استفاده کنید، Rabinet.net ممکن است یک نسخه از فونت Roboto را ازطریق fonts.google.com بارگذاری کند. وقتی وبسایتهای دیگر که دارای همان نوع فونت باشند باز کنید، مرورگر از طریق حافظهی کش خود فونت را بالا میآورد و نیازی به بارگذاری مجدد نیست.
در نظر داشته باشید که موزیلا قصد ندارد صرفاً از طریق یک بهروزرسانی، تمامی بخشهای کش را تقسیمبندی کند و فرایند تقسیمبندی به مرور زمان انجام خواهد شد. اپل در سال ۲۰۱۳ فرایند تقسیمبندی کش مرورگر سافاری را آغاز کرد و از آن زمان تاکنون سیستم تقسیمبندی کش را تقویت کرده و بهبود داده است.
گوگل با انتشار کروم 86، سیستم تقسیمبندی کش را روی کشهای HTTP اعمال کرد و به مرور زمان این سیستم را به بخشهای دیگر تعمیم میدهد. در حال حاضر اینترنت اکسپلورر و مایکروسافت اج تنها مرورگرهای میناستریمی محسوب میشوند که همچنان روی استفاده از سیستم کش عادی تأکید دارند.
البته در آیندهای نهچندان دور با بهروزرسانی کرومیوم و استفادهی اج از نسخهی جدید کرومیوم، این مرورگر بهصورت پیشفرض به سیستم تقسیمبندی کش مجهز خواهد شد.