الأجهزة المعتمَدة هي الأجهزة التي اجتازت Connectivity Standards Alliance (Alliance) Matter عملية الاعتماد.
أثناء عملية الإعداد، يجب أن يثبت الجهاز المعتمَد صحة شهادته. بمعنى آخر، يجب أن يثبت أنّه المنتج الذي يدّعي أنّه هو، وأنّه منتج أصلي. وبالتالي، تحتوي جميع Matter الأجهزة على بيانات اعتماد تشمل زوج مفتاح المصادقة وسلسلة شهادات مرتبطة. شهادة تأكيد الجهاز (DAC) هي جزء من هذه السلسلة. بعد أن يعرض الجهاز المُراد إعداده رمز DAC على الجهاز المتحكّم، سيؤكّد الجهاز المتحكّم ما يلي:
- أنّها من صنع شركة مصنّعة معتمَدة.
- أنّه جهاز أصلي.
- اجتازت Matter اختبارات امتثال.
أثناء مرحلة التطوير، يمكن للمصنّع اختبار الأجهزة بدون عملية التصديق الكاملة. يجب إبلاغ المختبِرين بشكل صريح بأنّ الجهاز قيد الاختبار ولم يتم اعتماده وإطلاقه بعد. بعد أن يدخل المصنّع مرحلة الإنتاج، يجب أن يفرض نظام المزوّد جميع متطلبات شهادة التصديق.
تستخدم عملية إثبات صحة الجهاز البنية التحتية للمفاتيح العامة (PKI) التي تستفيد من هيئات إصدار الشهادات لشهادات الجذر والشهادات المتوسطة، وذلك بطريقة مشابهة لشهادات مصادقة الخادم المستخدَمة على نطاق واسع في طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل (TLS). وتُعرف هذه العملية باسم سلسلة شهادات إثبات صحة الجهاز.
البنية التحتية للمفاتيح العامة (PKI) للتحقّق من سلامة الجهاز
شهادة 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 التي تحتوي على:
|
| تحدّي إثبات صحة الشهادة | تحدٍّ خارج النطاق يتم استخراجه أثناء Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) إنشاء الجلسة ويُستخدم لتعزيز أمان الإجراء وتجنُّب التوقيعات المعاد استخدامها. تأتي هذه السمة من الجلسة CASE أو الجلسة PASE أو من جلسة CASE تم استئنافها. |
| شهادة إقرار TBS (يجب التوقيع عليها) | رسالة تحتوي على عناصر شهادة التصديق وتحدّي شهادة التصديق |
| توقيع شهادة التصديق | توقيع على بيانات Attestation TBS، تم توقيعه باستخدام المفتاح الخاص لشهادة الجهاز. |
إجراء المصادقة
يتحمّل المفوَّض مسؤولية التصديق على المفوَّض إليه. وينفِّذ الخطوات التالية:
- ينشئ المفوض رقمًا خاصًا للمصادقة عشوائيًا بحجم 32 بايت. في مصطلحات التشفير، يشير مصطلح nonce (رقم يُستخدم مرة واحدة) إلى رقم عشوائي يتم إنشاؤه في عملية التشفير ويُفترض استخدامه مرة واحدة.
- يرسل "المفوّض" الرقم الخاص إلى "جهاز الاختبار" ويطلب "معلومات التصديق".
- تنشئ خدمة DUT معلومات التصديق وتوقّعها باستخدام مفتاح التصديق الخاص.
- يستردّ "المفوّض" شهادة DAC وشهادة PAI من الجهاز، ويبحث عن شهادة PAA من Matter مخزن الشهادات الموثوقة.
- يتحقّق المفوض من صحة معلومات شهادة الإقرار. في ما يلي شروط التحقّق:
- يجب التحقّق من صحة سلسلة شهادات DAC، بما في ذلك عمليات التحقّق من الإبطال في PAI وPAA.
- يتطابق معرّف المورّد (VID) في محوّل الصوت الرقمي إلى التناظري (DAC) مع معرّف المورّد (VID) في معلومات المنتج (PAI).
- توقيع شهادة المصادقة صالح.
- يتطابق الرقم العشوائي في عناصر تأكيد الجهاز مع الرقم العشوائي الذي قدّمه المفوّض.
- توقيع بيان الشهادة صالح باستخدام أحد مفاتيح توقيع بيان الشهادة المعروفة في Alliance.
- تتطابق معلومات البرامج الثابتة (إذا كانت متوفرة ومتاحة من قِبل جهة إصدار الشهادة) مع إدخال في سجلّ الامتثال الموزّع.
- يتم أيضًا إجراء عمليات تحقّق إضافية من VID/PID بين مجموعة معلومات الجهاز الأساسية وشهادة الاعتماد وشهادة DAC.