الخلاصة

  • تضيف RFC 9841 إلى Brotli قواميس مشتركة ونافذة كبيرة وإطاراً للتنسيق، وتشترط أن يستخدم الضاغط وفاك الضغط القاموس نفسه تماماً.
  • يمكن لتغيير القاموس أن يغيّر المحتوى المستعاد، كما قد يكشف قياس الحجم معلومات في الاتجاهين: عن الحمولة عبر القاموس، وعن القاموس عبر الحمولة.
  • وحدة التشغيل القابلة للإثبات تجمع الحمولة وبصمة القاموس المشفرة ومصدره ونطاقه وصلاحيته وإصدار فاك الضغط والقرار الصريح بشأن ضغط الأسرار.

وصلت الحمولة المضغوطة سليمة، لكن موقعين استعادا نتيجتين مختلفتين. لم تكن المشكلة في النقل ولا في عملية فك الضغط، بل في اسم ودود كان يشير إلى نسختين مختلفتين من القاموس. أثبتت بصمة الحمولة أن الملف لم يتغير، لكنها لم تثبت أي بايتات خارجية شاركت في تفسيره.

هذه هي الحدود التي تكشفها RFC 9841، وهي وثيقة Informational صدرت في سبتمبر 2025 لتحديد صيغة بيانات Brotli المضغوطة بالقاموس المشترك. تحفظ نسختا النص وXML السجل نفسه. توسّع الوثيقة Brotli الأصلي، لكنها لا تثبت اعتماد أي منتج أو سلامة أي نشر.

الاعتماد الخارجي يشارك في المعنى

يمكن للقاموس توفير بايتات سجل LZ77، أو استبدال قائمة الكلمات الثابتة والتحويلات، أو اختيار مزيج منها بحسب السياق. لذلك لا يكفي أن يحمل الطرفان الاسم نفسه؛ المطلوب هو القاموس نفسه بايتاً ببايت.

يتعين أن يربط الإيصال الأدنى بصمة الحمولة بالبصمة المشفرة للقاموس وبملف الخوارزمية والإطار وإصدار فاك الضغط. ويشمل مصدر البناء والمالك والمراجع والنطاق المعتمد ووقت التفعيل ونسخة التراجع. وإذا جُمّع القاموس من موارد متعددة، تصبح وصفة التجميع جزءاً من الاعتماد. تقدم مواصفة Zstandard مقارنة مفيدة: حوكمة القاموس مشكلة عامة وليست خصوصية في تنفيذ واحد.

تحدد RFC 9841 معرّفاً بطول 256 بت مبنياً على HighwayHash لمجموعة معروفة موثوقة، لكنها تنص على أنه لا يوفر أمان التصادم في بيئة عدائية. التعرف السريع ليس دليلاً على السلامة أمام الاستبدال. تحتاج حدود سلسلة التوريد إلى بصمة مشفرة مثل SHA-256 وإلى إثبات مصدرها.

القاموس مصدر للمعلومة لا مرجع صامت

يمكن أن يتحول طول الناتج المضغوط إلى أداة استدلال. يتحكم مهاجم في جزء من المدخلات، يراقب الحجم، ويختبر هل تتطابق عباراته المختارة مع مادة سرية. تسجل RFC 7457 هجمات من بينها CRIME، ويحتفظ CVE-2012-4929 بسجل علني، بينما تبحث دراسة قنوات الضغط الجانبية الفئة الأوسع.

الإضافة المهمة في RFC 9841 هي عدّ القاموس نفسه بين مصادر البيانات. قد يكشف معلومات عن المحتوى المضغوط، وقد يكشف المحتوى معلومات عنه. قاموس بُني من صفحات موثقة أو عبارات عملاء أو قوالب داخلية لا يصبح عاماً لمجرد تسميته «أصل أداء». وبالعكس، قد يساعد قاموس عام على اختبار سر خاص إذا دخل الاثنان سياق الضغط نفسه.

