डिजिटल क्रेडेंशियल के बारे में खास जानकारी

डिजिटल क्रेडेंशियल, क्रिप्टोग्राफ़ी के ज़रिए पुष्टि किए जा सकने वाले दस्तावेज़ होते हैं. इनका इस्तेमाल, किसी उपयोगकर्ता की पुष्टि करने, अनुमति देने या अन्य जानकारी देने के लिए किया जा सकता है. आम तौर पर, इनमें मोबाइल ड्राइविंग लाइसेंस, डिजिटल पासपोर्ट, बोर्डिंग पास वगैरह शामिल होते हैं. ये डिजिटल वॉलेट नाम के वर्चुअल कंटेनर में मौजूद होते हैं. साथ ही, ये W3C स्टैंडर्ड का हिस्सा होते हैं. इस स्टैंडर्ड में, इन्हें ऐक्सेस और वापस पाने का तरीका बताया गया होता है. यह स्टैंडर्ड, वेब के इस्तेमाल के उदाहरणों के लिए W3C क्रेडेंशियल मैनेजमेंट एपीआई के साथ और Android पर, Credential Manager के DigitalCredential API के साथ लागू किया गया है.

डिजिटल क्रेडेंशियल के बारे में जानकारी

असल दुनिया में, कोई व्यक्ति अपने वॉलेट में अपनी पहचान की जानकारी रख सकता है और अनुरोध करने वाले पक्ष से पूछे जाने पर उसे दिखा सकता है:

वॉलेट के सामान्य इंटरैक्शन का फ़्लो दिखाने वाली इमेज
पहली इमेज. फ़िज़िकल दस्तावेज़ के लिए किए गए अनुरोध को पूरा करने की प्रोसेस. अनुरोध करने वाला व्यक्ति, उपयोगकर्ता से कोई खास क्रेडेंशियल मांगता है. इसके बाद, उपयोगकर्ता अपने फ़िज़िकल वॉलेट से कार्ड को चुनता है और उसे वापस लेता है. आखिर में, उपयोगकर्ता अनुरोध करने वाले व्यक्ति को क्रेडेंशियल देता है.

इस मामले में, आम तौर पर उपयोगकर्ता के पास एक ही वॉलेट होता है. साथ ही, अनुरोध करने वाले व्यक्ति को दिखाने के लिए, वॉलेट से अनुरोध किए गए क्रेडेंशियल वापस पाता है. ज़्यादातर मामलों में, एक वॉलेट का इस्तेमाल दूसरे वॉलेट के लिए किया जा सकता है. साथ ही, आम तौर पर एक ही तरह की जानकारी को दोनों में सेव किया जा सकता है.

डिजिटल क्रेडेंशियल में कुछ मुख्य अंतर होते हैं:

  1. उपयोगकर्ताओं के पास कई वॉलेट हो सकते हैं, जिनमें अलग-अलग क्रेडेंशियल हो सकते हैं. Wallet यह तय करते हैं कि उनके अंदर कौनसे क्रेडेंशियल सेव किए जा सकते हैं.
  2. अनुरोध करने वाला व्यक्ति अब कोई असल व्यक्ति नहीं है, बल्कि एक ऐप्लिकेशन है. इसे पुष्टि करने वाला कहा जाता है.
  3. क्रेडेंशियल दिखाने की प्रोसेस, सॉफ़्टवेयर में होती है. इसका मतलब है कि एपीआई प्लैटफ़ॉर्म, क्रेडेंशियल को वापस लाता है और उन्हें दिखाता है. Android में, इसे क्रेडेंशियल मैनेजर कहा जाता है.

इसलिए, क्रेडेंशियल मैनेजर कई ऐसी भूमिकाएं निभाता है जो पहले उपयोगकर्ता के पास थीं:

  1. Android पर, Wallet को अपने क्रेडेंशियल के मेटाडेटा को Credential Manager के साथ रजिस्टर करना होगा, ताकि उन्हें Credential Manager के यूज़र इंटरफ़ेस (यूआई) में शामिल किया जा सके.
  2. क्रेडेंशियल मैनेजर, अनुरोध के आधार पर सभी वॉलेट में मौजूद क्रेडेंशियल से मैच करता है और उपयोगकर्ता को चुनने के लिए एक सूची दिखाता है.
  3. जब उपयोगकर्ता सूची में से कोई क्रेडेंशियल चुनता है, तो क्रेडेंशियल मैनेजर, वॉलेट को चालू करता है. इसके बाद, वॉलेट लेन-देन के बाकी हिस्से को मैनेज करता है. जैसे, यूज़र इंटरफ़ेस (यूआई) दिखाना वगैरह. साथ ही, वह क्रेडेंशियल को ऐप्लिकेशन को वापस कर देता है.

