نظرة عامة

يتم تنظيم واجهة Digital Credentials Provisioning API حسب ثلاثة نماذج موارد رئيسية:

المرجع الوصف
الجهاز يشير إلى نسخة فريدة من جهاز فعلي ومفتاح هوية.
التدقيق عملية إثبات هوية المستخدم قبل إصدار بيانات اعتماد.
بيانات الاعتماد المركز نفسه

بصفتك جهة إصدار، تكون مسؤولاً عن إنشاء هذه الموارد وإدارتها طوال دورة حياة المستند الرقمي.

الفرضيّات

تستند هذه الواجهة بشكل أساسي إلى استخدام الجهاز واجهة برمجة التطبيقات Android Identity Credential API لتخزين المستندات الرقمية المحدّدة بموجب ISO/IEC 18013-5.

نماذج الموارد

الجهاز

في نموذج Digital Credentials Provisioning API، لا يمثّل الجهاز ببساطة جهازًا يعمل بنظام التشغيل Android ويدير فيه المستخدم مستندات التعريف الرقمية باستخدام تطبيق "محفظة Google"، بل يمثّل مزيجًا مما يلي:

  • الجهاز الفعلي الذي يعمل بنظام التشغيل Android
  • زوج مفتاح عام/خاص (يُشار إليه باسم "مفتاح الهوية")
    • يستخدم جهة الإصدار المفتاح العام للتحقّق من هوية الجهاز.
    • يتم تخزين المفتاح الخاص في مساحة التخزين الآمنة بالجهاز.

عند إجراء طلبات إلى واجهة برمجة التطبيقات، يتم تحديد مجموعة من الأجهزة وبيانات الاعتماد من خلال رقم تعريف مرجعي للجهاز (السمة deviceReferenceId).

في المرة الأولى التي يتواصل فيها الجهاز مع جهة إصدار، يتم منحه رقمًا عشوائيًا فريدًا (لمنع هجمات إعادة الإرسال وضمان الحداثة). يتم توقيع الرقم العشوائي لمرة واحدة باستخدام مفتاح هوية الجهاز وتضمينه في الشهادة التي تحتوي على مفتاح الهوية. من الآن فصاعدًا، يمكن استخدام الشهادة للتحقّق من الجهاز مع جهة الإصدار.

لمزيد من المعلومات حول الشهادة، يُرجى الاطّلاع على مستندات IdentityCredential Android.

إذا كنت تصمّم هذا المورد كجدول قاعدة بيانات، سيبدو مشابهًا لما يلي. يُرجى العِلم أنّ السمة identityKey ستكون قيمة المفتاح العام.

مثال على جدول قاعدة بيانات لمورد جهاز

التدقيق

تمثّل عملية التدقيق مزيجًا مما يلي:

  • المستندات التي يقدّمها المستخدم لإثبات هويته
  • القرار الذي اتّخذه جهة الإصدار استنادًا إلى المستندات المقدَّمة

تختلف عملية إثبات الهوية حسب نوع بيانات الاعتماد التي يطلبها المستخدم. عند إعداد مستند تعريف رقمي، يقدّم المستخدم صورًا لمستند التعريف المادي وفيديو لملفه الشخصي. تستخدم Google الفيديو لحساب احتمال أن يكون الشخص الظاهر فيه حقيقيًا. يُشار إلى النتيجة التي تقدّمها Google إلى جهات إصدار المستندات باسم "نتيجة التحقّق من النشاط". ستتم إضافة طرق إثبات هوية إضافية عند توفير أنواع جديدة من المستندات.

يتم إدراج الحالات المحتملة لعملية التدقيق في الجدول التالي.

الحالة الوصف الحالة النهائية
في انتظار الموافقة لم تتّخذ جهة الإصدار قرارًا بعد. لا
عدد الرسائل المقبولة قرّرت جهة إصدار البطاقة أنّ الدليل مقبول. لا
تم الرفض قرّرت جهة الإصدار أنّ الدليل غير مرضٍ. نعم*
التحدّي يحتاج المصدر إلى مزيد من المعلومات لاتخاذ قرار. لا
تم الإلغاء ألغى المستخدم عملية إثبات الملكية. نعم
تم إبطاله ألغت جهة الإصدار عملية إثبات الهوية. نعم*
انتهت الصلاحية لم يُكمل المستخدم التحدّي في الوقت المحدّد. نعم

قد تكون الحالات التي تحمل علامة نجمة (*) غير نهائية في الحالات التي يرتكب فيها مراجع بشري خطأ ويعدّل الحالة يدويًا.

