دستگاههای دارای گواهینامه دستگاههایی هستند که Connectivity Standards Alliance (Alliance) Matter «فرایند صدور گواهینامه» را گذراندهاند.
درطول فرایند راهاندازی، «دستگاه دارای گواهینامه» باید خودش را تصدیق کند. به عبارت دیگر، باید ثابت کند که همان چیزی است که ادعا میکند و محصولی اصل است. بنابراین همه دستگاههای Matter دارای اعتبارنامههایی هستند که شامل جفت کلید «تصدیق» و زنجیره گواهینامه مرتبط است. گواهی تصدیق دستگاه (DAC) بخشی از این زنجیره است. وقتی دستگاه درحال راهاندازی DAC را به «راهانداز» خود ارائه میدهد، «راهانداز» گواهی میدهد که:
- توسط سازنده دارای گواهینامه ساخته شده باشد.
- دستگاه اصیل است.
- Matter آزمایش رعایت استانداردها را گذرانده است.
درطول مرحله توسعه، سازنده میتواند دستگاههایش را بدون فرایند کامل «تصدیق» آزمایش کند. آزمایشکنندگان باید بهطور صریح مطلع شوند که «دستگاه» درحال آزمایش است و هنوز گواهینامه دریافت نکرده و راهاندازی نشده است. وقتی سازنده وارد فاز تولید میشود، بومسازگان تأمینکننده باید همه الزامات «تصدیق» را اعمال کند.
«تصدیق» از زیرساخت کلید عمومی (PKI) استفاده میکند که از «مرجع صدور گواهینامه ریشه» و «گواهینامههای واسط» بهره میبرد، به روشی مشابه گواهینامههای اصالتسنجی سرور که بهطور گسترده برای SSL/TLS استفاده میشود. به این فرایند «زنجیره گواهینامه تصدیق دستگاه» میگویند.
زیرساخت کلید عمومی تصدیق دستگاه
DAC گواهی X.509 v3 است. اولین نسخه X.509 در سال ۱۹۸۸ توسط ITU-T منتشر شد. X.509 v3 با گواهینامه زیرساخت کلید عمومی و فهرست ابطال گواهینامه (CRL) که Matter استفاده میکند توسط RFC5280 مشخص شده است. این شامل:
- کلید عمومی
- صادرکننده
- موضوع
- شماره سریال گواهی
- اعتبار، که در آن انقضا میتواند نامشخص باشد
- امضا
«شناسه ارائهدهنده» و «شناسه محصول» از مشخصههای MatterDACName در موضوع DAC هستند.
DAC برای هر دستگاه منحصربهفرد است و با جفت کلید گواهی منحصربهفرد در محصول مرتبط است. این گواهی توسط یک CA مرتبط با سازنده دستگاه صادر میشود.
امضای DAC با گواهینامه واسط گواهی محصول (PAI) که آن هم توسط PAA صادر شده است اعتبارسنجی میشود. بااینحال، فروشنده ممکن است انتخاب کند که یک PAI برای هر محصول (مختص PID)، گروهی از محصولات، یا برای همه محصولاتش ایجاد کند.
در ریشه زنجیره اعتماد، کلید عمومی مرجع گواهی (CA) مرجع تصدیق محصول (PAA) امضاهای PAI را اعتبارسنجی میکند. توجه داشته باشید که Matter مخزن گواهیها فدرال است و مجموعه گواهیهای PAA که مورد اعتماد کمیسیونرها است در یک پایگاه داده مرکزی مطمئن (دفتر کل توزیعشده رعایت مقررات) نگهداری میشود. ورود یک PAA در مجموعه مورداعتماد مستلزم رعایت خطمشی گواهینامهای است که توسط Alliance مدیریت میشود.
PAI همچنین یک گواهینامه X.509 v3 است که شامل موارد زیر است:
- کلید عمومی
- صادرکننده
- موضوع
- شماره سریال گواهی
- اعتبار، که در آن انقضا میتواند نامشخص باشد
- امضا
«شناسه ارائهدهنده» و «شناسه محصول» (اختیاری) از مشخصههای MatterDACName در
موضوع DAC هستند.
درنهایت، PAA گواهینامه ریشه در زنجیره است و خودامضا است. این شامل موارد زیر است:
- امضا
- کلید عمومی
- صادرکننده
- موضوع
- شماره سریال گواهی
- اعتبار
پیامها و اسناد گواهی تکمیلی
فرایند گواهیدهی چندین سند و پیام دارد. موارد زیر نمای کلی کوتاهی از عملکرد و ترکیب آنها است. تصویر زیر به درک سلسلهمراتب آنها کمک میکند.
| سند | شرح |
|---|---|
| اظهارنامه گواهینامه (CD) | CD به دستگاه Matter اجازه میدهد تا مطابقت خود را با پروتکل Matter اثبات کند.
هرزمان که
Matter
«فرایندهای صدور گواهینامه» بهپایان برسد،
Alliance یک CD
برای نوع دستگاه ایجاد میکند
تا «فروشنده» بتواند آن را در
سفتافزار بگنجاند. این CD شامل اطلاعات زیر است:
|
| اطلاعات سفتافزار (اختیاری) | اطلاعات سفتافزار حاوی
شماره نسخه CD و یک یا چند
خلاصه از مؤلفههای موجود در
سفتافزار، مانند سیستمعامل، سیستم فایل،
و بوتلودر است. خلاصهها ممکن است
درهمسازی مؤلفههای نرمافزار یا
درهمسازی مانیفستهای امضاشده
مؤلفههای نرمافزار باشند. فروشنده همچنین میتواند انتخاب کند که در «اطلاعات سفتافزار» فقط «درهمسازی درهمسازیها» از مؤلفههایش را بهجای آرایهای از درهمسازیهای تکی اضافه کند. «اطلاعات سفتافزار» عنصری اختیاری در «فرایند تصدیق» است و زمانی کاربرد دارد که فروشنده محیط راهاندازی امنی داشته باشد که جفت کلید «تصدیق» را مدیریت کند. |
| اطلاعات گواهی | پیام ازسوی سفارشگیرنده به سفارشدهنده ارسال شد. «اطلاعات گواهی» ترکیبی از TLV حاوی عناصر گواهی و امضای گواهی است. |
| عناصر گواهی | این یک TLV است که شامل موارد زیر است:
|
| چالش گواهی | چالش خارج از باند مشتقشده درطول برقراری جلسه Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) و استفادهشده برای ایمنتر کردن رویه و اجتناب از امضاهای بازپخششده. از جلسه CASE، جلسه PASE، یا جلسه CASE ازسرگرفتهشده میآید. |
| تصدیق TBS (برای امضا شدن) | پیام حاوی «عناصر گواهی» و «چالش گواهی». |
| امضای تصدیق | امضای Attestation TBS، امضاشده بااستفاده از کلید خصوصی Device Attestation. |
روند گواهی
«کمیسیونر» مسئول تصدیق «کمیسیونگیرنده» است. مراحل زیر را اجرا میکند:
- کمیسیونر یک عدد یکباراستفاده تصدیق ۳۲ بایتی تصادفی تولید میکند. در اصطلاحات رمزنگاری، nonce (عددی که یکبار استفاده میشود) عددی تصادفی است که در فرایند رمزنگاری تولید میشود و قرار است یکبار استفاده شود.
- «کمیسیونر» عدد یکبارمصرف را به «دستگاه تحت آزمایش» ارسال میکند و «اطلاعات گواهی» را درخواست میکند.
- دستگاه تحت آزمایش «اطلاعات گواهی» را تولید میکند و آن را با «کلید خصوصی گواهی» امضا میکند.
- «راهانداز» گواهی DAC و PAI را از «دستگاه» بازیابی میکند و گواهی PAA را در مخزن گواهیهای Matter خود جستجو میکند.
- کمیسیونر «اطلاعات گواهی» را اعتبارسنجی میکند. شرایط اعتبارسنجی
به این شرح است:
- زنجیره گواهی DAC باید اعتبارسنجی شود، ازجمله بررسیهای لغو در PAI و PAA.
- VID در DAC با VID در PAI مطابقت دارد.
- «امضای تصدیق» معتبر است.
- عدد یکبارمصرف در «عناصر گواهی دستگاه» با عدد یکبارمصرف ارائهشده توسط «کمیسیونر» مطابقت دارد.
- «امضای اظهارنامه گواهی» بااستفاده از یکی از کلیدهای امضای «اظهارنامه گواهی» شناختهشده Alliance معتبر است.
- «اطلاعات سفتافزار» (درصورت وجود و پشتیبانی شدن توسط «راهانداز») با ورودیای در «دفتر کل توزیعشده رعایت مقررات» مطابقت دارد.
- اعتبارسنجیهای VID/PID اضافی نیز بین «خوشه اطلاعات پایه دستگاه»، «اظهارنامه گواهینامه»، و DAC انجام میشود.