حماية المفاتيح المؤمنة (SKP)
في أجهزة Apple التي تدعم حماية البيانات، تتم حماية (أو تأمين) مفتاح تشفير المفاتيح (KEK) باستخدام قياسات البرامج على النظام، بالإضافة إلى ربطه بمعرف UID المتوفر فقط من Secure Enclave. على أجهزة كمبيوتر Apple المزودة بسيليكون Apple، يتم تعزيز حماية KEK من خلال دمج معلومات حول سياسة الأمن على النظام، لأن macOS يدعم تغييرات سياسة الأمن المهمة (على سبيل المثال، تعطيل التمهيد الآمن أو SIP) غير المدعومة على أنظمة أساسية أخرى. على أجهزة كمبيوتر Mac المزودة بسيليكون Apple، تتضمن هذه الحماية مفاتيح خزنة الملفات، لأنه يتم تنفيذ خزنة الملفات باستخدام ميزة حماية البيانات (الفئة C).
يُطلق على المفتاح الناتج عن تشابك كلمة سر المستخدم ومفتاح SKP طويل الأجل ومفتاح الجهاز 1 (معرف UID من Secure Enclave) المفتاح المشتق من كلمة السر. يُستخدم هذا المفتاح لحماية حاوية مفاتيح المستخدم (على جميع الأنظمة الأساسية المدعومة) و KEK (على macOS فقط)، ثم تمكين فتح القفل بالمقاييس الحيوية أو فتح القفل التلقائي باستخدام الأجهزة الأخرى مثل Apple Watch.
يلتقط مراقب التمهيد في Secure Enclave قياس نظام تشغيل Secure Enclave الذي يتم تحميله. عندما تقيس Boot ROM الخاصة بمعالج التطبيقات ملف بيانات Image4 المرفق بـ LLB، يحتوي ملف البيانات هذا على قياس لكل البرامج الثابتة الأخرى المقترنة بالنظام والتي يتم تحميلها أيضًا. تحتوي LocalPolicy على التكوينات الأمنية الأساسية لـ macOS التي يتم تحميلها. وتحتوي LocalPolicy أيضًا على الحقل nsih
وهو تجزئة لملف بيانات Image4 على macOS. يحتوي ملف بيانات Image4 في macOS على قياسات لكل البرامج الثابتة المقترنة بـ macOS وكائنات تمهيد macOS الأساسية مثل مجموعة Boot Kernel أو تجزئة جذر وحدة تخزين النظام الموقَّعة (SSV).
إذا تمكّن المهاجم من تغيير أي من البرامج الثابتة أو البرامج أو مكونات التكوين الأمني المقيسة الواردة أعلاه بشكل غير متوقع، فإنه يقوم بتعديل القياسات المُخزّنة في سجلات المكونات المادية. يتسبب تعديل القياسات في اشتقاق مفتاح جذر قياس النظام (SMRK) المشتق من مكونات التشفير المادية إلى قيمة مختلفة، كسر الختم بشكل فعال على التسلسل الهرمي للمفاتيح. وهذا يؤدي إلى انعدام إمكانية الوصول إلى مفتاح جهاز قياس النظام (SMDK)، مما يتسبب بدوره في جعل KEK، ومن ثمَّ البيانات، منيعةً ضد الوصول إليها.
ومع ذلك، يجب أن يستوعب النظام الذي لا يتعرض للهجوم تحديثات البرامج الشرعية التي تغيّر قياسات البرامج الثابتة والحقل nsih
في LocalPolicy للإشارة إلى قياسات macOS الجديدة. في الأنظمة الأخرى التي تحاول تضمين قياسات البرامج الثابتة، ولكن ليس لها مصدر معروف لتقصي الحقائق، يُطلب من المستخدم تعطيل الأمن وتحديث البرنامج الثابت ثم إعادة تمكينهما بحيث يمكن التقاط أساس جديد للقياس. وهذا يزيد بشكل كبير من خطر عبث المهاجم بالبرامج الثابتة أثناء تحديث البرامج. وتُساعد النظامَ حقيقةُ أن ملف بيانات Image4 يحتوي على جميع القياسات المطلوبة. كما يمكن للمكونات المادية التي تفك تشفير SMDK باستخدام SMRK عندما تتطابق القياسات أثناء التمهيد العادي، تشفير SMDK إلى أحدث مقترح SMRK. من خلال تحديد القياسات المتوقعة بعد تحديث البرنامج، يمكن للمكونات المادية تشفير SMDK الذي يمكن الوصول إليه في نظام التشغيل الحالي، بحيث يظل قابلاً للوصول إليه في نظام التشغيل الأحدث. وبالمثل، عندما يقوم العميل بتغيير إعدادات الأمن بشكل مشروع في LocalPolicy، يجب تشفير SMDK إلى SMRK الأحدث استنادًا إلى قياس LocalPolicy التي سيقوم LLB بحسابها عند إعادة التشغيل التالية.