يُرجى توجيه أي أسئلة حول هذه السياسة إلى منتدى سياسة المعالجة المحدودة للبيانات: ct-policy@chromium.org
عند التحقّق من شهادة بروتوكول أمان طبقة النقل (TLS) لاتّصال في تطبيق يوافق على سياسة شفافية الشهادات، يتم تقييمه للتأكّد من امتثاله لسياسة شفافية الشهادات في Android. يُقال إنّ الشهادات التي تكون مصحوبة بطابع زمني موقَّع للشهادة (SCT) تستوفي هذه السياسة متوافقة مع CT.
يتم تحقيق الامتثال لـ CT من خلال شهادة ومجموعة من شهادات SCT المصاحبة تستوفي مجموعة من المتطلبات الفنية التي تفرضها مكتبات TLS الرائجة (بما في ذلك Conscrypt المضمّن في Android) أثناء التحقّق من الشهادة، والتي يتم تحديدها في هذه السياسة.
حالات سجلّ CT
يتم تحديد امتثال CT في Android من خلال تقييم سجلّات SCT من سجلّات CT و التأكّد من أنّ هذه السجلات في الحالات الصحيحة في وقت التحقّق. في ما يلي مجموعة الحالات المحتملة لسجلّ CT:
Pending
Qualified
Usable
ReadOnly
Retired
Rejected
للمساعدة في فهم متطلبات الامتثال لسياسة خصوصية الاتصالات في Android، يتم وصف تعريف هذه الحالات ومتطلبات السجلّات في كل حالة، بالإضافة إلى كيفية تأثير هذه الحالات في سلوك Android بالتفصيل في الشرح المفصّل لدورة حياة سجلّات سياسة خصوصية الاتصالات ضمن مستندات Chrome.
الشهادات المتوافقة مع CT
تكون شهادة بروتوكول أمان طبقة النقل (TLS) متوافقة مع شهادات التحقق من العمر إذا كانت مصحوبة بمجموعة من شهادات التحقق من العمر التي تُلبي أحد المعايير المحدّدة لاحقًا على الأقل، وذلك استنادًا إلى كيفية إرسال شهادات التحقق من العمر إلى Android. في تطبيقات Android التي تفرض استخدام بروتوكول أمان طبقة النقل (TLS)، يجب أن تكون كل شهادات TLS الموثوق بها بشكل علني متوافقة مع بروتوكول أمان طبقة النقل (TLS) لكي تتمكّن من إثبات صحتها بنجاح. ومع ذلك، لا تُعتبر الشهادات التي لم يتم تسجيلها في بروتوكول أمان طبقة النقل (TLS) أو التي تحتوي على سجلّات تصديق شهادات SCT غير كافية أنّها صادرة عن طريق الخطأ.
عند تقييم شهادة للتحقق من امتثالها لبروتوكول CT، يأخذ Android في الاعتبار عدة عوامل، بما في ذلك عدد سجلّات SCT المتوفّرة، وصاحب سجلّ CT الذي أصدر سجلّ SCT، وحالة سجلّ CT الذي أصدر سجلّ SCT، في كلٍّ من وقت التحقّق من صحة الشهادة ووقت إنشاء سجلّ SCT من قِبل سجلّ CT.
استنادًا إلى كيفية عرض ملفات SCT على Android، يمكن تحقيق الامتثال لسياسة الشفافية والموافقة من خلال استيفاء أحد المعايير التالية:
المقاطع الصوتية المشفّرة المضمّنة:
- شهادة SCT مضمّنة واحدة على الأقل من سجلّ شهادات الشفافية التي كانت
Qualified
أوUsable
أوReadOnly
في وقت التحقّق - أن تتوفّر "شهادات شفافية مضمّنة" من N سجلّات شهادات شفافية مختلفة على الأقل كانت
Qualified
أوUsable
أوReadOnly
أوRetired
في وقت التحقّق، حيث يتم تحديد N في الجدول التالي - من بين شهادات SCT التي تستوفي المتطلّب 2، يجب أن يتم إصدار شهادتَي SCT على الأقل من مشغّلي سجلّات CT المختلفين كما يقرّ بذلك نظام Android.
- من بين سجلّات SCT التي تستوفي الشرط 2، يجب أن يتم إصدار سجلّ SCT واحد على الأقل من سجلّ يُعرّفه Android على أنّه متوافق مع RFC 6962.
مدة صلاحية الشهادة | عدد عمليات تسجيل المحتوى من سجلات CT المختلفة |
---|---|
<= 180 يومًا | 2 |
أكثر من 180 يومًا | 3 |
شهادات SCT التي يتم تسليمها عبر بروتوكول حالة الشهادة على الإنترنت (OCSP) أو بروتوكول أمان طبقة النقل (TLS):
- شَهادتا SCT على الأقل من سجلّ شهادات الشفافية اللتين كانتا
Qualified
أوUsable
أوReadOnly
في وقت التحقّق - من بين شهادات SCT التي تستوفي المتطلّب 1، يجب أن يتم إصدار شهادتَي SCT على الأقل من مشغّلي سجلّات CT المختلفين كما يقرّ بذلك نظام التشغيل Android.
- من بين شهادات SCT التي تستوفي الشرط 1، يجب أن يتم إصدار شهادة SCT واحدة على الأقل من سجلّ CT معترف به من قِبل Android على أنّه متوافق مع RFC6962.
بالنسبة إلى كلّ من شهادات SCT المضمّنة وتلك التي يتم تسليمها باستخدام بروتوكول حالة الشهادة على الإنترنت (OCSP) أو بروتوكول أمان طبقة النقل (TLS)، يتم تعريف تفرد "مشغّل السجلّ" على أنّه يحتوي على إدخالات منفصلة ضمن قسم "المشغّلون" في log_list.json.
في الحالة النادرة التي يغيّر فيها سجلّ CT عوامل التشغيل خلال فترة نشاطه،
تحتوي سجلّات CT اختياريًا على قائمة previous_operators
، مصحوبةً بعلامة توقيت نهائية تم تشغيل هذا السجلّ من قِبل عامل التشغيل السابق.
لمنع تغييرات عامل تسجيل السجلّ من إيقاف عمل الشهادات الحالية، يتم تحديد عامل تسجيل كل سجلّ SCT على أنّه العامل في وقت إصدار SCT، وذلك من خلال مقارنة الطابع الزمني لسجلّ SCT بالطوابع الزمنية previous_operators
،
إذا كانت متوفّرة.
ملاحظات مهمة
طالما أنّ أحد معايير الامتثال لشهادة الاعتماد السابقة يتم استيفاؤه من خلال بعض تركيبات شهادات SCT المقدَّمة في عملية المصافحة، لن تؤثّر شهادات SCT الإضافية، بغض النظر عن حالة شهادة SCT، في حالة امتثال الشهادة لشهادة الاعتماد بشكل إيجابي أو سلبي.
للمساهمة في امتثال الشهادة لشهادة الاعتماد، يجب أن يكون قد تم إصدار ملف SCT
قبل الطابع الزمني Retired
للسجلّ، في حال توفّر هذا الطابع.
يستخدم Android أقدم علامة SCT من بين جميع علامات SCT المقدَّمة لتقييم امتثال CT
باستخدام الطوابع الزمنية لسجلّ CT Retired
.
ويُعدّ ذلك حلاً للحالات القصوى التي يصبح فيها سجلّ CT متقاعدًا أثناء
عملية إرسال طلبات تسجيل الشهادة.
"شهادة SCT المضمّنة" تعني شهادة SCT يتم تسليمها باستخدام إضافة SignedCertificateTimestampList
X.509v3 ضمن الشهادة نفسها. لا تتوافق العديد من خوادم بروتوكول أمان طبقة النقل (TLS) مع ميزة "تثبيت شهادة OCSP" أو إضافة بروتوكول TLS، لذا يجب أن تكون مراجع التصديق مستعدّة لتضمين سجلّات SCT في الشهادات الصادرة لضمان نجاح عملية التحقّق أو معالجة بروتوكول EV في Android.
كيفية إضافة سجلّات CT إلى Android
يمكن العثور على معايير كيفية تحويل سجلات CT إلى Qualified
، بالإضافة إلى
الظروف التي يمكن أن تؤدي إلى تحويلها إلى Retired
، في سياسة سجلّات Chrome CT.
مهلة فرض سياسة "المحتوى غير القابل للتقديم أو الإيقاف"
تنشر Google يوميًا قائمة جديدة بسجلّات CT تحتوي على
log_list_timestamp
جديدة. ستحاول أجهزة Android تنزيل
أحدث إصدار من هذه القائمة مرة واحدة في اليوم لأغراض التحقّق. في أي وقت، إذا لم تكن هناك
قائمة سجلّات متوفّرة على الجهاز أو إذا كان الطابع الزمني لقائمة السجلّات أقدم
من 70 يومًا، سيتم إيقاف فرض ميزة "التشفير من جهة العميل".
يقدّم هذا المهلة ضمانًا مهمًا لمنظومة CT المتكاملة بأنّه يمكن لـ "سجلّات CT" الجديدة
الانتقال بأمان إلى الحالة "صالحة" خلال فترة زمنية ثابتة بعد
أن تصبح Qualified
.