شهادة TPM

IoT Hub Device Provisioning Service هي خدمة مساعدة ل IoT Hub تستخدمها لتكوين توفير جهاز بدون لمس إلى مركز IoT محدد. باستخدام خدمة توفير الأجهزة، يمكنك توفير ملايين الأجهزة بطريقة آمنة.

توضح هذه المقالة عملية إثبات الهوية عند استخدام وحدة نمطية للنظام الأساسي الموثوق به (TPM). TPM هو نوع من وحدة أمان الأجهزة (HSM). تفترض هذه المقالة أنك تستخدم TPM منفصلا أو ثابتا أو متكاملا. تعد TPMs التي تحاكي البرامج مناسبة تماما للنماذج الأولية أو الاختبار، ولكنها لا توفر نفس مستوى الأمان الذي توفره TPMs المنفصلة أو الثابتة أو المتكاملة. لا ننصح باستخدام برامج الوحدات النمطية للنظام الأساسي الموثوق به في الإنتاج. لمزيد من المعلومات حول أنواع TPMs، راجع مقدمة موجزة عن TPM.

هذه المقالة ذات صلة فقط بالأجهزة التي تستخدم TPM 2.0 مع دعم مفتاح HMAC ومفاتيح المصادقة الخاصة بها. وهي ليست للأجهزة التي تَستخدم شهادات X.509 للمصادقة. TPM هو معيار ISO على مستوى الصناعة من مجموعة الحوسبة الموثوق بها، ويمكنك قراءة المزيد عن TPM في مواصفات TPM 2.0 الكاملة أو مواصفات ISO/IEC 11889. تفترض هذه المقالة أيضا أنك على دراية بأزواج المفاتيح العامة والخاصة، وكيفية استخدامها للتشفير.

تتعامل حزم SDK لجهاز Device Provisioning Service مع كل ما هو موضح في هذه المقالة نيابة عنك. ليست هناك حاجة لتنفيذ أي شيء إضافي إذا كنت تستخدم SDKs على أجهزتك. تساعدك هذه المقالة على فهم ما يحدث من الناحية المفاهيمية مع شريحة أمان TPM عند توفير جهازك ولماذا هو آمن للغاية.

نظرة عامة

تستخدم TPMs شيئا يسمى مفتاح المصادقة (EK) كجذر آمن للثقة. يكون مفتاح المصادقة فريد من نوعه للوحدة النمطية للنظام الأساسي الموثوق به ويؤدي تغييره إلى تغيير الجهاز بشكل كبير إلى جهاز جديد.

هناك نوع آخر من المفاتيح تمتلكه الوحدات النمطية للنظام الأساسي الموثوق به، يسمى مفتاح جذر التخزين (SRK). قد يتم إنشاء مفتاح جذر التخزين من قبل مالك الوحدة النمطية للنظام الأساسي الموثوق به بعد أن يحصل على ملكية الوحدة النمطية للنظام الأساسي الموثوق به. الحصول على ملكية TPM هي الطريقة الخاصة لـTPM لقول "شخص ما يعيّن كلمة مرور على HSM." إذا تم بيع جهاز TPM إلى مالك جديد، يمكن للمالك الجديد الحصول على ملكية TPM لإنشاء SRK جديد. يضمن الجيل الجديد من مفتاح جذر التخزين عدم قدرة المالك السابق على استخدام الوحدة النمطية للنظام الأساسي الموثوق به. لأن كل مفتاح جذر تخزين فريد من نوعه لمالك الوحدة النمطية للنظام الأساسي الموثوق به يمكن استخدام مفتاح جذر التخزين لختم البيانات في الوحدة النمطية للنظام الأساسي الموثوق به نفسها لهذا المالك. يوفر مفتاح جذر التخزين بيئة الاختبار المعزولة للمالك لتخزين مفاتيحه ويوفر إمكانية إلغاء الوصول إذا تم بيع الجهاز أو الوحدة النمطية للنظام الأساسي الموثوق به. إنه مثل الانتقال إلى منزل جديد: أخذ الملكية هو تغيير الأقفال على الأبواب وتدمير جميع الأثاث الذي تركه المالكون السابقون (SRK)، ولكن لا يمكنك تغيير عنوان المنزل (EK).

