الثقة والحدود

هل يتم التعتيم في CrispGuard محليًا — وهل يمكن أن تسرّب الإضافة نفسها ما تلتقطه؟

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

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

مسار البيانات في CrispGuard: ما يبقى داخل المتصفح وما يخرج منه

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

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

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

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

المقارنة المفيدة هي مع منتج يعلن الصيغة الأقوى. تنصّ سياسة الخصوصية الخاصة بـ ContextBlur على معالجة محلية بنسبة 100% وانعدام طلبات الشبكة، وتقول إن التمويه التلقائي لا يعمل إلا عندما يضغط المستخدم «Run auto-blur now»، وإنها تخزّن محدّدات CSS فقط ولا تخزّن محتوى الصفحة. وأيًا كان ما تستخلصه من ذلك، فهو يثبت أمرًا مفيدًا: في هذه الفئة، «المعالجة محليًا» ادعاء يستطيع المورّد نشره ويمكن مساءلته عليه. وهو ليس حجة خاصة بـ CrispGuard، ولا ينبغي قبوله بالثقة من أي مورّد، بما في ذلك هذا المورّد.

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

ماذا يحدث للتعتيم عند التقاط لقطة شاشة أو تسجيل الشاشة — ما يغطيه وما لا يغطيه

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

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

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

ما تحتويه اللقطة عادةً
طريقة الالتقاطهل يظهر التعتيم عادةً في النتيجة؟السبب
لقطة داخل المتصفح (Chrome DevTools، أو captureVisibleTab الخاص بالإضافة) يظهر عادةً، لكنه يعتمد على توقيت الالتقاط وعلى طريقة التنفيذ الالتقاط يقرأ الصفحة المرسومة، فقد تُضمَّن طبقة التغطية — أو تغيب إن جرى الالتقاط قبل تطبيق التعتيم.
لقطة من نظام التشغيل (Win+Shift+S، أو macOS Cmd+Shift+4) غير مضمون يحدث الالتقاط على مستوى ذاكرة الإطارات في نظام التشغيل، بينما تعمل الإضافة في الـ DOM داخل الصفحة، فلا تتحكم الإضافة فيما يلتقطه النظام.
أداة تسجيل من طرف ثالث (OBS وLoom وما شابه في وضع التقاط الشاشة) غير مضمون قد يتجاوز مسار التسجيل مُركِّب الرسم في المتصفح ويقرأ الشاشة مباشرة، فلا تكون طبقة التغطية جزءًا من الإطارات التي يستقبلها.
كاميرا خارجية أو هاتف يصوّر الشاشة غير مضمون الكاميرا تسجّل الضوء المنبعث من الشاشة؛ والإضافة تغيّر بكسلات الصفحة لا الخرج الفيزيائي للشاشة، فالصورة تُظهر ما تعرضه الشاشة في تلك اللحظة.
تطبيق اجتماعات يشارك الشاشة كاملة بدلًا من تبويب واحد غير مضمون مشاركة الشاشة كاملة قد تشمل نوافذ أخرى وإشعارات نظام تقع خارج الصفحة المعتّمة، والإضافة لا تصل إلى ما هو خارج المتصفح.

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

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

كيف تُخزَّن رقاقة PIN لقفل الموقع — إشارة ثقة يمكنك التحقق منها

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

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

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

وما لا تفعله التجزئة لا يقل أهمية. فهي تحمي القيمة المخزّنة، لا الحالة المفتوحة: فإن كان الموقع مفتوحًا أصلًا وأحد يقف خلفك، فهو يقرأ الصفحة لا التجزئة. كما أن رقاقة رقمية قصيرة قابلة للتخمين بعدد كافٍ من المحاولات، والتجزئة لا تقول شيئًا عن عدد المحاولات المسموح بها. التجزئة تجيب عن سؤال واحد بدقة — ماذا يتعلم المهاجم من قراءة هذا الملف — وتجيب عنه جيدًا.

إذا كنت تقيّم «هل أثق بإضافة لخصوصية الشاشة؟»، فما الذي ينبغي فحصه؟

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

لا شيء منها يتطلب خلفية تقنية. كلها تتطلب قراءة سياسة وقائمة أذونات — قدر معقول من العمل قبل أن تمنح أداة القدرة على قراءة كل صفحة تفتحها.

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

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

الأسئلة الشائعة

هل يرسل CrispGuard محتوى صفحاتي إلى خادم؟

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

استخدمت أداة لقطة الشاشة في النظام — هل بقي التعتيم؟

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

هل يلتقط برنامج تسجيل الشاشة التعتيم؟

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

إذا نسيت رقاقة PIN لقفل الموقع، هل تكشفها الإضافة كنص صريح؟

لا — يُخزَّن فقط تجزئة مملّحة للرقاقة، فقراءة التخزين المحلي للإضافة لا تكشف الرقاقة. وهذا يحمي ما هو مخزّن، لا ما يمكن أن يراه أحد: فإن كان الموقع مفتوحًا وأحد ينظر إلى شاشتك، فالرقاقة لا أهمية لها.

هل تستطيع إضافة لخصوصية الشاشة أن تحلّ محل مرشّح الخصوصية؟

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

إذا كنت فعلًا بحاجة إلى منع لقطات الشاشة، فماذا أستخدم؟

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

← كل المقالات