يبقى الدفاع الأقوى هو عدم ضغط البيانات الخاصة في سياق يستطيع المهاجم مراقبته. الأصل الواحد، ومنع القواميس العابرة للنطاقات، وتقليل تحكم الخصم، وإبطاء التحديث، وفصل السياقات إجراءات تخفيف، لا شهادات أمان. يجب تصنيف الحمولة والقاموس والمقاطع القابلة للتحكم قبل قياس الوفر.

يكشف HTTP حالة لا يحملها اسم الملف

تحدد الوثيقة المصاحبة RFC 9842، المسجلة بشكل مستقل، تفاوض HTTP وترميزي المحتوى dcb وdcz. تحمل Available-Dictionary بصمة SHA-256. ويجب أن يطابق المورد قواعد الأصل وقابلية قراءة الاستجابة، وأن يكون حديثاً أو مسموحاً باستخدامه وهو stale؛ وعند فشل التخفيف المطلوب يجب إسقاط الاستجابة.

تعمل هذه القيود داخل دلالات HTTP والتخزين المؤقت لـ HTTP وضوابط الاستجابة القديمة. توفر RFC 6265 مرجعاً مألوفاً لنطاق الحالة. وتحذر RFC 9842 من أن بصمة القاموس قد تصبح رمز تتبع، فتطلب تقسيماً للتخزين يساوي تقسيم ملفات تعريف الارتباط أو يتجاوزه.

يستحق التتبع وتقسيم ذاكرة المتصفح مقالاً لاحقاً مستقلاً. أما هنا فالنتيجة المحددة هي أن هوية القاموس تضم الأصل وحق القراءة والحداثة وقسم التخزين. لا يستطيع اسم ملف أن يثبت أياً منها.

تنشر IANA سجلي معاملات HTTP وترميزات المحتوى وأسماء حقول HTTP. وتوضح RFC 9651 قيمة البيانات الوصفية المنظمة. التسجيل ينسق الأسماء ولا يثبت دعماً أو إعداداً آمناً.

اختبر كسر الصلة قبل حساب التوفير

ينبغي للاختبار أن يستبدل بايتات القاموس مع إبقاء الاسم، ويفرض نسخة قديمة، ويقدم البصمة الصحيحة من أصل خاطئ، ويغير فاك الضغط، ويدخل عبارات مختارة بجوار سر، ويتجاوز حدود الموارد، ثم يحذف القاموس. هل يفشل النظام بصورة مغلقة، أم ينتقل بوضوح إلى مسار بديل، أم يقدم محتوى مختلفاً بصمت؟

تحتاج كل نتيجة إلى بصمتي الحمولة والقاموس والملف والإطار والإصدار والأصل وحالة الذاكرة. ولا تكفي نسبة الضغط: تضاف إليها الحتمية والذاكرة والكمون وتباين الحجم والتراجع. رقم لا يبين القاموس الذي أنتجه ليس دليلاً تشغيلياً.

هذا توزيع للسلطة وفق الحد الأدنى من التنسيق. تحدد المواصفة الهوية والقيود المشتركة الضرورية، بينما يقرر المشغل محلياً فئات الحركة وسياسة الأسرار ودورة التحديث. ويقدم الكود العامل الإيصالات. لا ينبغي للمركز أن يقرر كل شيء، ولا للفريق المحلي أن يلغي مسؤوليته بتسمية الاعتماد «ذاكرة مؤقتة».

حدود الدليل

لم يُختبر متصفح أو خادم أو CDN أو مكتبة أو قاموس فعلي. لم تُقَس نسبة ضغط أو كلفة CPU أو ذاكرة أو معدل تسرب أو نجاح هجوم. لا تعني حالة النشر اعتماداً.

الاستنتاج المبرر بنيوي: البايتات الخارجية اللازمة للاستعادة جزء من الأصل المضغوط، والبايتات التي تتفاعل مع السر عبر الحجم جزء من حدود السرية. يمكن أن يكون التوفير حقيقياً، لكن إثبات الاعتماد يجب أن يولد معه.

المصادر