بمجرد إعداد الجهاز وجاهزيته للاستخدام، سيكون به كل من مفتاح المصادقة ومفتاح جذر التخزين متاحين للاستخدام.

أخذ ملكية TPM

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

تستخدم خدمة تزويد الأجهزة الجزء العام من مفتاح المصادقة (قائمة مفتاح المصادقة) لتحديد الأجهزة وتسجيلها. يمكن لبائع الجهاز قراءة قائمة EK_pub أثناء التصنيع أو الاختبار النهائي وتحميل قائمة EK_pub إلى خدمة التزويد بحيث يتم التعرف على الجهاز عند توصيله بخدمة التزويد. لا تتحقق خدمة تزويد الأجهزة من SRK أو المالك، لذلك يؤدي "مسح" TPM إلى مسح بيانات العميل، ولكن يتم الاحتفاظ ب EK (وبيانات المورد الأخرى) وسيظل الجهاز معترفا به من قبل خدمة توفير الجهاز عند اتصاله بالتزويد.

عملية إثبات مفصلة

عند اتصال جهاز مع الوحدة النمطية للنظام الأساسي الموثوق به أولاً إلى خدمة تزويد الأجهزة، تتحقق الخدمة أولاً من قائمة EK_pub المتوفرة مقابل قائمة EK_pub المخزنة في قائمة التسجيل. إذا لم تتطابق قوائم EK_pub، لا يسمح للجهاز بتوفيرها. إذا كانت قوائم EK_pub تتطابق، فإن الخدمة تتطلب من الجهاز إثبات ملكية الجزء الخاص من مفتاح المصادقة عن طريق تحدي nonce، وهو تحدٍ آمن يستخدم لإثبات الهوية. تقوم خدمة تزويد الأجهزة بإنشاء تحدي nonce ثم تشفيره مع مفتاح جذر التخزين ثم قائمةEK_pub، وكلاهما يتم توفيره بواسطة الجهاز أثناء مكالمة التسجيل الأولية. تحافظ الوحدة النمطية للنظام الأساسي الموثوق به دائما على الجزء الخاص من مفتاح المصادقة بشكل آمن. يمنع هذا التزييف ويضمن تزويد رموز SAS المميزة بشكل آمن للأجهزة المُعتمدة.

دعونا نستعرض عملية التصديق بالتفصيل.

يَطلب الجهاز تعيين مركز IoT

أولا يتصل الجهاز بخدمة تزويد الأجهزة ويَطلب تزويدها. أثناء القيام بذلك، يزود الجهاز الخدمة مع معرف التسجيل الخاص به، ونطاق معرف، وقائمة EK_pub وقائمة SRK_pub من الوحدة النمطية للنظام الأساسي الموثوق به. تصدر الخدمة رمز nonce المشفر مرة أخرى إلى الجهاز وتطلب من الجهاز فك تشفير nonce واستخدام ذلك لتوقيع رمز SAS للاتصال مرة أخرى وإنهاء التوفير.

توفير طلبات الجهاز

تحدي Nonce

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

فك تشفير nonce

التّحقق من صحة nonce وتلقي بيانات الاعتماد

يمكن للجهاز بعد ذلك التوقيع على رمز SAS المميز باستخدام رمز nonce الذي تم فك تشفيره وإعادة إنشاء اتصال بخدمة تزويد الأجهزة باستخدام رمز SAS المميز الموقّع. مع اكتمال تحدي Nonce، تسمح الخدمة بتزويد الجهاز.

يعيد الجهاز تأسيس الاتصال بخدمة تزويد الأجهزة للتحقق من ملكية EK

الخطوات التالية

الآن يتصل الجهاز ب IoT Hub، وتبقى آمنا في معرفة أن مفاتيح أجهزتك مخزنة بشكل آمن. الآن بعد أن عرفت كيف تتحقق خدمة تزويد الأجهزة بشكل آمن من هوية الجهاز باستخدام TPM، راجع المقالات التالية لمعرفة المزيد: