الأجهزة المعتمَدة هي الأجهزة التي اجتازت Connectivity Standards Alliance (Alliance) Matter.
أثناء عملية الإعداد، يجب أن يثبت الجهاز المعتمَد صحة شهادته. بعبارة أخرى، يجب أن يثبت أنّه المنتج الذي يدّعي أنّه هو وأنّه منتج أصلي. وبالتالي، تحتوي جميع Matter الأجهزة على بيانات اعتماد تشمل زوج مفتاح المصادقة وسلسلة شهادات مرتبطة. شهادة إثبات صحة الجهاز (DAC) هي جزء من هذه السلسلة. بعد أن يعرض الجهاز الذي يتم إعداده رمز الإعداد الخاص بالجهاز (DAC) على الجهاز المتحكّم، سيؤكّد الجهاز المتحكّم ما يلي:
- أنّها من صنع شركة مصنّعة معتمَدة
- أنّه جهاز أصلي.
- أنّها اجتازت Matter اختبارات امتثال.
خلال مرحلة التطوير، يمكن للجهة المصنّعة اختبار الأجهزة بدون إكمال عملية "التصديق". يجب إبلاغ المختبِرين بشكل صريح بأنّ الجهاز قيد الاختبار ولم يتم اعتماده وإطلاقه بعد. بعد أن يدخل المصنّع مرحلة الإنتاج، يجب أن يفرض نظام المزوّد جميع متطلبات "التصديق".
تستخدم عملية إثبات صحة الجهاز بنية أساسية للمفتاح العام (PKI) تستفيد من مراجع التصديق لشهادات الجذر والشهادات الوسيطة، وذلك بطريقة مشابهة لشهادات مصادقة الخادم المستخدَمة على نطاق واسع في بروتوكولَي SSL وTLS. وتُعرف هذه العملية باسم سلسلة شهادات إثبات صحة الجهاز.
بنية المفتاح العام للتحقّق من سلامة الجهاز
شهادة DAC هي شهادة X.509 الإصدار 3. نشر الاتحاد الدولي للاتصالات (ITU-T) الإصدار الأول من معيار X.509 في عام 1988. يتم تحديد شهادة X.509 الإصدار 3 مع شهادة البنية التحتية للمفتاح العام وقائمة الشهادات الباطلة (CRL) المستخدَمة من قِبل Matter بموجب RFC5280. ويحتوي على:
- مفتاح عام
- جهة الإصدار
- الموضوع
- الرقم التسلسلي للشهادة
- الصلاحية، حيث يمكن أن تكون مدة انتهاء الصلاحية غير محددة
- التوقيع
معرّف المورّد ومعرّف المنتج هما سمتان من سمات MatterDACName في موضوع DAC.
تكون DAC فريدة لكل جهاز ومرتبطة بزوج مفاتيح فريد لإثبات صحة الشهادة داخل المنتج. يتم إصدارها من قِبل هيئة إصدار شهادات مرتبطة بالشركة المصنّعة للجهاز.
يتم التحقّق من صحة توقيع DAC باستخدام شهادة وسيطة لإثبات صحة المنتج (PAI) التي تصدرها أيضًا هيئة PAA. ومع ذلك، يمكن للمورّد اختيار إنشاء PAI واحد لكل منتج (خاص بمعرّف المنتج) أو مجموعة من المنتجات أو لجميع منتجاته.
في جذر سلسلة الثقة، يتحقّق المفتاح العام لهيئة إصدار الشهادات (CA) التابع لهيئة إثبات صحة المنتج (PAA) من صحة التواقيع الصادرة عن واجهة برمجة التطبيقات لإثبات صحة المنتج. يُرجى العِلم أنّ Matter هو متجر موثوق به موحّد، ويتم الاحتفاظ بمجموعة شهادات PAA الموثوق بها من قِبل المفوضين في قاعدة بيانات مركزية موثوق بها (سجلّ الامتثال الموزّع). يتطلّب إدخال PAA ضمن المجموعة الموثوق بها استيفاء سياسة شهادة تديرها Alliance.
إنّ PAI هي أيضًا شهادة X.509 الإصدار 3 تتضمّن ما يلي:
- مفتاح عام
- جهة الإصدار
- الموضوع
- الرقم التسلسلي للشهادة
- الصلاحية، حيث يمكن أن تكون مدة انتهاء الصلاحية غير محددة
- التوقيع
معرّف المورّد ومعرّف المنتج (اختياريًا) هما سمتان من سمات MatterDACName في موضوع DAC.
أخيرًا، PAA هي شهادة الجذر في السلسلة وهي موقَّعة ذاتيًا. ويشمل ذلك:
- التوقيع
- مفتاح عام
- جهة الإصدار
- الموضوع
- الرقم التسلسلي للشهادة
- الصلاحية
المستندات والرسائل الإضافية المتعلقة بشهادة التصديق
تتضمّن عملية التصديق عدة مستندات ورسائل. في ما يلي نظرة عامة موجزة على وظيفة هذه العناصر وتركيبها. تساعد الصورة أدناه في فهم التسلسل الهرمي.
| مستند | الوصف |
|---|---|
| إقرار الشهادة (CD) | تسمح شهادة الجهاز
لجهاز Matter
بإثبات امتثاله لبروتوكول Matter.
عند انتهاء
Matter
عمليات الحصول على الشهادة،
تنشئ Alliance قرصًا مضغوطًا
لنظام التشغيل الخاص بنوع الجهاز
ليتمكّن المورّد من تضمينه في
البرامج الثابتة. يتضمّن القرص المضغوط، من بين معلومات أخرى، ما يلي:
|
| معلومات البرامج الثابتة (اختيارية) | تحتوي معلومات البرامج الثابتة على
رقم إصدار القرص المضغوط وواحد أو أكثر
من الملخّصات الخاصة بالمكوّنات في
البرامج الثابتة، مثل نظام التشغيل ونظام الملفات
وبرنامج التشغيل. قد تكون الملخّصات إما تجزئة لمكوّنات البرنامج أو تجزئة لبيانات البيان الموقّعة لمكوّنات البرنامج. يمكن للمورّد أيضًا اختيار تضمين "تجزئة التجزئات" لمكوّناته فقط في "معلومات البرامج الثابتة"، بدلاً من مصفوفة من التجزئات الفردية. "معلومات البرامج الثابتة" هي عنصر اختياري في "عملية التصديق"، وهي تنطبق عندما يكون لدى المورّد بيئة تشغيل آمنة تتعامل مع زوج مفاتيح التصديق. |
| معلومات المصادقة | رسالة مُرسَلة من المفوَّض إلى المفوض تجمع معلومات شهادة المصادقة بين قيمة النوع والطول (TLV) التي تحتوي على عناصر شهادة المصادقة وتوقيع شهادة المصادقة. |
| عناصر المصادقة | هذا هو TLV الذي يحتوي على:
|
| Attestation Challenge | تحدٍّ خارج النطاق يتم استخراجه أثناء Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) إنشاء الجلسة ويُستخدم لتعزيز أمان الإجراء وتجنُّب التوقيعات المعاد استخدامها. تأتي هذه السمة من جلسة CASE أو جلسة PASE أو جلسة CASE تم استئنافها. |
| شهادة إقرار TBS (يجب التوقيع عليها) | رسالة تحتوي على عناصر بيان صحة الجهاز وتحدّي بيان صحة الجهاز |
| توقيع الإقرار | توقيع على بيانات Attestation TBS، تم توقيعه باستخدام المفتاح الخاص لشهادة الجهاز. |
إجراء المصادقة
يتحمّل المفوَّض مسؤولية التصديق على المفوَّض إليه. وينفِّذ الخطوات التالية:
- ينشئ المفوض عددًا عشوائيًا من 32 بايت لشهادة المصادقة. في مصطلحات التشفير، يشير مصطلح nonce (رقم يُستخدم مرة واحدة) إلى رقم عشوائي يتم إنشاؤه في عملية التشفير ويُفترض استخدامه مرة واحدة.
- يرسل جهاز Commissioner الرقم العشوائي إلى جهاز DUT ويطلب الحصول على معلومات المصادقة.
- تنشئ DUT معلومات التصديق وتوقّعها باستخدام مفتاح التصديق الخاص.
- يستردّ "المفوّض" شهادة DAC وPAI من الجهاز، ويبحث عن شهادة PAA من Matter مخزن الموثوقية.
- يتحقّق المفوض من صحة معلومات شهادة التصديق. في ما يلي شروط التحقّق:
- يجب التحقّق من صحة سلسلة شهادات DAC، بما في ذلك عمليات التحقّق من الإبطال في PAI وPAA.
- يجب أن يتطابق معرّف المورّد (VID) في مستند إقرار القيمة الجمركية مع معرّف المورّد في مستند معلومات المنتج (PAI).
- توقيع شهادة المصادقة صالح.
- يتطابق الرقم العشوائي في عناصر تأكيد الجهاز مع الرقم العشوائي الذي قدّمه المفوّض.
- توقيع بيان الشهادة صالح باستخدام أحد مفاتيح توقيع بيان الشهادة المعروفة في Alliance.
- تتطابق معلومات البرامج الثابتة (إذا كانت متوفرة ومتاحة لدى الجهة المفوَّضة) مع إدخال في سجلّ الامتثال الموزَّع.
- يتم أيضًا إجراء عمليات تحقّق إضافية من VID/PID بين "مجموعة المعلومات الأساسية الخاصة بالجهاز" و"شهادة الاعتماد" وDAC.