يوضّح مخطط الحالة التالي تدفّقات الحالة المحتملة:

في بعض الحالات، قد لا يتمكّن الجهات المصدرة من اتّخاذ قرار استنادًا إلى الأدلة الأولية. للمساعدة في اتخاذ القرار، يمكن أن يُطلب من المستخدمين تقديم معلومات أو أدلة إضافية إلى جهة الإصدار. تشمل أمثلة التحديات الردّ على الرسائل البريدية أو الانتقال إلى موقع إلكتروني تابع لجهة إصدار المستند أو إرسال مستندات إضافية.

إذا كنت تصمّم هذا المورد كجدول قاعدة بيانات، سيبدو مشابهًا لما يلي.

مثال على جدول قاعدة بيانات لمصدر تدقيق

بيانات الاعتماد

تمثّل بيانات الاعتماد النسخة الافتراضية من مستند التعريف لجهاز معيّن. في كل مرة يتم فيها توفير مستند تعريف افتراضي لجهاز فعلي، يتم تخصيص رقم تعريف له. إذا تم توفير بيانات الاعتماد المادية نفسها لأجهزة مختلفة، سيكون لها معرّف بيانات اعتماد مختلف في كل مرة. وبالمثل، إذا تم توفير بيانات اعتماد لجهاز، ثم حذفها، ثم توفيرها مرة أخرى للجهاز نفسه، سيكون لها معرّف بيانات اعتماد مختلف.

عند تغيير تفاصيل بيانات اعتماد المستخدم (مثل تغيير العنوان في مستند تعريف الهوية)، يجب تعديل هذه التفاصيل في أي بيانات اعتماد افتراضية مرتبطة. يمكن أن يكون لبيانات الاعتماد إصدارات مختلفة تتوافق مع هذه التغييرات. يتم تتبُّع الإصدار الحالي باستخدام معرّف إصدار بيانات الاعتماد.

لعرض مستند تعريف على جهة معتمدة، يجب أن يسترد الجهاز أولاً عناصر أمان الأجهزة الجوّالة (MSO) من الجهة المصدرة. يحتوي مستند MSO على ملخّصات لبيانات الاعتماد التي وقّع عليها جهة الإصدار. يتم إنشاء MSO من مفتاح مصادقة، وهو مفتاح عام يتم إنشاؤه وتوقيعه بواسطة مفتاح تعريف الجهاز. يربط مفتاح المصادقة جهاز MSO بالجهاز بشكل فعّال. ويثبت الجمع بين MSO وشهادة الاعتماد للأطراف المعتمِدة أنّ شهادة الاعتماد صادرة عن جهة الإصدار.

بعد توفير بيانات اعتماد على جهاز، يجب أن يرسل الجهاز كائن ProofOfProvisioning إلى جهة إصدار بيانات الاعتماد. يُعلم هذا الإشعار جهة الإصدار بأنّه تم توفير المستند بنجاح على الجهاز وتخزينه في مساحة التخزين الآمنة بالجهاز.

يمكن أن تكون بيانات الاعتماد بالحالات التالية:

الحالة الوصف
ProvisionPending

تم إصدار مستند التعريف إلى "محفظة Google"، ولكن لم يتم إرجاع إثبات التوفير إلى جهة الإصدار. يتم نقل بيانات الاعتماد إلى هذه الحالة في أي وقت يتغير فيه رقم تعريف إصدار بيانات الاعتماد.

لن يتم إصدار أي بيانات اعتماد متعددة المواقع لهذا المستند.

نشِط

تم إرسال بيانات الاعتماد إلى "محفظة Google"، وتم إرجاع إثبات عملية التوفير إلى الجهة المصدرة.

تتوفر MSO لبيانات الاعتماد.

تم إبطاله

أبطَلت جهة الإصدار المستند نهائيًا.

لن يتم إصدار أي بيانات اعتماد متعددة المواقع لهذا المستند.

لن تعرض "محفظة Google" مستند تعريف في هذه الحالة.

محذوف

حذف المستخدم أو "محفظة Google" بيانات الاعتماد من الجهاز نهائيًا

لن يتم إصدار أي بيانات اعتماد متعددة المواقع لهذا المستند.

لن تعرض "محفظة Google" مستند تعريف في هذه الحالة.

يوضّح مخطط الحالة التالي تدفّقات الحالة المحتملة:

إذا كنت تصمّم هذا المورد كجدول قاعدة بيانات، سيبدو مشابهًا لما يلي.

مثال على جدول قاعدة بيانات لمورد بيانات اعتماد