الانتقال إلى المحتوى
الأدلة

تشفير Matrix والتحقق منه في OpenClaw

تفعيل E2EE، وإشارات الثقة الثلاث، ومفاتيح الاسترداد عبر stdin، وإصلاح التوقيع المتبادل، والنسخ الاحتياطي لمفاتيح الغرف، والتحقق عبر SAS، والعناية بالأجهزة

مدة القراءة: ⁨7⁩ د

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

التفعيل والحالة

  • في الغرف المشفرة، تستخدم أحداث الصور الصادرة ملف صورة مصغرة مشفرًا حتى تُشفّر المعاينات مع المرفق، دون أي إعداد لأن المكوّن الإضافي يكتشف حالة تشفير الغرفة؛ ويقبل كل أمر من أوامر Matrix خيارات الإسهاب وJSON والحساب، والمخرجات موجزة افتراضيًا.
  • يهيئ أمر إعداد التشفير تخزين الأسرار والتوقيع المتبادل وينشئ نسخة احتياطية لمفاتيح الغرف عند الحاجة، مع قراءة مفتاح الاسترداد من stdin حتى لا يظهر أبدًا في وسائط العملية، ومع خيار مقصود للتخلي عن هوية التوقيع المتبادل الحالية؛ ويمكن لحساب جديد تفعيل التشفير عند إنشائه، وينهي كلا المسارين عمليات العميل قبل حفظ الإعدادات حتى يتمكن Gateway قيد التشغيل من إعادة التحميل بعد ذلك، بينما تحفظ التهيئة الفاشلة الإعداد رغم ذلك وتعرض الخطوات التالية.
  • يبلغ الأمر verify status عن ثلاث إشارات مستقلة: موثوق محليًا (locally trusted)، أي موثوق من هذا العميل فقط؛ ومتحقّق منه بالتوقيع المتبادل (cross-signing verified)، ويبلغ عنه SDK؛ وموقّع من المالك (signed by owner)، وهو تشخيص يفيد بأن الجهاز يحمل مفتاح التوقيع الذاتي الخاص بك. أما الخيار include-recovery-key فلا يفعل في المخرجات النصية سوى تأكيد توفر مفتاح خام، ويحيلك إلى مخرجات JSON، التي يجب حينئذ إبقاؤها سرية.
  • يبلغ التحقق من الجهاز بمفتاح استرداد عبر stdin عن ثلاث حالات (قبول المفتاح، وصلاحية النسخة الاحتياطية للاستخدام، والتحقق من الجهاز من قبل المالك)، ويخرج برمز غير صفري عندما تكون الثقة الكاملة بالهوية غير مكتملة حتى لو فتح المفتاح مواد النسخة الاحتياطية؛ وإكمال العملية يعني حينئذ تحققًا ذاتيًا من عميل آخر، ينتظره الأمر self-verify إلى أن يبلغ التوقيع المتبادل بأن الجهاز متحقّق منه.
لا تكون قيمة «Verified by owner» هي yes إلا عندما تكون قيمة «Cross-signing verified» هي yes؛ فالثقة المحلية أو توقيع المالك وحده لا يكفي.

الإصلاح والنسخ الاحتياطي

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

SAS، والحسابات، وبدء التشغيل

  • يعرض الأمر verify list الطلبات المعلّقة، ويرسل الأمر verify request طلبًا، إما تحققًا ذاتيًا مع الخيار own-user ليُقبل في عميل آخر للمستخدم نفسه، أو إلى مستخدم أو جهاز أو غرفة محددة؛ وتتولى أوامر دورة الحياة ذات المستوى الأدنى قبول الطلب، وبدء تدفق SAS، وطباعة الرموز التعبيرية أو الأرقام العشرية، وتأكيد التطابق أو رفضه، والإلغاء مع سبب ورمز، وكلها تقبل تلميحات المتابعة عبر الرسائل المباشرة عندما تكون مرتبطة بغرفة مباشرة.
  • من دون خيار الحساب، تستخدم الأوامر الحساب الافتراضي الضمني، ومع وجود عدة حسابات مسماة دون حساب افتراضي ترفض التخمين، أما الحساب المسمى الذي لم يُفعّل فيه التشفير فيبلغ عن مفتاح الإعدادات الخاص به. ومع تفعيل التشفير، تكون القيمة الافتراضية للتحقق عند بدء التشغيل هي if-unverified: يطلب الجهاز غير المتحقّق منه تحققًا ذاتيًا في عميل آخر، مع تخطي الطلبات المكررة خلال فترة تهدئة مدتها أربع وعشرون ساعة يمكن ضبطها أو إيقافها، كما ينفذ بدء التشغيل جولة تهيئة أولية متحفظة تحاول إصلاحًا محميًا دون كلمة مرور، ولا تتسبب في خطأ قاتل عندما تكون المصادقة بكلمة المرور مطلوبة.
  • تُنشر إشعارات دورة حياة التحقق (الطلب، والجاهزية مع إرشادات الرموز التعبيرية، والبدء، والاكتمال، وتفاصيل SAS) في غرفة الرسائل المباشرة الصارمة المخصصة للتحقق على هيئة إشعارات (notices)، ولا تصل أبدًا إلى مسار معالجة الوكيل؛ وتُتابع الطلبات الواردة من عميل آخر وتُقبل تلقائيًا، ويبدأ التحقق الذاتي تدفق SAS تلقائيًا ويؤكد جانبه بينما لا تزال تقارن في عميلك. أما الجهاز الذي لم يعد مدرجًا على الخادم المنزلي فيُستبدل بإضافة الحساب من جديد بتسجيل الدخول بكلمة المرور أو برمز وصول جديد، وتُعرض الأجهزة القديمة وتُحذف بأوامر devices، وتقع حالة التشفير ضمن دليل الحالة في جذور لكل حساب مفهرسة حسب الخادم المنزلي والمستخدم وتجزئة الرمز، حيث يُعد وجود جذر أقدم وحيد استمرارًا طبيعيًا للتدوير، أما وجود عدة جذور ممتلئة فيستوجب فحصها وأرشفتها بدلًا من حذفها.

تتعمق هذه المقالة في ما تتناوله مقالة القناة OpenClaw على Matrix، وتكمّلها صفحة حسابات Matrix وخوادمها المنزلية في OpenClaw التي تتناول ترتيبات الحسابات المتعددة والخوادم المنزلية الخاصة وصيغ الأهداف.

على Diali

تندرج Matrix ضمن قائمة القنوات القابلة للربط في Diali، إلى جانب WhatsApp وTelegram وDiscord وSlack وMattermost والرسائل النصية القصيرة والصوت: حساب الخادم المنزلي وقائمة السماح للغرف ملكك، وGateway مسؤوليتنا. يشرح دليل ربط قناتك الأولى في خمس دقائق كيف يُربطان، وتشرح صفحة الأمان في Diali الحدود التي تنطبق على كل منهما.

ما تكسبه من قاعدة الثقة

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

  • الإعداد، والتحقق، والتهيئة الأولية، والنسخ الاحتياطي: أربعة أوامر.
  • مفاتيح الاسترداد عبر stdin، لا على سطر الأوامر أبدًا.
  • التوقيع المتبادل وحده هو ما يُحتسب؛ أكمل من عميل آخر.
ابدأ الآن

كفاك قراءة، ابنِ وكيلك الخاص

جهز وكيلًا، واختر قناة، واجعله يعمل داخل التطبيق المفتوح لديك دائمًا.