यह फ़्लो यहां दिखाया गया है:

डिजिटल क्रेडेंशियल के इंटरैक्शन का फ़्लो दिखाने वाली इमेज
दूसरी इमेज. डिजिटल क्रेडेंशियल की पुष्टि करने के लिए इंटरैक्शन मॉडल. क्रेडेंशियल मैनेजर, पुष्टि करने वाले व्यक्ति के अनुरोध से मैच करने के लिए, उपयोगकर्ता के सभी वॉलेट में पहले से रजिस्टर किए गए क्रेडेंशियल के मेटाडेटा का इस्तेमाल करता है. साथ ही, उपयोगकर्ता को कोई क्रेडेंशियल चुनने के लिए कहता है. इसके बाद, क्रेडेंशियल मैनेजर, गतिविधि के फ़्लो को उस वॉलेट पर भेजता है जो बाकी ट्रांज़ैक्शन को मैनेज करता है. साथ ही, पुष्टि करने वाले को क्रेडेंशियल वापस कर देता है. ध्यान दें: पुष्टि करने वाले को क्रेडेंशियल का जवाब मिलने के बाद, उसे मैनेज करना होगा और उसकी पुष्टि करनी होगी.

उपयोगकर्ता अनुभव

Android फ़्लो में दिखाए गए तरीके के मुताबिक, उपयोगकर्ता को सही क्रेडेंशियल चुनने के लिए, Credential Manager के यूज़र इंटरफ़ेस (यूआई) से सिर्फ़ एक बार इंटरैक्ट करना होगा. यहां एक उदाहरण दिया गया है, जिसमें दिखाया गया है कि सिलेक्टर कैसा दिखता है:

क्रेडेंशियल मैनेजर में डिजिटल क्रेडेंशियल का यूज़र इंटरफ़ेस (यूआई) दिखाने वाली इमेज
तीसरी इमेज. डिजिटल क्रेडेंशियल का यूज़र इंटरफ़ेस (यूआई).

स्टैंडर्ड

डिजिटल क्रेडेंशियल के अनुरोध, OpenID4VP स्टैंडर्ड का इस्तेमाल करके बनाए जाते हैं. अनुरोधों के उदाहरण देखने के लिए, डिजिटल क्रेडेंशियल की डेमो साइट पर जाएं.

डिजिटल क्रेडेंशियल के जवाब, आम तौर पर क्रेडेंशियल के स्टैंडर्ड फ़ॉर्मैट में दिखाए जाते हैं. इनका रखरखाव अलग-अलग स्टैंडर्ड बॉडी करते हैं. इनमें W3C Verifiable Credentials, sd-jwt, और mdoc शामिल हैं.

कस्टम प्रोटोकॉल का इस्तेमाल भी किया जा सकता है. हालांकि, हमारा सुझाव है कि आप अपने ऐप्लिकेशन में किसी स्टैंडर्ड प्रोटोकॉल का इस्तेमाल करें.

इसे आज़माएं

Android वॉलेट और वेब-आधारित पुष्टि करने वाले टूल की मदद से, अलग-अलग प्लैटफ़ॉर्म पर डिजिटल क्रेडेंशियल फ़्लो की जांच की जा सकती है:

  1. अपने Android फ़ोन पर CMWallet का सार्वजनिक सैंपल इंस्टॉल करें. इसके लिए, रीपॉज़िटरी से खींचकर सीधे Android Studio से इंस्टॉल करें या app-debug.apk फ़ाइल का नया वर्शन ऐक्सेस करने के लिए, https://github.com/digitalcredentialsdev/CMWallet/actions पर जाएं और नया बिल्ड चुनें.
  2. क्रेडेंशियल मैनेजर में मेटाडेटा रजिस्टर करने के लिए, CMWallet खोलें. पक्का करें कि आपके डिवाइस एक-दूसरे से कनेक्ट हो सकें, इसके लिए ब्लूटूथ चालू हो.
  3. https://digital-credentials.dev/ पर जाएं और Request Credentials (OpenID4VP) को चुनें.
  4. चेतावनी वाले प्रॉम्प्ट स्वीकार करें और अपने फ़ोन से क्यूआर कोड को स्कैन करें. इसके बाद, "पासकी का इस्तेमाल करें" को चुनें और उपलब्ध क्रेडेंशियल दिखाने के लिए, पुष्टि करने के लिए टैप करें.
  5. ब्राउज़र पर वापस जाने के लिए, CMWallet से क्रेडेंशियल चुनें. ब्राउज़र में, वापस मिला क्रेडेंशियल दिखना चाहिए.

यह भी देखें: