التحدث بالمعايير المفتوحة: OpenID4VCI وOpenID4VP واعتمادات SD-JWT
تزداد قيمة الاعتماد حين تستطيع أي محفظة رقمية مبنية وفق مواصفات مفتوحة قراءته. بنى إصدارنا في أغسطس الأساس الذي يتيح لـ Essence إصدار الاعتمادات والتحقّق منها عبر OpenID4VCI وOpenID4VP.
تزداد قيمة الشهادة الجامعية أو التسجيل المهني أو إثبات العمر حين يمكن وضعها في أي محفظة رقمية تتبع القواعد نفسها، وحين يمكن لأي جهة تتحدث بهذه القواعد أن تتحقّق منها. أما الاعتماد الذي لا يستطيع قراءته إلا نظام واحد فهو طريق مسدود للشخص الذي يحمله.
ولهذا بنى إصدارنا في أغسطس الأساس الذي يتيح لـ Essence أن تتحدث بعائلة مواصفات الاعتمادات من OpenID.
ثلاث مواصفات وصيغة واحدة
كانت لدى Essence بالفعل منظومة اعتمادات مبنية على معايير W3C: المعرّفات اللامركزية، وإصدار الاعتمادات القابلة للتحقّق والتحقّق منها مع قوائم الحالة، وتبادل العروض، ومراسلة DIDComm. ويجري بناء كثير من المحافظ الرقمية وفق عائلة OpenID، ودعمها هو الطريقة التي ستتمكن بها Essence من الإصدار إلى محافظ رقمية بناها آخرون، والاستلام منها، والتحقّق مقابلها.
يشمل العمل ثلاث مواصفات:
- OpenID4VCI، لإصدار اعتماد إلى محفظة رقمية؛
- OpenID4VP، لطلب أن تقدّم محفظة رقمية اعتمادًا؛
- HAIP 1.0، وهو ملف تعريف يضيّق الخيارات في كلتيهما للاستخدام عالي الضمان.
وأول صيغة اعتماد نعمل على بنائها هي SD-JWT VC. وهي تتيح للشخص الذي يحمل الاعتماد أن يكشف بعض مطالباته ويحجب الباقي، بحيث يمكن تلبية كل طلب بالمطالبات التي يحتاجها فقط.
ما بناه إصدارنا في أغسطس
الجزء الأول هو نموذج جهة الإصدار:
- إعدادات الاعتمادات، مع اشتقاق البيانات الوصفية المنشورة لجهة الإصدار من الإعدادات التي نشرتها الجهة فعلًا، وليس أبدًا من ملف ثابت؛
- عروض اعتمادات تستخدم رموزًا لمرة واحدة، مع فحص لرمز المعاملة يسمح بعدد محدود من المحاولات؛
- سجلات إصدار تحتفظ بالبيانات الوصفية فقط، وليس أبدًا بمحتوى الاعتماد؛
- إلغاء يصل إلى كل نسخة من الاعتماد في وقت واحد؛
- محو يزيل الرابط بالشخص مع بقاء حالة إلغاء الاعتماد.
وفي الإصدار نفسه، ربط جزء ثانٍ الخدمة الجديدة بفحوص الاستحقاق والتدقيق في المنصة. فإذا لم تتمكن المنصة من تأكيد أن الجهة مستحقة للإصدار، بما في ذلك أثناء انقطاع مطوّل، يرفض الإصدار بشكل سليم بدلًا من أن يفشل بخطأ. ولا تحمل أحداث التدقيق التي ينتجها الإصدار أي معرّف للشخص الذي يخصّه الاعتماد.
وقد بدأ العمل على جانب حامل الاعتماد في تطبيقاتنا على الويب والهاتف المحمول: استلام عرض اعتماد والاستجابة لطلب تقديم.
بيانات وصفية لا تَعِد إلا بما هو موجود
تقرأ البرمجيات المكتوبة وفق هذه المواصفات البيانات الوصفية المنشورة لجهة الإصدار وتتصرف بناءً عليها. فإذا أعلنت البيانات الوصفية عن شيء لا تقوم به الخدمة، فسيحاول العميل الملتزم استخدامه ويفشل.
لذلك نتعامل مع البيانات الوصفية المنشورة على أنها وعد. لا يُعلَن عن طريقة تقديم إلا بعد أن تصبح القدرة موجودة وتنجح اختبارات المطابقة الخاصة بها. وتتبع البيانات الوصفية لجهة الإصدار القاعدة نفسها: تُستبعد منها أي صيغة اعتماد لا تصدرها المنصة.
خيارات اتُّخذت من أجل الشخص
بعض القرارات تتعلق بالشخص صاحب الاعتماد أكثر مما تتعلق بالبروتوكول.
يُخفي الكشف الانتقائي المطالبات، لكن توقيع الاعتماد يكون هو نفسه في كل مرة يُعرض فيها، لذا يمكن لجهتي تحقّق تقارنان ملاحظاتهما أن تربطا عرضًا بآخر. لذلك صُمّمت الاعتمادات لتُصدر في دفعات من نسخ لمرة واحدة، تُعرض كل منها مرة واحدة، حتى لا تتمكن جهات التحقّق من إجراء هذا الربط.
كما تحصل كل نسخة على موضعها الخاص في قائمة الإلغاء، يُختار عشوائيًا لا بالتسلسل، حتى لا تكشف المواضع المتجاورة أي النسخ تنتمي إلى بعضها.
التقدّم مسجّل
نحتفظ بخرائط بندًا ببند للمواصفات الثلاث بجانب الشيفرة، تصنّف كل بند على أنه مشمول بالاختبارات أو مخطّط له أو غير منطبق. وهذه الخرائط هي طريقتنا في متابعة عملنا نحو المطابقة مع OpenID Foundation.
إذا كنت تصدر اعتمادات، بصفتك جامعة أو هيئة مهنية أو سلطة عامة، فالهدف هو أن ما تصدره عبر Essence يمكن أن يوضع في أي محفظة رقمية مبنية وفق هذه المواصفات. وإذا كنت تعتمد على الاعتمادات، فالهدف هو أن تتمكن من طلب المطالبات التي تحتاجها بالضبط. إذا كانت الاعتمادات القابلة للتشغيل البيني جزءًا من خططك، فيسعدنا أن نتحدث معك.
تاريخ النشر 18 أغسطس 2026
