تتمثّل إحدى الخطوات الأساسية في عملية مصادقة جهاز افتراضي نظير يعمل بنظام التشغيل Android SDV في تحديد ما إذا كان هذا الجهاز الافتراضي النظير يعمل على جهاز موثوق به. لا يمكن للأجهزة الافتراضية التي تعمل ببرامج تم التحقّق منها على أجهزة موثوق بها الانضمام إلى شبكة SDV الآمنة. للاطّلاع على تفاصيل عملية التحقّق من البرامج النظيرة، يُرجى الرجوع إلى ملف SDV الشخصي لـ DICE.
بالنسبة إلى الثقة في الجهاز، يحدّد نظام التشغيل Android SDV مرجعَين مختلفَين لهما صلاحيات مختلفة:
منح الثقة في الجهاز: لا يملك هذه الصلاحية سوى المصنّع الأصلي للمعدات.
تحديد مجموعة الأجهزة التي تشكّل أجهزتها الافتراضية شبكة SDV الآمنة لمركبة: يجب أن يمنح المصنّع الأصلي للمعدات إذن الوصول ويتحكّم فيه، ويملك الموظفون الذين يستبدلون الأجزاء هذه الصلاحية.
تصف الأقسام التالية تفاصيل عضوية الجهاز في الشبكة والثقة في الجهاز.
ملف uds_pubs
يتم تحديد الأجهزة بشكلٍ لا لبس فيه من خلال مفاتيحها العامة الفريدة للسرّ الخاص بالجهاز (UDS).
عندما ينضم جهاز افتراضي يعمل بنظام التشغيل Android SDV إلى شبكة SDV الآمنة، نقول من الناحية النظرية إنّ الجهاز الذي يتم تشغيل هذا الجهاز الافتراضي عليه قد انضم إلى شبكة SDV الآمنة.
يحتوي ملف uds_pubs على المفاتيح العامة للسرّ الخاص بالجهاز (UDS) لجميع الأجهزة المؤهَّلة للانضمام إلى شبكة SDV الآمنة. يتم إنشاء هذا الملف في الـ
عملية توفير الأجهزة في المصنع ويتم تعديله في الـ عملية استبدال الأجزاء.
يتوفّر هذا الملف في قسم vvmtruststore.
لا يعني تضمين الجهاز في هذه القائمة أنّه موثوق به. لكي ينضم جهاز إلى شبكة SDV الآمنة، يجب استيفاء شرطَين:
- يجب أن يكون المفتاح (أو المفاتيح) العام للسرّ الخاص بالجهاز (UDS) في ملف
uds_pubs. - يجب أن يكون الجهاز موثوقًا به.
طُرق الثقة في الجهاز
لكي يثق جهاز افتراضي يعمل بنظام التشغيل Android SDV بجهاز يتم تشغيل جهاز افتراضي نظير يعمل بنظام التشغيل Android SDV عليه، هناك طريقتان:
- يحمل الجهاز شهادات السرّ الخاص بالجهاز (UDS). وهذه هي الطريقة المفضلة.
- يتم ربط الأجهزة ببعضها بشكلٍ دائم أثناء عملية توفير الأجهزة في المصنع. ويتم التعبير عن ذلك من خلال VVMFactoryTrust. هذه هي الطريقة البديلة التي يمكن للمصنّعين الأصليين للمعدات استخدامها عندما لا يكون من الممكن من الناحية الفنية تزويد الأجهزة بشهادات السرّ الخاص بالجهاز (UDS) على خط تجميع المركبات (أو قبله).
شهادات السرّ الخاص بالجهاز (UDS)
يمكن للجهاز الافتراضي النظير الذي يعمل بنظام التشغيل Android SDV تقديم شهادة السرّ الخاص بالجهاز (UDS) لمفتاحه العام.
يتم تحديد المفتاح العام لمرجع توفير شهادات الجذر للسرّ الخاص بالجهاز (UDS)، الذي يمثّل مرجع الثقة النهائي لمصادقة الجهاز، في ملف
vvmconfig.
يتم تخزين شهادات السرّ الخاص بالجهاز (UDS) للجهاز الافتراضي في ملف uds_certs في قسم vvmtruststore.
إنّ إتاحة هذه الطريقة للثقة في الجهاز إلزامية.
ربط الأجهزة معًا باستخدام VVMFactoryTrust
يمكن ربط الأجهزة التي تم توفيرها معًا بشكلٍ دائم، ما يؤدي إلى إنشاء مجموعة موثوق بها لا تعتمد على شهادات السرّ الخاص بالجهاز (UDS). يزيل ذلك الحاجة إلى البنية الأساسية للمفتاح العام المرتبطة لإنشاء هذه الشهادات. هذه الثقة الضمنية خاصة بهذه المجموعة. لذلك، إذا تم استبدال أي جهاز ضمن هذه المجموعة المرتبطة، يتم إبطال الثقة التي تم إنشاؤها للمجموعة بأكملها.
يتم تحقيق هذا الربط الدائم باستخدام VVMFactoryTrust، وهو قيمة تجزئة لملف uds_pubs المخزَّن في ذاكرة قابلة للبرمجة مرة واحدة (OTP).
على وجه التحديد، هي قيمة مؤلفة من 32 بايت تخزّن SHA256 لملف uds_pubs كما كان أثناء عملية توفير الأجهزة. يتم تمرير هذه القيمة إلى نظام التشغيل Android SDV كـ معلَمة
في النواة. إذا كانت قيمة VVMFactoryTrust المخزَّنة تطابق قيمة تجزئة ملف uds_pubs، يتم اعتبار الأجهزة التي تم تحديدها من خلال هذه المفاتيح العامة للسرّ الخاص بالجهاز (UDS) موثوقًا بها.
لضمان عدم حصول الجهات المصرّح لها بإجراء عملية استبدال الأجزاء فقط على صلاحية منح الثقة في الجهاز، يجب أن تتلقّى هذه الجهات أجهزة لا يمكن كتابة VVMFactoryTrust عليها فقط. بدون هذا الإجراء الاحترازي، يمكن لفني الورشة خلط الأجهزة الأصلية وغير الأصلية أثناء عملية استبدال أجهزة المركبة بالكامل.
إنّ إتاحة هذه الطريقة للثقة في الأجهزة اختيارية ويجب تنفيذها فقط إذا لم يكن من الممكن توفير شهادات السرّ الخاص بالجهاز (UDS) على خط تجميع المركبات (أو قبله).