تمنحك شهادة إثبات ملكية المفاتيح ثقة أكبر بأنّ المفاتيح التي تستخدمها في تطبيقك يتم تخزينها في متجر مفاتيح يستند إلى الأجهزة في الجهاز. توضّح الأقسام التالية كيفية التحقّق من خصائص المفاتيح المستندة إلى الأجهزة وكيفيةinterpret بيانات إضافة شهادات الشهادة.
ملاحظة: قبل التحقّق من خصائص مفاتيح الجهاز المتوافقة مع الأجهزة في بيئة على مستوى الإنتاج، تأكَّد من أنّ الجهاز متوافق مع عملية إثبات ملكية المفتاح على مستوى الأجهزة. لإجراء ذلك،
تأكَّد من أنّ سلسلة شهادة الشهادة تحتوي على شهادة جذر
تم توقيعها باستخدام مفتاح الجذر لشهادة الاعتماد من Google ومن أنّه تم ضبط عنصر
attestationSecurityLevel
ضمن بنية بيانات وصف المفتاح
على مستوى الأمان TrustedEnvironment
أو على مستوى الأمان
StrongBox
.
بالإضافة إلى ذلك، من المهم التحقّق من التوقيعات في سلسلة الشهادات والتأكّد من عدم إبطال أي من المفاتيح في السلسلة من خلال التحقّق من قائمة حالات إبطال الشهادة. لا تثق بشكل كامل في شهادة الاعتماد ما لم تكن جميعها صالحة وكان المفتاح الجذر هو مفتاح Google الجذر. تجدر الإشارة إلى أنّ الأجهزة التي تحتوي على شهادات مُلغاة تظل على الأقل جديرة بالثقة مثل الأجهزة التي توفّر شهادة اعتماد البرامج فقط. إنّ الحصول على إقرار صالح بالكامل هو مؤشر إيجابي قوي. ويشير عدم توفّر علامة إلى أنّ الأداء محايد، وليس سلبيًا.
استرداد زوج مفاتيح مستند إلى الجهاز والتحقّق منه
أثناء إثبات ملكية المفتاح، يمكنك تحديد الاسم المعرِّف لزوج مفاتيح التشفير واسترداد سلسلة شهادته، والتي يمكنك استخدامها للتحقّق من خصائص هذا الزوج.
إذا كان الجهاز متوافقًا مع إثبات ملكية المفتاح على مستوى الأجهزة، يتم توقيع شهادة الجذر ضمن هذه السلسلة باستخدام مفتاح جذر إثبات الملكية الذي تم تزويده بأمان في متجر المفاتيح المستند إلى الأجهزة في الجهاز.
ملاحظة: على الأجهزة التي يتم شحنها مع شهادة اعتماد مفتاح على مستوى الجهاز ونظام التشغيل Android 7.0 (المستوى 24 من واجهة برمجة التطبيقات) أو الإصدارات الأحدث و"خدمات Google Play"، يتم توقيع الشهادة الجذر باستخدام مفتاح الجذر لشهادة اعتماد Google. تأكَّد من أنّ شهادة الجذر هذه من بين الشهادات المدرَجة في قسم شهادات الجذر.
لتنفيذ عملية إثبات ملكية المفتاح، أكمِل الخطوات التالية:
-
استخدِم طريقة
getCertificateChain()
لعنصرKeyStore
للحصول على إشارة إلى سلسلة شهادات X.509 المرتبطة بملف تخزين المفاتيح المستنِد إلى الأجهزة. -
أرسِل الشهادات إلى خادم منفصل تثق به للتحقّق من صحتها.
تحذير: لا تُكمِل عملية التحقّق التالية على الجهاز نفسه الذي يتضمّن "متجر المفاتيح". إذا تم اختراق نظام Android على ذلك الجهاز، قد يؤدي ذلك إلى أن تثق عملية التحقّق في شيء غير موثوق به.
-
احصل على مرجع إلى مكتبة تحليل سلسلة شهادة X.509 والتحقّق منها التي تكون الأكثر ملاءمةً لمجموعة أدواتك. تأكَّد من أنّ الشهادة العامة الجذر جديرة بالثقة وأنّ كل شهادة توقع الشهادة التالية في السلسلة.
-
تحقّق من حالة إبطال كل شهادة للتأكّد من أنّه لم يتم إبطال أيّ من الشهادات.
-
يمكنك اختياريًا فحص إضافة شهادة معلومات التوفّر التي لا تظهر إلا في سلاسل الشهادات الأحدث.
احصل على مرجع إلى مكتبة مفسِّر CBOR الأكثر ملاءمةً لمجموعة أدواتك. ابحث عن أقرب شهادة إلى الجذر تحتوي على إضافة شهادة معلومات الإعداد. استخدِم المُحلِّل لاستخراج بيانات إضافة شهادة معلومات الإعداد من هذه الشهادة.
اطّلِع على القسم المعنيّ بملف إضافة معلومات التوفير للحصول على مزيد من التفاصيل.
-
احصل على مرجع إلى مكتبة مفسِّر ASN.1 الأكثر ملاءمةً لمجموعة أدواتك. ابحث عن أقرب شهادة إلى الجذر تحتوي على إضافة شهادة إثبات ملكية المفتاح. إذا كانت إضافة شهادة معلومات التوفير متوفّرة، يجب أن تكون إضافة شهادة إثبات ملكية المفتاح في الشهادة التالية مباشرةً. استخدِم معالج تحليل لإخراج بيانات إضافة شهادة إثبات الملكية للمفتاح من هذه الشهادة.
تحذير: لا تفترض أنّ إضافة شهادة ملف تعريف المفتاح هي في الشهادة الطرفية للسلسلة. يمكن الوثوق فقط بأول مرّة تظهر فيها الإضافة في السلسلة. ولم يتم إصدار أي مثيلات أخرى من الإضافة من خلال الجهاز الآمن، وقد يكون قد أصدرها مهاجم يمدّد السلسلة أثناء محاولته إنشاء عمليات مصادقة مزيفة للمفاتيح غير الموثوق بها.
يستخدم نموذج ملف تعريف هوية مفتاح التشفير منصة تحليل ASN.1 من Bouncy Castle لاستخراج data إضافة شهادة الشهادة. يمكنك استخدام هذا العيّنة كمرجع لإنشاء معالج لسلاسل النصوص بنفسك.
اطّلِع على القسم حول مخطّط بيانات إضافة إثبات ملكية المفتاح للحصول على مزيد من التفاصيل.
-
تحقَّق من بيانات الإضافة التي استرجاعتها في الخطوات السابقة للتأكّد من تناسقها وقارِنها بمجموعة القيم التي تتوقّع أن يحتوي عليها المفتاح المستند إلى الجهاز.
شهادات الجذر
تعتمد موثوقية شهادة الاعتماد على شهادة الجذر في السلسلة. أجهزة Android التي اجتازت الاختبار المطلوب لتثبيت حزمة تطبيقات Google، بما في ذلك Google Play، والتي تم تشغيلها باستخدام الإصدار 7.0 من Android (المستوى 24 لواجهة برمجة التطبيقات) أو إصدار أحدث، يجب أن تستخدم مفاتيح التصديق الموقَّعة بشهادة جذر تصديق أجهزة Google. يُرجى العِلم أنّه لم يكن مطلوبًا إرسال شهادات الاعتماد حتى الإصدار 8.0 من نظام التشغيل Android (المستوى 26 من واجهة برمجة التطبيقات). المفتاح العام للجذر هو كما يلي:
-----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAr7bHgiuxpwHsK7Qui8xU FmOr75gvMsd/dTEDDJdSSxtf6An7xyqpRR90PL2abxM1dEqlXnf2tqw1Ne4Xwl5j lRfdnJLmN0pTy/4lj4/7tv0Sk3iiKkypnEUtR6WfMgH0QZfKHM1+di+y9TFRtv6y //0rb+T+W8a9nsNL/ggjnar86461qO0rOs2cXjp3kOG1FEJ5MVmFmBGtnrKpa73X pXyTqRxB/M0n1n/W9nGqC4FSYa04T6N5RIZGBN2z2MT5IKGbFlbC8UrW0DxW7AYI mQQcHtGl/m00QLVWutHQoVJYnFPlXTcHYvASLu+RhhsbDmxMgJJ0mcDpvsC4PjvB +TxywElgS70vE0XmLD+OJtvsBslHZvPBKCOdT0MS+tgSOIfga+z1Z1g7+DVagf7q uvmag8jfPioyKvxnK/EgsTUVi2ghzq8wm27ud/mIM7AY2qEORR8Go3TVB4HzWQgp Zrt3i5MIlCaY504LzSRiigHCzAPlHws+W0rB5N+er5/2pJKnfBSDiCiFAVtCLOZ7 gLiMm0jhO2B6tUXHI/+MRPjy02i59lINMRRev56GKtcd9qO/0kUJWdZTdA2XoS82 ixPvZtXQpUpuL12ab+9EaDK8Z4RHJYYfCT3Q5vNAXaiWQ+8PTWm2QgBR/bkwSWc+ NpUFgNPN9PvQi8WEg5UmAGMCAwEAAQ== -----END PUBLIC KEY-----
شهادات الجذر التي تم إصدارها سابقًا
-----BEGIN CERTIFICATE----- MIIFYDCCA0igAwIBAgIJAOj6GWMU0voYMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV BAUTEGY5MjAwOWU4NTNiNmIwNDUwHhcNMTYwNTI2MTYyODUyWhcNMjYwNTI0MTYy ODUyWjAbMRkwFwYDVQQFExBmOTIwMDllODUzYjZiMDQ1MIICIjANBgkqhkiG9w0B AQEFAAOCAg8AMIICCgKCAgEAr7bHgiuxpwHsK7Qui8xUFmOr75gvMsd/dTEDDJdS Sxtf6An7xyqpRR90PL2abxM1dEqlXnf2tqw1Ne4Xwl5jlRfdnJLmN0pTy/4lj4/7 tv0Sk3iiKkypnEUtR6WfMgH0QZfKHM1+di+y9TFRtv6y//0rb+T+W8a9nsNL/ggj nar86461qO0rOs2cXjp3kOG1FEJ5MVmFmBGtnrKpa73XpXyTqRxB/M0n1n/W9nGq C4FSYa04T6N5RIZGBN2z2MT5IKGbFlbC8UrW0DxW7AYImQQcHtGl/m00QLVWutHQ oVJYnFPlXTcHYvASLu+RhhsbDmxMgJJ0mcDpvsC4PjvB+TxywElgS70vE0XmLD+O JtvsBslHZvPBKCOdT0MS+tgSOIfga+z1Z1g7+DVagf7quvmag8jfPioyKvxnK/Eg sTUVi2ghzq8wm27ud/mIM7AY2qEORR8Go3TVB4HzWQgpZrt3i5MIlCaY504LzSRi igHCzAPlHws+W0rB5N+er5/2pJKnfBSDiCiFAVtCLOZ7gLiMm0jhO2B6tUXHI/+M RPjy02i59lINMRRev56GKtcd9qO/0kUJWdZTdA2XoS82ixPvZtXQpUpuL12ab+9E aDK8Z4RHJYYfCT3Q5vNAXaiWQ+8PTWm2QgBR/bkwSWc+NpUFgNPN9PvQi8WEg5Um AGMCAwEAAaOBpjCBozAdBgNVHQ4EFgQUNmHhAHyIBQlRi0RsR/8aTMnqTxIwHwYD VR0jBBgwFoAUNmHhAHyIBQlRi0RsR/8aTMnqTxIwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAYYwQAYDVR0fBDkwNzA1oDOgMYYvaHR0cHM6Ly9hbmRyb2lk Lmdvb2dsZWFwaXMuY29tL2F0dGVzdGF0aW9uL2NybC8wDQYJKoZIhvcNAQELBQAD ggIBACDIw41L3KlXG0aMiS//cqrG+EShHUGo8HNsw30W1kJtjn6UBwRM6jnmiwfB Pb8VA91chb2vssAtX2zbTvqBJ9+LBPGCdw/E53Rbf86qhxKaiAHOjpvAy5Y3m00m qC0w/Zwvju1twb4vhLaJ5NkUJYsUS7rmJKHHBnETLi8GFqiEsqTWpG/6ibYCv7rY DBJDcR9W62BW9jfIoBQcxUCUJouMPH25lLNcDc1ssqvC2v7iUgI9LeoM1sNovqPm QUiG9rHli1vXxzCyaMTjwftkJLkf6724DFhuKug2jITV0QkXvaJWF4nUaHOTNA4u JU9WDvZLI1j83A+/xnAJUucIv/zGJ1AMH2boHqF8CY16LpsYgBt6tKxxWH00XcyD CdW2KlBCeqbQPcsFmWyWugxdcekhYsAWyoSf818NUsZdBWBaR/OukXrNLfkQ79Iy ZohZbvabO/X+MVT3rriAoKc8oE2Uws6DF+60PV7/WIPjNvXySdqspImSN78mflxD qwLqRBYkA3I75qppLGG9rp7UCdRjxMl8ZDBld+7yvHVgt1cVzJx9xnyGCC23Uaic MDSXYrB4I4WHXPGjxhZuCuPBLTdOLU8YRvMYdEvYebWHMpvwGCF6bAx3JBpIeOQ1 wDB5y0USicV3YgYGmi+NZfhA4URSh77Yd6uuJOJENRaNVTzk -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MIIFHDCCAwSgAwIBAgIJANUP8luj8tazMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV BAUTEGY5MjAwOWU4NTNiNmIwNDUwHhcNMTkxMTIyMjAzNzU4WhcNMzQxMTE4MjAz NzU4WjAbMRkwFwYDVQQFExBmOTIwMDllODUzYjZiMDQ1MIICIjANBgkqhkiG9w0B AQEFAAOCAg8AMIICCgKCAgEAr7bHgiuxpwHsK7Qui8xUFmOr75gvMsd/dTEDDJdS Sxtf6An7xyqpRR90PL2abxM1dEqlXnf2tqw1Ne4Xwl5jlRfdnJLmN0pTy/4lj4/7 tv0Sk3iiKkypnEUtR6WfMgH0QZfKHM1+di+y9TFRtv6y//0rb+T+W8a9nsNL/ggj nar86461qO0rOs2cXjp3kOG1FEJ5MVmFmBGtnrKpa73XpXyTqRxB/M0n1n/W9nGq C4FSYa04T6N5RIZGBN2z2MT5IKGbFlbC8UrW0DxW7AYImQQcHtGl/m00QLVWutHQ oVJYnFPlXTcHYvASLu+RhhsbDmxMgJJ0mcDpvsC4PjvB+TxywElgS70vE0XmLD+O JtvsBslHZvPBKCOdT0MS+tgSOIfga+z1Z1g7+DVagf7quvmag8jfPioyKvxnK/Eg sTUVi2ghzq8wm27ud/mIM7AY2qEORR8Go3TVB4HzWQgpZrt3i5MIlCaY504LzSRi igHCzAPlHws+W0rB5N+er5/2pJKnfBSDiCiFAVtCLOZ7gLiMm0jhO2B6tUXHI/+M RPjy02i59lINMRRev56GKtcd9qO/0kUJWdZTdA2XoS82ixPvZtXQpUpuL12ab+9E aDK8Z4RHJYYfCT3Q5vNAXaiWQ+8PTWm2QgBR/bkwSWc+NpUFgNPN9PvQi8WEg5Um AGMCAwEAAaNjMGEwHQYDVR0OBBYEFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMB8GA1Ud IwQYMBaAFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMA8GA1UdEwEB/wQFMAMBAf8wDgYD VR0PAQH/BAQDAgIEMA0GCSqGSIb3DQEBCwUAA4ICAQBOMaBc8oumXb2voc7XCWnu XKhBBK3e2KMGz39t7lA3XXRe2ZLLAkLM5y3J7tURkf5a1SutfdOyXAmeE6SRo83U h6WszodmMkxK5GM4JGrnt4pBisu5igXEydaW7qq2CdC6DOGjG+mEkN8/TA6p3cno L/sPyz6evdjLlSeJ8rFBH6xWyIZCbrcpYEJzXaUOEaxxXxgYz5/cTiVKN2M1G2ok QBUIYSY6bjEL4aUN5cfo7ogP3UvliEo3Eo0YgwuzR2v0KR6C1cZqZJSTnghIC/vA D32KdNQ+c3N+vl2OTsUVMC1GiWkngNx1OO1+kXW+YTnnTUOtOIswUP/Vqd5SYgAI mMAfY8U9/iIgkQj6T2W6FsScy94IN9fFhE1UtzmLoBIuUFsVXJMTz+Jucth+IqoW Fua9v1R93/k98p41pjtFX+H8DslVgfP097vju4KDlqN64xV1grw3ZLl4CiOe/A91 oeLm2UHOq6wn3esB4r2EIQKb6jTVGu5sYCcdWpXr0AUVqcABPdgL+H7qJguBw09o jm6xNIrw2OocrDKsudk/okr/AwqEyPKw9WnMlQgLIKw1rODG2NvU9oR3GVGdMkUB ZutL8VuFkERQGt6vQ2OCw0sV47VMkuYbacK/xyZFiRcrPJPb41zgbQj9XAEyLKCH ex0SdDrx+tWUDqG8At2JHA== -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MIIFHDCCAwSgAwIBAgIJAMNrfES5rhgxMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV BAUTEGY5MjAwOWU4NTNiNmIwNDUwHhcNMjExMTE3MjMxMDQyWhcNMzYxMTEzMjMx MDQyWjAbMRkwFwYDVQQFExBmOTIwMDllODUzYjZiMDQ1MIICIjANBgkqhkiG9w0B AQEFAAOCAg8AMIICCgKCAgEAr7bHgiuxpwHsK7Qui8xUFmOr75gvMsd/dTEDDJdS Sxtf6An7xyqpRR90PL2abxM1dEqlXnf2tqw1Ne4Xwl5jlRfdnJLmN0pTy/4lj4/7 tv0Sk3iiKkypnEUtR6WfMgH0QZfKHM1+di+y9TFRtv6y//0rb+T+W8a9nsNL/ggj nar86461qO0rOs2cXjp3kOG1FEJ5MVmFmBGtnrKpa73XpXyTqRxB/M0n1n/W9nGq C4FSYa04T6N5RIZGBN2z2MT5IKGbFlbC8UrW0DxW7AYImQQcHtGl/m00QLVWutHQ oVJYnFPlXTcHYvASLu+RhhsbDmxMgJJ0mcDpvsC4PjvB+TxywElgS70vE0XmLD+O JtvsBslHZvPBKCOdT0MS+tgSOIfga+z1Z1g7+DVagf7quvmag8jfPioyKvxnK/Eg sTUVi2ghzq8wm27ud/mIM7AY2qEORR8Go3TVB4HzWQgpZrt3i5MIlCaY504LzSRi igHCzAPlHws+W0rB5N+er5/2pJKnfBSDiCiFAVtCLOZ7gLiMm0jhO2B6tUXHI/+M RPjy02i59lINMRRev56GKtcd9qO/0kUJWdZTdA2XoS82ixPvZtXQpUpuL12ab+9E aDK8Z4RHJYYfCT3Q5vNAXaiWQ+8PTWm2QgBR/bkwSWc+NpUFgNPN9PvQi8WEg5Um AGMCAwEAAaNjMGEwHQYDVR0OBBYEFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMB8GA1Ud IwQYMBaAFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMA8GA1UdEwEB/wQFMAMBAf8wDgYD VR0PAQH/BAQDAgIEMA0GCSqGSIb3DQEBCwUAA4ICAQBTNNZe5cuf8oiq+jV0itTG zWVhSTjOBEk2FQvh11J3o3lna0o7rd8RFHnN00q4hi6TapFhh4qaw/iG6Xg+xOan 63niLWIC5GOPFgPeYXM9+nBb3zZzC8ABypYuCusWCmt6Tn3+Pjbz3MTVhRGXuT/T QH4KGFY4PhvzAyXwdjTOCXID+aHud4RLcSySr0Fq/L+R8TWalvM1wJJPhyRjqRCJ erGtfBagiALzvhnmY7U1qFcS0NCnKjoO7oFedKdWlZz0YAfu3aGCJd4KHT0MsGiL Zez9WP81xYSrKMNEsDK+zK5fVzw6jA7cxmpXcARTnmAuGUeI7VVDhDzKeVOctf3a 0qQLwC+d0+xrETZ4r2fRGNw2YEs2W8Qj6oDcfPvq9JySe7pJ6wcHnl5EZ0lwc4xH 7Y4Dx9RA1JlfooLMw3tOdJZH0enxPXaydfAD3YifeZpFaUzicHeLzVJLt9dvGB0b HQLE4+EqKFgOZv2EoP686DQqbVS1u+9k0p2xbMA105TBIk7npraa8VM0fnrRKi7w lZKwdH+aNAyhbXRW9xsnODJ+g8eF452zvbiKKngEKirK5LGieoXBX7tZ9D1GNBH2 Ob3bKOwwIWdEFle/YF/h6zWgdeoaNGDqVBrLr2+0DtWoiB1aDEjLWl9FmyIUyUm7 mD/vFDkzF+wm7cyWpQpCVQ== -----END CERTIFICATE-----
-----BEGIN CERTIFICATE----- MIIFHDCCAwSgAwIBAgIJAPHBcqaZ6vUdMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV BAUTEGY5MjAwOWU4NTNiNmIwNDUwHhcNMjIwMzIwMTgwNzQ4WhcNNDIwMzE1MTgw NzQ4WjAbMRkwFwYDVQQFExBmOTIwMDllODUzYjZiMDQ1MIICIjANBgkqhkiG9w0B AQEFAAOCAg8AMIICCgKCAgEAr7bHgiuxpwHsK7Qui8xUFmOr75gvMsd/dTEDDJdS Sxtf6An7xyqpRR90PL2abxM1dEqlXnf2tqw1Ne4Xwl5jlRfdnJLmN0pTy/4lj4/7 tv0Sk3iiKkypnEUtR6WfMgH0QZfKHM1+di+y9TFRtv6y//0rb+T+W8a9nsNL/ggj nar86461qO0rOs2cXjp3kOG1FEJ5MVmFmBGtnrKpa73XpXyTqRxB/M0n1n/W9nGq C4FSYa04T6N5RIZGBN2z2MT5IKGbFlbC8UrW0DxW7AYImQQcHtGl/m00QLVWutHQ oVJYnFPlXTcHYvASLu+RhhsbDmxMgJJ0mcDpvsC4PjvB+TxywElgS70vE0XmLD+O JtvsBslHZvPBKCOdT0MS+tgSOIfga+z1Z1g7+DVagf7quvmag8jfPioyKvxnK/Eg sTUVi2ghzq8wm27ud/mIM7AY2qEORR8Go3TVB4HzWQgpZrt3i5MIlCaY504LzSRi igHCzAPlHws+W0rB5N+er5/2pJKnfBSDiCiFAVtCLOZ7gLiMm0jhO2B6tUXHI/+M RPjy02i59lINMRRev56GKtcd9qO/0kUJWdZTdA2XoS82ixPvZtXQpUpuL12ab+9E aDK8Z4RHJYYfCT3Q5vNAXaiWQ+8PTWm2QgBR/bkwSWc+NpUFgNPN9PvQi8WEg5Um AGMCAwEAAaNjMGEwHQYDVR0OBBYEFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMB8GA1Ud IwQYMBaAFDZh4QB8iAUJUYtEbEf/GkzJ6k8SMA8GA1UdEwEB/wQFMAMBAf8wDgYD VR0PAQH/BAQDAgIEMA0GCSqGSIb3DQEBCwUAA4ICAQB8cMqTllHc8U+qCrOlg3H7 174lmaCsbo/bJ0C17JEgMLb4kvrqsXZs01U3mB/qABg/1t5Pd5AORHARs1hhqGIC W/nKMav574f9rZN4PC2ZlufGXb7sIdJpGiO9ctRhiLuYuly10JccUZGEHpHSYM2G tkgYbZba6lsCPYAAP83cyDV+1aOkTf1RCp/lM0PKvmxYN10RYsK631jrleGdcdkx oSK//mSQbgcWnmAEZrzHoF1/0gso1HZgIn0YLzVhLSA/iXCX4QT2h3J5z3znluKG 1nv8NQdxei2DIIhASWfu804CA96cQKTTlaae2fweqXjdN1/v2nqOhngNyz1361mF mr4XmaKH/ItTwOe72NI9ZcwS1lVaCvsIkTDCEXdm9rCNPAY10iTunIHFXRh+7KPz lHGewCq/8TOohBRn0/NNfh7uRslOSZ/xKbN9tMBtw37Z8d2vvnXq/YWdsm1+JLVw n6yYD/yacNJBlwpddla8eaVMjsF6nBnIgQOf9zKSe06nSTqvgwUHosgOECZJZ1Eu zbH4yswbt02tKtKEFhx+v+OTge/06V+jGsqTWLsfrOCNLuA8H++z+pUENmpqnnHo vaI47gC+TNpkgYGkkBT6B/m/U01BuOBBTzhIlMEZq9qkDWuM2cA5kW5V3FJUcfHn w1IdYIg2Wxg7yHcQZemFQg== -----END CERTIFICATE-----
إذا كانت الشهادة الجذر في سلسلة الإثبات التي تتلقّاها تحتوي على هذا المفتاح العام ولم يتم إبطال أي من الشهادات في السلسلة، يعني ذلك ما يلي:
- أنّ مفتاحك محفوظ في جهاز تعتقد Google أنّه آمن
- أن تتضمّن السمات الموضّحة في شهادة الشهادة
إذا كانت سلسلة الإثبات تتضمّن أي مفتاح عام آخر للجذر، لا تقدّم Google أي ادعاءات بشأن أمان الجهاز. لا يعني ذلك أنّ مفتاحك قد تم اختراقه، بل يعني فقط أنّ شهادة التحقّق لا تثبت أنّ المفتاح محفوظ على جهاز آمن. ويجب تعديل الافتراضات المتعلّقة بالحماية وفقًا لذلك.
إذا لم تحتوي الشهادة الجذر على المفتاح العام في هذه الصفحة، هناك سببان محتمَلان لذلك:
- من المرجّح أنّ الجهاز تم تشغيله بإصدار Android أقل من 7.0 ولا يتيح إثبات ملكية الجهاز. في هذه الحالة، يتضمّن Android عملية تنفيذ لشهادة المصادقة من خلال البرامج تُنشئ النوع نفسه من شهادة المصادقة، ولكن يتم توقيعها باستخدام مفتاح مُبرمَج بشكل ثابت في رمز المصدر لنظام Android. وبما أنّ مفتاح التوقيع هذا ليس سريًا، قد يكون مُنشئ شهادة المصادقة هو مهاجم يدّعي تقديم أجهزة آمنة.
- السبب الآخر المحتمَل هو أنّ الجهاز ليس جهاز Google Play. وفي هذه الحالة، يكون صانع الجهاز متحرّرًا من إنشاء الجذر الخاص به وتقديم أي ادعاءات يريدها بشأن معنى شهادة الاعتماد. راجِع مستندات الشركة المصنّعة للجهاز. يُرجى العِلم أنّ Google لا تعرف أيّ صانعي أجهزة اتّخذوا هذا الإجراء.
قائمة حالات إبطال الشهادات
يمكن إبطال مفاتيح الإثبات لعدد من الأسباب، بما في ذلك إساءة استخدامها أو استخراجها من قِبل مهاجم يُشتبه به. لذلك، من المهم التحقّق من حالة كل شهادة في
سلسلة الشهادات من خلال قائمة حالة إبطال الشهادات الرسمية (CRL).
تحتفظ Google بهذه القائمة وتنشرها على الرابط:
https://android.googleapis.com/attestation/status. يحدِّد رأس Cache-Control
في
استجابة HTTP عدد المرات التي يتم فيها البحث عن التحديثات حتى لا يكون طلب الشبكة مطلوبًا
لكل شهادة يتم التحقّق منها.
يعرض عنوان URL هذا ملف JSON يحتوي على حالة إبطال أيّ شهادات ليس لديها
حالة صالحة عادية. يلتزم تنسيق ملف JSON بتعريف مخطّط JSON التالي
(مسودة 07):
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "entries": { "description" : "Each entry represents the status of an attestation key. The dictionary-key is the certificate serial number in lowercase hex.", "type": "object", "propertyNames": { "pattern": "^[a-f1-9][a-f0-9]*$" }, "additionalProperties": { "type": "object", "properties": { "status": { "description": "[REQUIRED] Current status of the key.", "type": "string", "enum": ["REVOKED", "SUSPENDED"] }, "expires": { "description": "[OPTIONAL] UTC date when certificate expires in ISO8601 format (YYYY-MM-DD). Can be used to clear expired certificates from the status list.", "type": "string", "format": "date" }, "reason": { "description": "[OPTIONAL] Reason for the current status.", "type": "string", "enum": ["UNSPECIFIED", "KEY_COMPROMISE", "CA_COMPROMISE", "SUPERSEDED", "SOFTWARE_FLAW"] }, "comment": { "description": "[OPTIONAL] Free form comment about the key status.", "type": "string", "maxLength": 140 } }, "required": ["status"], "additionalProperties": false } } }, "required": ["entries"], "additionalProperties": false }
مثال على قائمة شهادات الاعتماد المسجَّلة:
{ "entries": { "2c8cdddfd5e03bfc": { "status": "REVOKED", "expires": "2020-11-13", "reason": "KEY_COMPROMISE", "comment": "Key stored on unsecure system" }, "c8966fcb2fbb0d7a": { "status": "SUSPENDED", "reason": "SOFTWARE_FLAW", "comment": "Bug in keystore causes this key malfunction b/555555" } } }