فريق GoPlausible على Algorand يتبرّع بمحلّل DID عالمي لهيئة المعايير DIF
بنى GoPlausible خدمة thisDID، وهي محلّل عالمي يحوّل أي معرّف لامركزي من W3C إلى مستند واحد مطابق للمعايير، ثم تبرّع بها لـ Decentralized Identity Foundation. وبذلك تحصل did:algo و did:nfd على نقطة عبور أولى أصلية على Algorand. الخدمة تعمل بالفعل، لكن الزيارات متواضعة.
في منتصف مايو، لجأت Decentralized Identity Foundation1 (DIF) — الهيئة القطاعية التي تتعاون فيها الشركات والمشاريع على معايير الهوية اللامركزية — إلى نشرتها الإخبارية لتطرح احتمالاً غير مريح: أن يكون Universal Resolver، خدمتها المرجعية المشتركة التي تحوّل المعرّفات اللامركزية إلى مستندات تستطيع التطبيقات التحقق منها، في طريقه إلى الإيقاف، «إلا إذا اتضح أن أعضاءنا يحتاجونه فعلاً». ومنذ ذلك الحين، جاء الجواب على هذا السؤال عبر إعادة بناء. فقد وجّه حساب DIF نفسه القرّاء إلى thisDID2 — «يتعامل مع الطرق المدعومة مباشرة ويحوّل بقية الطلبات إلى محلّلات معروفة» — ويقول ملف README الخاص بالمشروع صراحةً إنه بُني وتبرّع به إلى DIF فريق GoPlausible3، وهي بنية هويته الخاصة قائمة على Algorand.
تبرّع يتجاوز حدود الأعمال التنظيمية داخل هيئات المعايير. فالمحلّل العالمي هو البنية التحتية التي تتيح لأي تطبيق يتحقق من بيانات الاعتماد أن يقبل معرّفات مرسّاة في أي مكان — نطاق أو بلوك تشين أو خدمة أسماء — من دون أن يدمج كل مصدر على حدة. وAlgorand ليست متفرجاً في هذا: فـ did:algo و did:nfd من بين المدخلات البارزة في المحلّل.
نقطة وصول واحدة لكل أشكال الهوية
معرّف DID سلسلة نصية حدّدتها W3C، الهيئة الرئيسية المعنية بمعايير الويب: did:web:example.com، وdid:key:z6Mk...، وdid:algo:uti7paas... وكل معرّف منها يُحلّ إلى مستند DID، وهو سجل قابل للقراءة آلياً يضم المفاتيح العامة ونقاط نهاية الخدمات — المادة الخام للتحقق من التوقيعات ومن بيانات الاعتماد القابلة للتحقق، تلك الشهادات الموقّعة رقمياً. ويحدّد مقطع «الطريقة» مكان وجود المعرّف وكيفية جلب ذلك المستند، وقد كان على أي تطبيق يرغب في قبول معرّفات DID من عدة منظومات أن يوصّل منطق التحليل الخاص بكل طريقة بمفرده.
يختصر thisDID هذا الجهد كله في نداء HTTP واحد. وتعلن صفحته الرئيسية دعم «704+» طريقة — بينما تضم قائمته المنشورة 68 — تُحلّ 24 منها داخل الخدمة عبر برامج تشغيل TypeScript معزولة تعمل عند الحافة على شبكة Cloudflare، أي حوسبة موزّعة على مراكز بيانات قريبة من المستخدمين (425 منطقة بحسب إحصاء الموقع)، فيما تُمرَّر الطرق الأقل شيوعاً إلى مصدر أعلى. وتُوحَّد كل استجابة في مستند واحد مطابق لمعايير W3C يحمل بيانات وصفية موقّعة لعملية التحليل. وتنفّذ واجهة البرمجة ارتباط HTTP الخاص بـ Universal Resolver الصادر عن DIF — وهو شكل عنوان متفق عليه، GET /1.0/identifiers/{did}، تعرف أي واجهة عميل مطابقة كيف تناديه؛ والمثال الوارد في الوثائق هو did:web:identity.foundation. وإلى جانبه تأتي خدمات الاكتشاف والسلامة والتحليلات وتغذية مباشرة لعمليات التحليل، إضافة إلى نقطة نهاية /mcp تنفّذ بروتوكول Model Context Protocol، المعيار المفتوح لتوصيل الأدوات بوكلاء الذكاء الاصطناعي — إذ يستطيع وكيل أن يحلّ معرّفات DID في خضمّ سير عمله من دون وصلات مخصّصة.
داخل محرّك التوجيه
يصف شعار الموقع، «المحلّل العالمي الذي يفكّر قبل أن يوجّه»، مساراً من أربع خطوات: تحليل المعرّف وتصنيفه؛ ثم موازنة زمن الاستجابة والثقة وحداثة البيانات في محرّك قواعد؛ ثم الإرسال إلى برنامج التشغيل المطابق، وأحياناً إلى عدة برامج بالتوازي حين يفيد ذلك؛ وأخيراً إعادة النتيجة الموقّعة والموحّدة.
| المفهوم | الأثر على أرض الواقع |
|---|---|
| GoPlausible — عامل تشغيل أصلي على Algorand؛ نقطة العبور الأولى لـ did:algo و did:nfd، مع godiddy و archon كبدائل احتياطية | معرّفات Algorand تُحلّ عبر برنامج تشغيل متخصص لا عبر مصدر عام |
| Godiddy6 (Danube Tech) — خدمة Universal Resolver مستضافة وواجهة تسجيل | يستوعب معظم الطرق التي تحتاج إلى برنامج تشغيل من مصدر أعلى |
| Archon7 — يشغّل برنامجي التشغيل iden3 و did:cid | نقطة العبور الأولى لطريقة iden3 لهوية المعرفة الصفرية من Polygon؛ والملاذ الأخير في ما عداها |
تُطلَق برامج التشغيل الجديدة وفق ما يسمّيه ملف README ضمان التحقق: فحيثما أمكن لمصدر أعلى مستقل تحليل الطريقة نفسها، يُعاد التحقق من كل عملية تحليل بالتوازي إلى أن يبلغ برنامج التشغيل معدل تطابق مباشر يؤهّله للاعتماد، أما الطرق التي لا يخدمها أي مصدر أعلى فتُوسم بأنها غير متحقَّق منها. وتُظهر التغذية العامة النتيجتين معاً — معرّف did:cheqd حُلّ محلياً مع وسم التحقق المتقاطع بـ«مطابق»، وعملية تحليل did:ebsi وُسمت بـ«غير مطابق». ويعمل عامل فحص منفصل على إجراء عمليات تحليل إنذارية مقابل كل مسار كل خمس دقائق؛ وفي 31 أغسطس أدرجت صفحة الحالة جميع المزوّدين في حالة تشغيل، بمعدلات نجاح تراوحت بين 0.997 و1.0.
بوابة الدخول إلى Algorand
يحلّ did:algo المعرّفات على السلسلة الخاصة بـ Algorand، وتُظهر التغذية المباشرة أنه يتعامل مع الأصول كما يتعامل مع الحسابات: فالمعرّفات المبنية على نمط did:algo:mainnet:asa حُلّت بنجاح طوال نافذة القياس، بما فيها معرّف الأصل الذي يقف خلف USDC8، العملة المستقرة المرتبطة بالدولار. أما did:nfd فيحوّل أسماء من NFDomains، خدمة الأسماء .algo على Algorand التي تربط أسماء مقروءة بشرياً بعناوين السلسلة، إلى مستندات هوية.
عند اختبارها في 31 أغسطس، حُلّ المعرّف المثال الوارد في وثائق واجهة البرمجة — did:algo:uti7paas...، وهو عنوان Algorand كامل — في 332 ميلي ثانية عبر مصدر GoPlausible، كما حُلّ معرّف أصل USDC في 400 ميلي ثانية. وهذا العنوان المثال ليس اعتباطياً: فهو حساب الإيداع الذي يقف خلف الاسم goplausible.algo المسجّل في يونيو 2023، والذي يحمل 1,544.13 ALGO و40,283.56 USDC موزّعة على 197 أصلاً. لقد حلّ الباني هويته هو أولاً.
وثمة نقطة خشنة واحدة: مثال did:nfd البارز على الموقع، أي did:nfd:thisdid.algo، يعيد خطأ 404، ولا وجود لهذا الاسم في دليل NFD. أي إن اسم العرض الخاص بالخدمة نفسها لا يُحلّ.
قراءة المقاييس بأمانة
تزعم الصفحة الرئيسية أن وسيط زمن التحليل أقل من 200 ميلي ثانية وأن نسبة الجهوزية العالمية 99.98%. وتدعم لقطة تحليلات النطاق اليومي نصف هذا الادعاء: فقد بلغ متوسط برامج التشغيل الداخلية لـ thisDID العاملة داخل العامل 198 ميلي ثانية، لكن المسارات الأعلى كانت أبطأ — 477 ميلي ثانية عبر GoPlausible، و488 عبر godiddy، و1,471 عبر archon — ما دفع المتوسط الإجمالي إلى نحو 700 ميلي ثانية. والوسيط والمتوسط يقيسان شيئين مختلفين، لذا يصف الادعاء المسار المحلي السريع لا الخدمة كاملة. وقد استحوذ GoPlausible على أكبر حصة موجَّهة في اللقطة نفسها، بـ179 عملية تحليل.
ومعدلات النجاح تحتاج إلى تفكيك مماثل. فلوحة المعلومات تفيد بـ253 عملية تحليل ناجحة من 285 (88.8%)، بينما تفيد نقطة نهاية JSON الأساسية بـ248 من 280 (88.6%) — أي اختلاف طفيف بين الواجهتين، كما تعرض اللوحة إشعار إعداد يقول «مساحة تخزين التحليلات غير مربوطة بعد» إلى جانب أرقامها. ثم إن معظم الإخفاقات ليست سوى أخطاء notFound: معرّفات DID لا وجود لها أصلاً، مثل معرّفات did:web الخاصة بموقع تذكاري ألماني تتصدّر تغذية الأخطاء المباشرة. والمحلّل الذي يبلّغ بأمانة عن معرّف غائب ليس محلّلاً فاشلاً.
الزيارات حقيقية لكنها متواضعة. يُظهر الخط الزمني للنطاق اليومي بين 1 و39 عملية تحليل في اليوم خلال الأسابيع الثلاثة الأولى من يوليو، بذروة بلغت 39 في 7 يوليو. أما استعلام نطاق أطول فيروي قصة أغرب: 59,4689 طلباً في 14 أغسطس وحده، 33,262 منها notFound — وهو نمط مسح آلي — مع توزّع جغرافي تتصدّره الولايات المتحدة (52,379) والنمسا (15,385). والتحليلات خشنة عمداً، بلا عناوين IP ولا ملفات تعريف ارتباط ولا سوى جغرافية على مستوى الدولة، والنطاقات نفسها تتصرف بغرابة: فالخط الزمني للقطة «اليوم» يمتد من 1 يوليو إلى 21 يوليو.
تبرّع مصحوب باختبار
الكود موجود داخل تنظيم GitHub الخاص بـ DIF نفسه تحت اسم decentralized-identity/thisdid10، برخصة Apache-2.0 المتسامحة، وآخر دفعة كانت في 28 أغسطس مع commit يحدّث البحث حول «مرشّحي طرق الموجة السادسة» — مزيد من الطرق في الطريق. والزخم ضعيف حتى الآن: للمستودع نجمة واحدة، وأكثر المساهمين إسهاماً، emg110، لديه 73 مساهمة. وقد وصفت نشرة DIF لشهر يونيو «إعادة تجديد شاملة لنسخة DIF من Universal Resolver» وسمّت did:webvh و did:webplus كطريقتين موصى بهما؛ مع الإشارة إلى تحديث إضافي في أغسطس.
وما سيحدث لاحقاً يتوقف على المتغيّر الذي حدّدته DIF بنفسها في مايو: ما إذا كان الأعضاء سيمرّرون زيارات حقيقية عبر الخدمة. فالبنية التحتية تعمل ويمكن مراقبتها — فحوص حالة، وتغذية عامة، وواجهة برمجة مفتوحة — وصارت لهويات Algorand الآن مسار مسمّى ومرسّى في المعايير للدخول إليها. وبالنسبة إلى فريق حلّ حساب نفسه أولاً، فإن المحطة التالية هي معرّف شخص آخر.
المصدر
- thisDID2
- decentralized-identity/thisdid على GitHub10
- DIF Newsletter #6211
- GoPlausible3
- ThisDID · DIF Universal DID Resolver2
- https://thisdid.com/data12
- https://thisdid.com/recent13
- https://thisdid.com/1.0/identifiers/did:algo:uti7paasilrda3ishy5m7j7lnrx2aivqjwi7zkccgkvlmfd3vpr5pwsz4i14
- https://thisdid.com/status15
- https://thisdid.com/methods16
- https://thisdid.com/1.0/identifiers/did:algo:mainnet:asa:315667041718
- منشور من @identity.foundation — Bluesky19
- DIF Newsletter #6420
- raw.githubusercontent.com21
- ThisDID Directory22
- did:algo — ThisDID Directory23
تم التحقق من 4 أرقام في هذه القصة.عرض كل عمليات التحقق
المصادر
- 1Decentralized Identity Foundation identity.foundation↩
- 2thisDID thisdid.com↩
- 3GoPlausible goplausible.com↩
- 6Godiddy api.godiddy.com↩
- 7Archon resolver.archon.technology↩
- 8USDC centre.io↩
- 10decentralized-identity/thisdid github.com↩
- 11DIF Newsletter #62 blog.identity.foundation↩
- 12thisdid.com/data thisdid.com↩
- 13thisdid.com/recent thisdid.com↩
- 14thisdid.com/1.0/identifiers/did:algo:uti7paasilrda3ishy5m7j7lnrx2aivqjwi7zkccgkvlmfd3vpr5pwsz4i thisdid.com↩
- 15thisdid.com/status thisdid.com↩
- 16thisdid.com/methods thisdid.com↩
- 17thisdid.com/1.0/identifiers/did:algo:mainnet:asa:31566704 thisdid.com↩
- 19منشور من @identity.foundation — Bluesky bsky.app↩
- 20DIF Newsletter #64 blog.identity.foundation↩
- 21raw.githubusercontent.com/decentralized-identity/thisdid/main/README.md raw.githubusercontent.com↩
- 22ThisDID Directory thisdid.com↩
- 23did:algo — ThisDID Directory thisdid.com↩