الخلاصة

  • عرّفت RFC 1457 العلامة الأمنية بوصفها صفة للبيانات، لا بديلاً عن البيانات ولا دليلاً مكتفياً بذاته؛ فقيمتها تتوقف على بقاء الصفة مرتبطة بالمحتوى وعلى معرفة الجهة التي تمنحها معناها.
  • كان موضع العلامة في طبقات الاتصال قراراً في توزيع السلطة: يحتاج الموجّه إلى الجزء الذي يؤثر في التوجيه أو الإسقاط، بينما يحتاج النظام النهائي إلى الدلالة الكاملة قبل تسليم البيانات إلى العملية.
  • لا تثبت العلامة السليمة أن الترجمة كانت أمينة، أو أن السياسة سمحت بالوصول، أو أن التشفير حُسن تطبيقه، أو أن النتيجة كانت آمنة. كل واحدة من هذه محطة مستقلة تحتاج إلى دليل مستقل.

البوابة التي تعيد بناء الالتزام

صدرت RFC 1457 في مايو/أيار 1993 باسم Russell Housley وبصفة Informational. لم تعرض صيغة عالمية واحدة لعلامات الأمن، ولم تقل إن الإنترنت يجب أن يضع تصنيفاً على كل رزمة. كان طموحها أدق: أن تمنح مصممي البروتوكولات والمعماريين طريقةً لاختبار الحاجة إلى العلامة، والشكل الذي ينبغي أن تتخذه، والطبقة التي يجب أن تظهر فيها كي تسبق القرار الذي يفترض أن تضبطه.

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

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

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

السلامة والحساسية ليستا سلماً واحداً

فرّقت RFC 1457 بين علامات السلامة وعلامات الحساسية. علامة السلامة تتعلق بمقدار الثقة الممكنة في المعلومات وبالحماية المطلوبة من التعديل أو التدمير. أما علامة الحساسية فتتعلق بالضرر الذي قد ينتج من الكشف وبالإجراءات اللازمة لمنع ذلك الكشف.

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

هذا الفصل مهم في البنية وفي السجل معاً. إن سجّل النظام أن المحتوى وصل موسوماً من دون أن يحدد نوع الحكم الذي تمثله العلامة، فقد يمزج سؤال «هل أصدق هذه البيانات؟» بسؤال «من يجوز له أن يراها؟». الأول لا يحل الثاني، والعكس صحيح.

القاموس المحلي جزء من الطريق

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

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

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

فضّلت RFC 1457 تجنب الترجمة حين يمكن اعتماد صيغة صريحة مشتركة ذات دلالات مسجلة. الصيغة المشتركة تقلل عدد المحللات والتحويلات، أما التسجيل فيجعل مصدر الدلالة قابلاً للاكتشاف. لكنه لا ينشئ حكومة دلالية عالمية. تظل السياسة لدى النظام المحلي، ويظل على السلطات المشاركة الاتفاق على المطابقة.

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

ليس على الموجّه أن يعرف السر كله

لا تحتاج الأنظمة الوسيطة إلى المعلومات نفسها التي تحتاجها الأنظمة النهائية. قد يحتاج الموجّه أو الجسر إلى قدر صغير يكفي لاختيار مسار مسموح أو إسقاط الرزمة. أما النظام النهائي فقد يحتاج إلى كامل فئات العلامة ومقصوراتها حتى يقرر أي عملية يمكنها تلقي البيانات.

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

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

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

العلامة المكتوبة والعلامة الموروثة

نظمت RFC 1457 الخيارات على محورين. في المحور الأول تكون العلامة صريحة أو ضمنية. العلامة الصريحة تظهر كبتات في معلومات التحكم الخاصة بالبروتوكول. أما الضمنية فتُستنتج من خاصية أخرى، مثل منفذ مادي أو واجهة مصدر أو اتصال أو المفتاح المشفر المرتبط بالحركة.

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

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

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

RFC 1108 كانت مثالاً لا دستوراً عاماً

قدمت RFC 1108 خيارات أمنية ملموسة لوزارة الدفاع الأمريكية في IPv4. حمل الخيار الأساسي مستوى تصنيف ومؤشرات لسلطات الحماية، فكان مثالاً لعلامة صريحة بلا اتصال على طبقة الشبكة. ومع ذلك لم تكن البتات هي السياسة كلها.

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

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

طبقات OSI كانت خريطة لصلاحيات القرار

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

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

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

ما أضافه السياق اللاحق

جعل تصميم CALIPSO في RFC 5570 الصادرة عام 2009 جانباً من المشكلة أكثر صراحة عبر «نطاق التفسير». لا تحمل كلمة مثل “SECRET” معنى تشغيلياً منفردة؛ يحتاج المستقبل إلى معرفة نظام العلامات والجهة اللذين يعرّفان المستوى والمقصورات. يشير معرّف النطاق إلى سياق السياسة، لكنه لا يحتوي السياسة كلها ولا ينفذها.

وضعت RFC 5570 أيضاً حداً واضحاً: وصفت خياراً اختيارياً في ترويسة IPv6 لاستخدامه في شبكات مغلقة موثوقة متعددة المستويات، وقالت إنه غير ملائم للإنترنت العامة العالمية. المقارنة التاريخية لا ينبغي أن تتحول إلى توصية نشر.

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

القاسم المشترك هو أن البيانات الوصفية تستطيع تسمية المعاملة المطلوبة. لا تستطيع تنفيذها بمجرد وجودها.