Secure Enclave
Secure Enclave هو نظام فرعي آمن مخصص للإصدارات الأحدث من iPhone و iPad و Mac و Apple TV و Apple Watch و HomePod.
نظرة عامة
Secure Enclave عبارة عن نظام فرعي آمن مخصص مُدمج في الأنظمة على الشرائح (SoCs) التي تقدمها Apple. ويتم عزل Secure Enclave عن المعالج الرئيسي لتوفير طبقة إضافية من الأمن، وهو مصمم للحفاظ على أمن بيانات المستخدم الحساسة حتى عند اختراق نواة معالج التطبيقات. ويتبع مبادئ التصميم ذاتها التي يتبعها SoC—ذاكرة ROM للتمهيد لإنشاء جذر الثقة للمكونات المادية، ومحرك AES لعمليات التشفير الفعالة والآمنة، والذاكرة المحمية. بالرغم من أن Secure Enclave لا يتضمن التخزين، ولكنه يشتمل على آلية لتخزين المعلومات بأمان على وحدة التخزين المتصلة بشكل منفصل عن تخزين فلاش NAND المُستخدم من قبل معالج التطبيقات ونظام التشغيل.
ويعد Secure Enclave ميزة من ميزات المكونات المادية في معظم إصدارات الـ iPhone والـ iPad والـ Mac والـ Apple TV والـ Apple Watch والـ HomePod، وهي:
iPhone 5s أو أحدث
iPad Air أو أحدث
أجهزة كمبيوتر Mac المزودة بسيليكون Apple
أجهزة كمبيوتر MacBook Pro التي تحتوي على شريط اللمس (2016 و 2017) المزودة بشريحة Apple T1
أجهزة كمبيوتر Mac المستندة إلى Intel التي تحتوي على شريحة Apple T2 الأمنية
Apple TV HD أو أحدث
Apple Watch Series 1 أو أحدث
HomePod و HomePod mini
معالج Secure Enclave
يوفر معالج Secure Enclave قوة الحوسبة الرئيسية لـ Secure Enclave. ولتوفير أقصى مستوى من العزلة، تم تخصيص معالج Secure Enclave لاستخدام Secure Enclave فقط. يساعد ذلك في منع هجمات القنوات الجانبية التي تعتمد على البرامج الضارة التي تشترك في نفس محور التنفيذ مثل البرامج المستهدفة المعرضة للهجوم.
يقوم معالج Secure Enclave بتشغيل إصدار L4 microkernel مخصص لـ Apple. وقد تم تصميمه للعمل بكفاءة على سرعة ساعة أقل، ما يساعد على حمايته من هجمات الساعة والطاقة. يتضمن معالج Secure Enclave، بدءًا من A11 و S4، محركًا بذاكرة محمية وذاكرة مشفرة مع إمكانات مكافحة إعادة التشغيل والتمهيد الآمن ومولد الأرقام العشوائي المخصص ومحرك AES الخاص به.
محرك حماية الذاكرة
يعمل Secure Enclave من منطقة مخصصة بذاكرة DRAM في الجهاز. وتعمل طبقات الحماية المتعددة على عزل ذاكرة Secure Enclave المحمية عن معالج التطبيقات.
عند بدء تشغيل الجهاز، يقوم Boot ROM في Secure Enclave بإنشاء مفتاح حماية ذاكرة مؤقت عشوائي لمحرك حماية الذاكرة. وعندما يكتب Secure Enclave في منطقة الذاكرة المخصصة له، يعمل محرك حماية الذاكرة على تشفير كتلة الذاكرة باستخدام AES في نمط Mac XEX (xor-encrypt-xor)، ويحتسب علامة المصادقة للذاكرة الخاصة برمز مصادقة الرسائل المستندة إلى التشفير (CMAC). ويخزّن محرك حماية الذاكرة علامة المصادقة بجانب الذاكرة المشفرة. عندما يقرأ Secure Enclave الذاكرة، يتحقق محرك حماية الذاكرة من علامة المصادقة. وفي حالة تطابق علامة المصادقة، يعمل محرك حماية الذاكرة على فك تشفير كتلة الذاكرة. أما إذا لم تتطابق العلامة، يشير محرك حماية الذاكرة إلى خطأ في Secure Enclave. بعد حدوث خطأ في مصادقة الذاكرة، يتوقف Secure Enclave عن قبول الطلبات حتى تتم إعادة تشغيل النظام.
بدءًا من أنظمة SoCs من الفئة A11 و S4 المتوفرة من Apple، يضيف محرك حماية الذاكرة ميزة حماية إعادة التشغيل لذاكرة Secure Enclave. للمساعدة على منع إعادة تشغيل البيانات ذات الأهمية الأمنية، يخزّن محرك حماية الذاكرة رقمًا فريدًا لمرة واحدة يسمى قيمة غير قابلة لإعادة التشغيل لكتلة الذاكرة بجانب علامة المصادقة. يتم استخدام القيمة غير القابلة لإعادة التشغيل كمفتاح إضافي لعلامة مصادقة CMAC. تتم حماية القيم غير القابلة لإعادة التشغيل لجميع كتل الذاكرة باستخدام شجرة تكامل متجذرة في ذاكرة SRAM المخصصة داخل Secure Enclave. بالنسبة إلى عمليات الكتابة، يحدّث محرك حماية الذاكرة القيمة غير القابلة لإعادة التشغيل وكل مستوى من شجرة التكامل وصولاً إلى SRAM. بالنسبة إلى عمليات الكتابة، يتحقق محرك حماية الذاكرة من القيمة غير القابلة لإعادة التشغيل وكل مستوى من شجرة التكامل وصولاً إلى SRAM. يتم التعامل مع حالات عدم تطابق القيمة غير القابلة لإعادة التشغيل بشكل مشابه لحالات عدم تطابق علامة المصادقة.
على الـ Apple A14 أو M1 أو SoCS الأحدث، يدعم محرك حماية الذاكرة وجود مفتاحين لحماية الذاكرة المؤقتة. يتم استخدام الأول للبيانات الخاصة في Secure Enclave، بينما يتم استخدام الثاني للبيانات المشتركة مع المحرك العصبي الآمن.
يعمل محرك حماية الذاكرة بشكل مضمن وشفاف في Secure Enclave. يقرأ Secure Enclave الذاكرة ويكتب فيها كما لو كانت ذاكرة DRAM عادية غير مشفرة، بينما لا يرى أي مراقب خارج Secure Enclave سوى الإصدار المُشفّر والمُصادَق عليه من الذاكرة فقط. وينتج عن ذلك حماية قوية للذاكرة بدون مقايضات الأداء أو تعقيدات البرامج.
Boot ROM في Secure Enclave
تحتوي Secure Enclave على Boot ROM مخصص لـ Secure Enclave. وعلى غرار Boot ROM في معالج التطبيقات، فإن Secure Enclave Boot ROM عبارة عن تعليمة برمجية ثابتة تؤسس لجذر الثقة في المكونات المادية في Secure Enclave.
عند بدء تشغيل النظام، يعمل iBoot على تعيين منطقة مخصصة من الذاكرة إلى Secure Enclave. قبل استخدام الذاكرة، يقوم Boot ROM في Secure Enclave بتهيئة محرك حماية الذاكرة لتوفير حماية تشفير لذاكرة Secure Enclave المحمية.
ثم يُرسِل معالج التطبيقات صورة sepOS إلى Boot ROM في Secure Enclave. وبعد نسخ صورة sepOS في الذاكرة المحمية الخاصة بـ Secure Enclave، يتحقق Boot ROM في Secure Enclave من تجزئة التشفير وتوقيع الصورة للتحقق من أن صورة sepOS مصرح لها بالعمل على الجهاز. إذا تم توقيع صورة sepOS بشكل صحيح للعمل على الجهاز، فإن Boot ROM في Secure Enclave ينقل التحكم إلى sepOS. إذا كان التوقيع غير صالح، فقد تم تصميم Boot ROM في Secure Enclave لمنع أي استخدام إضافي لـ Secure Enclave حتى إعادة تعيين الشريحة التالية.
في Apple A10 وأنظمة SoCs الأحدث، يعمل Boot ROM في Secure Enclave على قفل تجزئة sepOS في سجل مخصص لهذا الغرض. يستخدم مُسرّع المفتاح العام هذه التجزئة للمفاتيح المرتبطة بنظام التشغيل (المرتبطة بنظام التشغيل).
مراقب التمهيد في Secure Enclave
في Apple A13 وأنظمة SoCs الأحدث، يشتمل Secure Enclave على مراقب تمهيد تم تصميمه لضمان تكامل أقوى في تجزئة sepOS التي تم تمهيدها.
عند بدء تشغيل النظام، يعمل تكوين حماية تكامل المعالج الثانوي للنظام (SCIP) الخاص بمعالج Secure Enclave للمساعدة على منع معالج Secure Enclave من تنفيذ أي تعليمة برمجية بخلاف Boot ROM في Secure Enclave. يساعد مراقب التمهيد على منع Secure Enclave من تعديل تكوين SCIP مباشرةً. لجعل صورة sepOS التي تم تحميلها قابلة للتنفيذ، يرسل Boot ROM في Secure Enclave طلبًا إلى مراقب التمهيد يتضمن عنوان وحجم صورة sepOS التي تم تحميلها. عند استلام الطلب، يقوم مراقب التمهيد بإعادة تعيين معالج Secure Enclave، وتجزئة صورة sepOS التي تم تحميلها، وتحديث إعدادات SCIP للسماح بتنفيذ صورة sepOS التي تم تحميلها، وبدء التنفيذ داخل التعليمة البرمجية التي تم تحميلها حديثًا. ومع استمرار النظام في التمهيد، يتم استخدام هذه العملية نفسها كلما تم جعل تعليمة برمجية جديدة قابلةً للتنفيذ. وفي كل مرة، يعمل مراقب التمهيد على تحديث تجزئة تشغيل في عملية التمهيد. يتضمن مراقب التمهيد أيضًا معامِلات أمن مهمة في تجزئة التشغيل.
عند اكتمال التمهيد، يقوم مراقب التمهيد بإنهاء تجزئة التشغيل وإرسالها إلى مُسرّع المفتاح العام لاستخدامها مع المفاتيح المرتبطة بنظام التشغيل. وهذه العملية مصممة بحيث لا يمكن تجاوز ربط مفتاح نظام التشغيل حتى مع وجود ثغرة أمنية في Boot ROM في Secure Enclave.
مولّد الأرقام العشوائية الحقيقية
يُستخدم مولّد الأرقام العشوائية الحقيقية (TRNG) لإنشاء بيانات عشوائية آمنة. ويستخدم Secure Enclave مولّد TRNG عندما يُنشئ مفتاح تشفير عشوائيًا أو جذر مفتاح عشوائيًا أو إنتروبيا أخرى. يعتمد TRNG على عدة مذبذبات حلقية تمت معالجتها لاحقًا باستخدام CTR_DRBG (خوارزمية تستند إلى تشفير الكُتل في نمط العدّاد).
مفاتيح التشفير الجذرية
يحتوي Secure Enclave على مفتاح تشفير جذري للمعرف الفريد (UID). ويكون UID فريدًا لكل جهاز على حدة ولا يرتبط بأي معرف آخر على الجهاز.
ويتم دمج UID المُنشأ عشوائيًا في النظام وقت تصنيع SoC. بدءًا من A9 SoC، يتم إنشاء UID من خلال Secure Enclave TRNG أثناء التصنيع ويتم كتابته إلى المنصهرات باستخدام عملية برمجية تجري بالكامل في Secure Enclave. تحمي هذه العملية معرّف المستخدم من أن يكون مرئيًا خارج الجهاز أثناء التصنيع وبالتالي لا يتوفر للوصول إليه أو تخزينه من قِبل Apple أو أي من مورديها.
تستخدم صورة sepOS معرف UID لحماية الأسرار الخاصة بالجهاز. ويتيح المعرف الفريد ربط البيانات بشكل مشفر بجهاز معين. على سبيل المثال، يتضمن التسلسل الهرمي للمفتاح الذي يحمي نظام الملفات المعرف الفريد، لذلك إذا تم نقل شرائح تخزين SSD الداخلية فعليًا من جهاز إلى آخر، فلن يكون الوصول إلى الملفات ممكنًا. تتضمن الأسرار الأخرى المحمية الخاصة بالجهاز بيانات بصمة الوجه أو بصمة الإصبع. في أي Mac، لا يتلقى هذا المستوى من التشفير سوى التخزين الداخلي الكامل المرتبط بمحرك AES. على سبيل المثال، لا يتم تشفير أجهزة التخزين الخارجية المتصلة عبر USB أو وحدة التخزين المستندة إلى PCIe المضافة إلى 2019 Mac Pro بهذه الطريقة.
كما يتضمن Secure Enclave معرف مجموعة (GID) للجهاز، ويكون مشترَكًا لجميع الأجهزة التي تستخدم SoC معينًا (على سبيل المثال، تشترك جميع الأجهزة التي تستخدم Apple A15 SoC في معرف GID ذاته).
ولا يتوفر UID و GID عبر مجموعة إجراءات الاختبار المشتركة (JTAG) أو واجهات تصحيح الأخطاء الأخرى.
محرك AES في Secure Enclave
محرك AES في Secure Enclave عبارة عن كتلة مادية تُستخدم لإجراء تشفير متماثل استنادًا إلى تشفير AES. وقد تم تصميم محرك AES لمقاومة تسرُّب المعلومات باستخدام التوقيت وتحليل الطاقة الثابتة (SPA). بدءًا من A9 SoC، يتضمن محرك AES أيضًا إجراءات مضادة لتحليل الطاقة الديناميكية (DPA).
يدعم محرك AES مفاتيح المكونات المادية والبرامج. يتم اشتقاق مفاتيح المكونات المادية من معرّف UID أو GID الخاصين بـ Secure Enclave. وتظل هذه المفاتيح داخل محرك AES ولا تكون مرئية حتى لبرنامج sepOS. بالرغم من أن البرنامج يمكنه طلب عمليات التشفير وفك التشفير باستخدام مفاتيح المكونات المادية، فإنه لا يمكنه استخراج المفاتيح.
في Apple A10 وأنظمة SoCs الأحدث، يتضمن محرك AES وحدات بت جذرية قابلة للقفل تعمل على تنويع المفاتيح المشتقة من UID أو GID. وهذا يسمح بأن يكون الوصول إلى البيانات مشروطًا بوضع التشغيل على الجهاز. على سبيل المثال، تُستخدم وحدات البت الجذرية القابلة للقفل لرفض الوصول إلى البيانات المحمية بكلمة سر عند التشغيل من نمط تحديث البرنامج الثابت للجهاز (DFU). لمزيد من المعلومات، انظر رموز الدخول وكلمات السر.
محرك AES
يحتوي كل جهاز Apple مزود بـ Secure Enclave أيضًا على محرك تشفير AES256 مخصص (محرك AES) مضمّن في مسار الوصول إلى الذاكرة المباشرة (DMA) بين تخزين فلاش NAND (غير المتطاير) وذاكرة النظام الرئيسية، مما يجعل تشفير الملفات عالي الكفاءة. في معالج A9 أو معالجات السلسلة A الأحدث، يوجد النظام الفرعي لتخزين الفلاش على ناقل معزول لا يُسمح له بالوصول إلى الذاكرة التي تحتوي على بيانات المستخدم من خلال محرك تشفير DMA.
في وقت التمهيد، تقوم sepOS بإنشاء مفتاح تغليف عشوائي باستخدام TRNG. وينقل Secure Enclave هذا المفتاح إلى محرك AES باستخدام واصلات مخصصة مصممة لمنع الوصول إليه بواسطة أي برنامج خارج Secure Enclave. بعد ذلك، تستطيع sepOS استخدام مفتاح التغليف العشوائي لتغليف مفاتيح الملفات لاستخدامها بواسطة برنامج تشغيل نظام ملفات معالج التطبيقات. عندما يقوم برنامج تشغيل نظام الملفات بقراءة ملف أو كتابته، يرسل المفتاح المغلّف إلى محرك AES، والذي يقوم بفك تغليف المفتاح. لا يعرض محرك AES المفتاح غير المُغلّف للبرنامج أبدًا.
ملاحظة: محرك AES عبارة عن مكون منفصل عن كل من Secure Enclave ومحرك AES في Secure Enclave، ولكن تشغيله مرتبط بشكل وثيق بـ Secure Enclave كما هو موضح أدناه.
مُسرّع المفتاح العام
مُسرّع المفتاح العام (PKA) عبارة عن كتلة مادية تُستخدم لإجراء عمليات التشفير غير المتماثل. يدعم PKA خوارزميات التوقيع والتشفير RSA و ECC (منحنى القطع الناقص). صُمِّم PKA لمقاومة تسرُّب المعلومات عبر التوقيت وهجمات القناة الجانبية مثل SPA و DPA.
يدعم PKA مفاتيح البرامج والمكونات المادية. يتم اشتقاق مفاتيح المكونات المادية من معرّف UID أو GID الخاصين بـ Secure Enclave. وتظل هذه المفاتيح داخل PKA ولا تكون مرئية حتى لبرنامج sepOS.
بدءًا من A13 SoCs، ثبت أن تطبيقات تشفير PKA صحيحة رياضيًا باستخدام تقنيات التحقق الرسمية.
على Apple A10 وأنظمة SocS الأحدث، يدعم PKA المفاتيح المرتبطة بنظام التشغيل، ويُشار إليه أيضًا باسم حماية المفاتيح المؤمنة (SKP). يتم إنشاء هذه المفاتيح باستخدام مجموعة من UID للجهاز وتجزئة sepOS التي تعمل على الجهاز. يتم توفير التجزئة بواسطة Boot ROM في Secure Enclave، أو من خلال مراقب التمهيد في Secure Enclave على Apple A13 وأنظمة SoCs الأحدث. تُستخدم هذه المفاتيح أيضًا للتحقق من إصدار sepOS عند تقديم طلبات إلى خدمات Apple معينة، كما تُستخدم أيضًا لتحسين أمن البيانات المحمية برمز دخول من خلال المساعدة على منع الوصول إلى مادة المفاتيح في حالة إجراء تغييرات مهمة على النظام من دون تفويض من المستخدم.
التخزين غير المتطاير الآمن
تم تزويد Secure Enclave بجهاز تخزين غير متطاير آمن مخصص. يتم توصيل التخزين غير المتطاير الآمن بـ Secure Enclave باستخدام ناقل I2C مخصص، بحيث لا يمكن الوصول إليه إلا من خلال Secure Enclave. جميع مفاتيح تشفير بيانات المستخدم متجذرة في الإنتروبيا المخزنة في التخزين غير المتطاير في Secure Enclave.
في الأجهزة المثبت عليها A12 و S4 وأنظمة SoCs الأحدث، يتم إقران Secure Enclave مع مكون تخزين آمن لتخزين الإنتروبيا. تم تصميم مكون التخزين الآمن ذاته مع تعليمات ROM برمجية ثابتة ومولّد أرقام عشوائية مادي ومفتاح تشفير فريد لكل جهاز ومحركات تشفير واكتشاف العبث المادي. يتواصل Secure Enclave ومكون التخزين الآمن باستخدام بروتوكول مشفر ومصادق عليه يوفر الوصول الحصري إلى الإنتروبيا.
تم تزويد الأجهزة التي تم إصدارها لأول مرة في خريف 2020 أو أحدث بمكون تخزين آمن من الجيل الثاني. ويضيف مكون التخزين الآمن من الجيل الثاني صناديق قفل ذات عدّاد. يُخزّن كل صندوق قفل ذي عدّاد قيمةً عشوائيةً من 128 بت، ومُتحقِّق من رمز الدخول من 128 بت، وعدّاد من 8 بت، وقيمة محاولات قصوى من 8 بت. ويتم الوصول إلى صناديق القفل ذات العدّاد عبر بروتوكول مشفر ومصادق عليه.
تحمل صناديق القفل ذات العدّاد الإنتروبيا اللازمة لفتح قفل بيانات المستخدم المحمية برمز دخول. للوصول إلى بيانات المستخدم، يجب على Secure Enclave المقترن اشتقاق قيمة إنتروبيا لرمز الدخول الصحيح من رمز الدخول الخاص بالمستخدم ومعرف UID الخاص بـ Secure Enclave. لا يمكن التعرف على رمز دخول المستخدم باستخدام محاولات فتح القفل المرسلة من مصدر غير Secure Enclave المقترن. إذا تم تجاوز حد محاولات إدخال رمز الدخول (على سبيل المثال، 10 محاولات على الـ iPhone)، يتم مسح البيانات المحمية برمز الدخول بالكامل بواسطة مكون التخزين الآمن.
لإنشاء صندوق قفل ذي عدّاد، يرسل Secure Enclave إلى مكون التخزين الآمن قيمة إنتروبيا رمز الدخول وقيمة الحد الأقصى للمحاولات. ويقوم مكون التخزين الآمن بإنشاء قيمة عشوائية باستخدام مُولّد الأرقام العشوائية الخاص بها. ثم تستخرج قيمة تحقق من رمز الدخول وقيمة إنتروبيا لصندوق القفل من إنتروبيا رمز الدخول المرفق ومفتاح التشفير الفريد لمكون التخزين الآمن والقيمة العشوائية. يعمل مكون التخزين الآمن على تهيئة صندوق القفل ذي العدّاد بعدد 0، وقيمة الحد الأقصى للمحاولات المُقدّمة، وقيمة التحقُّق المشتقة، والقيمة العشوائية. يقوم مكون التخزين الآمن بعد ذلك بإرجاع قيمة إنتروبيا صندوق القفل المنشأة إلى Secure Enclave.
لاسترداد قيمة إنتروبيا صندوق القفل من صندوق قفل ذي عدّاد لاحقًا، يرسل Secure Enclave إنتروبيا رمز الدخول إلى مكون التخزين الآمن. يعمل مكون التخزين الآمن أولاً على زيادة عدّاد صندوق القفل. وإذا تجاوز العداد المتزايد القيمة القصوى لعدد المحاولات، فإن مكون التخزين الآمن يطمس صندوق القفل ذا العدّاد. إذا لم يتم الوصول إلى الحد الأقصى لعدد المحاولات، يحاول مكون التخزين الآمن اشتقاق قيمة التحقق من رمز الدخول وقيمة إنتروبيا صندوق القفل باستخدام نفس الخوارزمية المستخدمة لإنشاء صندوق القفل ذي العدّاد. إذا كانت قيمة التحقق من رمز الدخول المشتقة مطابقة لقيمة التحقق من رمز الدخول المخزنة، يُرجع مكون التخزين الآمن قيمة إنتروبيا صندوق القفل إلى Secure Enclave ويُعيد تعيين العدّاد إلى 0.
تكون المفاتيح المستخدمة للوصول إلى البيانات المحمية بكلمة سر متجذرةً في إنتروبيا المُخزّنة في صناديق القفل ذات العدّاد. لمزيد من المعلومات، انظر نظرة عامة على حماية البيانات.
يتم استخدام التخزين غير المتطاير الآمن لكل الخدمات المضادة لإعادة التشغيل في Secure Enclave. تُستخدم الخدمات غير القابلة لإعادة التشغيل على Secure Enclave لإبطال البيانات عبر الأحداث التي تميّز الحدود غير القابلة لإعادة التشغيل، بما في ذلك، على سبيل المثال لا الحصر، ما يلي:
تغيير رمز الدخول
تمكين أو تعطيل بصمة الوجه أو بصمة الإصبع
إضافة وجه في بصمة الوجه أو بصمة إصبع في بصمة الإصبع أو إزالتهما
إعادة تعيين بصمة الوجه أو بصمة الإصبع
إضافة أو إزالة بطاقة Apple Pay
مسح جميع المحتويات والإعدادات
في البُنى التي لا تحتوي على مكون تخزين آمن، يتم استخدام ذاكرة EEPROM (ذاكرة للقراءة فقط قابلة للمسح والبرمجة كهربائيًا) لتوفير خدمات تخزين آمنة في Secure Enclave. وكما هو الحال مع مكونات التخزين الآمنة، فإن ذاكرة EEPROM يتم إرفاقها والوصول إليها فقط من Secure Enclave، ولكنها لا تحتوي على ميزات أمن مادية مخصصة ولا تضمن الوصول الحصري إلى إنتروبيا (باستثناء خصائص التوصيل المادي) أو وظيفة صندوق القفل ذي العدّاد.
المحرك العصبي الآمن
على الأجهزة المزودة ببصمة الوجه (لا تتضمن بصمة الإصبع)، يحول المحرك العصبي الآمن الصور ثنائية الأبعاد وخرائط العمق إلى تمثيل رياضي لوجه المستخدم.
على A11 وحتى A13 SoCs، تم دمج المحرك العصبي الآمن في Secure Enclave. يستخدم المحرك العصبي الآمن الوصول المباشر للذاكرة (DMA) لتحقيق أداء عالٍ. تقوم وحدة إدارة ذاكرة إدخال/إخراج (IOMMU) بتقييد الواقعة تحت سيطرة نواة sepOS هذا الوصول المباشر إلى مناطق الذاكرة المصرح بها.
بدءًا من A14 أو M1 أو أحدث، يتم تطبيق المحرك العصبي الآمن كنمط آمن في المحرك العصبي لمعالج التطبيقات. تقوم وحدة تحكم أمن المكونات المادية المخصصة بالتبديل بين مهام معالج التطبيقات ومهام Secure Enclave، وإعادة تعيين حالة المحرك العصبي في كل انتقال للحفاظ على أمن بيانات بصمة الوجه. ويقوم محرك مخصص بتطبيق تشفير الذاكرة والمصادقة والتحكم في الوصول. في الوقت نفسه، يستخدم مفتاح تشفير ونطاق ذاكرة منفصلين لقصر المحرك العصبي الآمن على مناطق الذاكرة المصرح بها.
برامج مراقبة الطاقة والساعة
صُمِّمت جميع الأجهزة الإلكترونية لتعمل في نطاق جهد وتردد محدود. يمكن أن تتعطل الأجهزة الإلكترونية عند تشغيلها خارج هذا الغلاف، ومن ثم قد يتم تجاوز ضوابط الأمن. صُمِّم Secure Enclave بدوائر مراقبة للمساعدة على ضمان بقاء الجهد والتردد في نطاق آمن. وصُمِّمت دوائر المراقبة هذه بحيث يكون لها غلاف تشغيل أكبر بكثير من باقي Secure Enclave. إذا اكتشفت الشاشات نقطة تشغيل غير قانونية، فإن الساعات في Secure Enclave تتوقف تلقائيًا ولا يُعاد تشغيلها حتى تتم إعادة تعيين SoC التالية.
ملخص ميزة Secure Enclave
ملاحظة: تتضمن منتجات A12 و A13 و S4 و S5 التي تم إصدارها لأول مرة في خريف 2020 الجيل الثاني من مكون التخزين الآمن، بينما تتضمن المنتجات الأقدم التي تعتمد على SoCs الجيل الأول من مكون التخزين الآمن.
SoC | محرك حماية الذاكرة | التخزين الآمن | محرك AES | PKA |
---|---|---|---|---|
A8 | التشفير والمصادقة | EEPROM | نعم | لا |
A9 | التشفير والمصادقة | EEPROM | حماية DPA | نعم |
A10 | التشفير والمصادقة | EEPROM | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
A11 | التشفير والمصادقة ومنع إعادة التشغيل | EEPROM | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
A12 (أجهزة Apple التي تم إصدارها قبل خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الأول | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
A12 (أجهزة Apple التي تم إصدارها بعد خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
A13 (أجهزة Apple التي تم إصدارها قبل خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الأول | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل ومراقب التمهيد |
A13 (أجهزة Apple التي تم إصدارها بعد خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل ومراقب التمهيد |
A14 إلى A17 | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل ومراقب التمهيد |
S3 | التشفير والمصادقة | EEPROM | حماية DPA ووحدات البت الجذرية القابلة للقفل | نعم |
S4 | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الأول | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
S5 (أجهزة Apple التي تم إصدارها قبل خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الأول | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
S5 (أجهزة Apple التي تم إصدارها بعد خريف 2020) | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
S6 إلى S9 | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
T2 | التشفير والمصادقة | EEPROM | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل |
M1 و M2 و M3 | التشفير والمصادقة ومنع إعادة التشغيل | مكون التخزين الآمن من الجيل الثاني | حماية DPA ووحدات البت الجذرية القابلة للقفل | المفاتيح المرتبطة بنظام التشغيل ومراقب التمهيد |