पब्लिश करने की तारीख: 8 जुलाई, 2026, पिछली बार अपडेट करने की तारीख: 5 अक्टूबर, 2026
साइन-अप, साइन-इन, सदस्यता लेने, चेकआउट करने, खाता वापस पाने या किसी अन्य प्रोसेस के दौरान ईमेल पता इकट्ठा करते समय, यह पुष्टि करना आम बात है कि ईमेल पता डालने वाले व्यक्ति के पास उसका मालिकाना हक है. पुष्टि करने के मौजूदा तरीकों में, उपयोगकर्ता को आपकी साइट से बाहर जाना पड़ता है. जैसे, एक बार इस्तेमाल होने वाले पासवर्ड (ओटीपी) या ईमेल पते की पुष्टि करने वाले लिंक (मैजिक लिंक). इस मुश्किल प्रोसेस की वजह से, उपयोगकर्ता (चाहे वह कोई इंसान हो या एजेंट) अपना सेशन पूरी तरह से बंद कर सकता है. साथ ही, वह कभी भी पुष्टि करने की प्रोसेस पूरी नहीं कर पाएगा.
ईमेल की पुष्टि करने वाला एपीआई एक ऐसा सुझाव है जिससे ब्राउज़र, ईमेल की सेवा देने वाली कंपनी से सीधे तौर पर संपर्क कर सकता है. इससे यह पुष्टि की जा सकती है कि ईमेल पता उपयोगकर्ता का है. उपयोगकर्ता, ब्राउज़र की ऑटोमैटिक भरने की सुविधा या अपने-आप पूरा होने वाला सुझाव से कोई ईमेल चुनते हैं. इसके बाद, फ़ॉर्म सबमिट करते हैं. इसके बाद, साइट, ईमेल भेजने या उपयोगकर्ता के फ़्लो में रुकावट डाले बिना, ईमेल पते की पुष्टि करती है.
उपयोगकर्ता के सफ़र में, ईमेल इकट्ठा करना एक अहम कन्वर्ज़न पॉइंट होता है. Chrome को इस प्रस्ताव पर उन साइटों से सुझाव, शिकायत या राय चाहिए जो ईमेल की पुष्टि करना चाहती हैं, ईमेल की पुष्टि करने की सुविधा देने वाली कंपनियों से, और इस प्रोसेस का इस्तेमाल करने वाले लोगों से. आज ही ऑरिजिन ट्रायल के लिए साइन अप करें. साथ ही, लागू करने से जुड़े निर्देशों को यहां देखें. ओरिजिन ट्रायल को कॉन्फ़िगर करने के बारे में सामान्य जानकारी के लिए, ओरिजिन ट्रायल का इस्तेमाल शुरू करना लेख पढ़ें.
डेमो खाते से इस फ़्लो को आज़माया जा सकता है:
- इश्यू करने वाले का डेमो आपको एक नकली ईमेल खाता और सेशन देता है
- पुष्टि करने वाले व्यक्ति का डेमो, पुष्टि करने की प्रोसेस में शामिल किसी भी सेवा देने वाली कंपनी की पुष्टि करेगा
ईमेल पते की पुष्टि करने का फ़्लो
यहां दिए गए सेक्शन में बताया गया है कि ईमेल की पुष्टि करने की प्रोसेस शुरू करने के लिए, आपको और आपके उपयोगकर्ताओं को क्या करना होगा. साथ ही, ईमेल की पुष्टि करने के प्रोटोकॉल का इस्तेमाल करते समय, पूरी प्रोसेस के बारे में भी बताया गया है.
मुख्य शब्द
Email Verification API के लिए मुख्य शब्द यहां दिए गए हैं:
- पुष्टि करने वाली साइट: यह वह साइट होती है जो ईमेल पता इकट्ठा करती है और उसकी पुष्टि करना चाहती है. पुष्टि करने वाले को भरोसेमंद पक्ष भी कहा जाता है.
- ईमेल सेवा देने वाली कंपनी: यह वह कंपनी होती है जो उपयोगकर्ता को ईमेल पता देती है. उदाहरण के लिए,
gmail.com. - जारी करने वाला: वह सेवा जो उपयोगकर्ता के ईमेल खाते को मैनेज करती है. उदाहरण के लिए,
accounts.google.com. आईडी जारी करने वाली कंपनी को पहचान की पुष्टि करने वाली कंपनी भी कहा जाता है.
कुछ मामलों में, ईमेल सेवा देने वाली कंपनी और क्रेडिट कार्ड जारी करने वाली कंपनी एक ही डोमेन से काम कर सकती हैं. हालांकि, ईमेल पते का होना और उससे जुड़े खाते के लिए चालू सेशन का होना, दोनों अलग-अलग बातें हैं.
ज़रूरी शर्तें
- उपयोगकर्ता को उसी ब्राउज़र प्रोफ़ाइल पर, ईमेल सेवा देने वाली कंपनी या जारी करने वाली कंपनी के खाते में साइन इन करना होगा. उदाहरण के लिए, अगर वे Gmail का इस्तेमाल करते हैं, तो उन्हें अपने Google खाते में साइन इन करना होगा.
- पुष्टि करने वाली साइट के तौर पर, आपको ऑरिजिन ट्रायल के लिए साइन अप करना होगा. साथ ही, ईमेल फ़ॉर्म वाले पेज पर ही टोकन देना होगा.
उपयोगकर्ता को ऑटोमैटिक भरने या अपने-आप पूरा होने वाले ड्रॉप-डाउन से अपना ईमेल पता चुनना होगा.
- अगर उपयोगकर्ता ने फ़ील्ड में पहले कोई ईमेल पता डाला है, तो उसे ऑटोकंप्लीट की सुविधा का इस्तेमाल करके दिखाया जाएगा.
अगर उपयोगकर्ता ने Chrome की सेटिंग "ऑटोमैटिक भरने की सुविधा और पासवर्ड" (
chrome://settings/autofill) का इस्तेमाल करके अपना ईमेल पता जोड़ा है, तो उसे ऑटोमैटिक भरने की सुविधा का इस्तेमाल करने का विकल्प मिलेगा.
जब कोई उपयोगकर्ता पहली बार पुष्टि के लिए ईमेल पता देता है, तो उसे अनुमति देने के लिए एक प्रॉम्प्ट दिखेगा. ऐसा हर ईमेल पते के लिए सिर्फ़ एक बार होता है.
जब उपयोगकर्ता के ब्राउज़र में वह सेशन चालू हो, तब वह यह प्रोसेस शुरू कर सकता है:
- ईमेल फ़ील्ड वाले फ़ॉर्म पर, उपयोगकर्ता अपने ईमेल पते को अपने-आप भरने वाले ड्रॉप-डाउन से चुनता है. पुष्टि करने वाली साइट, फ़ॉर्म में एक छिपा हुआ फ़ील्ड उपलब्ध कराती है. इसमें हर इंस्टेंस के लिए एक नॉनस होता है, ताकि इस अनुरोध की पुष्टि की जा सके.
इसके बाद, ब्राउज़र ईमेल डोमेन के लिए, ईमेल पते की पुष्टि करने वाला डीएनएस रिकॉर्ड वापस लाएगा. इससे ब्राउज़र को जारी करने वाले व्यक्ति या कंपनी के बारे में पता चलता है. इसके बाद, कार्ड जारी करने वाली कंपनी पुष्टि करेगी कि उस ईमेल पते के लिए, उसका सेशन चालू है.
इसके बाद, जारी करने वाला व्यक्ति या कंपनी, पते के लिए ईमेल पते की पुष्टि करने वाला टोकन (ईवीटी) उपलब्ध कराएगी. ब्राउज़र, इसे ईवीटी, साइट के ऑरिजिन, और इनपुट फ़ॉर्म से मिले नॉनस के साथ बाउंड किए गए JWT में जोड़ता है.
फ़ॉर्म सबमिट करने पर, ईवीटी पैकेज को छिपे हुए फ़ील्ड में जोड़ दिया जाता है. इसके बाद, इसे साइट पर भेज दिया जाता है.
इसके बाद, पुष्टि करने वाली साइट इन सभी जानकारी की पुष्टि करती है: अनुमानित ईमेल पता, नॉन्स, और ब्राउज़र और जारी करने वाली कंपनी के हस्ताक्षर.
उपयोगकर्ता को एक छोटी सूचना दिखती है. इसमें बताया जाता है कि ईमेल सेवा देने वाली कंपनी ने उसके पते की पुष्टि कर दी है.
इस प्रोसेस से, पुष्टि करने वाली साइट को यह पुष्टि मिलती है कि ईमेल पता मान्य है और मौजूदा उपयोगकर्ता का है. इसका मतलब है कि साइट, पुष्टि करने वाला ईमेल भेजने की प्रोसेस को छोड़ सकती है.
उपयोगकर्ता, पुष्टि किए गए ईमेल पतों को सेटिंग > ऑटोमैटिक भरने की सुविधा और पासवर्ड > संपर्क जानकारी > पुष्टि किया गया ईमेल पता में जाकर मैनेज कर सकते हैं. इसके अलावा, वे chrome://settings/contactInfo खोलकर भी ऐसा कर सकते हैं.
इस्तेमाल के उदाहरणों से जुड़ी बातें
ईमेल पते की पुष्टि करने की सुविधा, आपके मौजूदा फ़्लो को बेहतर बनाने के लिए उपलब्ध है. इससे उपयोगकर्ता को ओटीपी पाने या लिंक पर क्लिक करने के लिए, आपकी साइट छोड़ने की ज़रूरत नहीं पड़ती. साइटें, ईमेल पते की पुष्टि करने वाले फ़ील्ड को सभी ज़रूरी फ़ॉर्म में जोड़ सकती हैं. जैसे, लॉगिन, न्यूज़लेटर के लिए साइन अप, खाता बनाना, और पासवर्ड वापस पाना. EVP सिर्फ़ तब ट्रिगर होता है, जब ब्राउज़र इसे सपोर्ट करता हो. अगर सबमिट करने पर कोई कोड नहीं मिलता है या पुष्टि करने के किसी भी चरण में समस्या आती है, तो ईमेल की पुष्टि करने के लिए, डिफ़ॉल्ट तरीके का इस्तेमाल किया जा सकता है. इसका यह भी मतलब है कि एपीआई के लिए, सुविधा का पता लगाने की कोई सुविधा नहीं है. पुष्टि करने वाली साइट, ईवीटी को वैकल्पिक मानती है. अगर यह अनुरोध में मौजूद है, तो इसे प्रोसेस किया जाता है.
ईमेल पते की पुष्टि करने से यह पता चलता है कि उपयोगकर्ता का ईमेल पता देने वाली कंपनी के साथ उसका सेशन चालू है. इससे यह पुष्टि नहीं होती कि आपका ईमेल उपयोगकर्ता तक पहुंच गया है. ऐसा हो सकता है कि आपको अब भी वेलकम या ऑनबोर्डिंग वाले ईमेल भेजने हों. साथ ही, आपको उपयोगकर्ता को स्पैम सेटिंग देखने के लिए कहना हो.
पुष्टि करने वाली साइट को लागू करना
ज़्यादा जानकारी के लिए, एंड-टू-एंड डेमो कोड देखें. साथ ही, Email Verification API और Email Verification Protocol के सुझावों में, पुष्टि करने के चरणों के बारे में जानें.
फ़ॉर्म फ़ील्ड कॉन्फ़िगर करना
पक्का करें कि आपके फ़ॉर्म फ़ील्ड में सही एट्रिब्यूट हों:
<input
name="email-address"
type="email"
autocomplete="email">
<input
type="hidden"
name="token"
nonce="rAnD0m-VaLuE"
autocomplete="email-verification-token">
email इनपुट के type और autocomplete एट्रिब्यूट को email पर सेट करें, ताकि ब्राउज़र ईमेल पते के लिए ऑटोकंप्लीट की सुविधा दे सके.
फ़ॉर्म सबमिट करने पर, नए hidden फ़ील्ड में ईमेल पते की पुष्टि करने वाला टोकन भर जाएगा. ये एट्रिब्यूट ज़रूरी हैं:
type="hidden"को सेट करें, क्योंकि इस फ़ील्ड में उपयोगकर्ता के इनपुट की ज़रूरत नहीं होती.nonce="rAnD0m-VaLuE"सेट करें. साइट को सेशन से जुड़ा यूनीक नॉनस देना होगा, ताकि फ़ॉर्म सबमिट करने की पुष्टि की जा सके.autocomplete="email-verification-token"सेट करें. ब्राउज़र इस एट्रिब्यूट का इस्तेमाल करके, उस फ़ील्ड की पहचान करता है जिसमें जानकारी भरनी है.
DevTools में नेटवर्क पैनल की जांच करके, अपने फ़ॉर्म एलिमेंट की पुष्टि करें. जब कोई ईमेल पता चुना जाता है, तब ब्राउज़र, ईमेल पते के लिए डीएनएस और खाते की जानकारी ढूंढने से जुड़ी क्वेरी को ट्रिगर करता है. ये क्वेरी, ईमेल पते के प्रोवाइडर और जारी करने वाले के लिए होती हैं. ये ब्राउज़र के इंटरनल अनुरोध हैं. फ़ॉर्म सबमिट होने तक, आपकी साइट को कुछ भी नहीं मिलता.
ईवीटी की पुष्टि करना
ईवीटी पैकेज के हर कॉम्पोनेंट की पुष्टि करने के लिए, पांच चरण होते हैं.
- टोकन को पार्स करें.
- अनुमानित वैल्यू की पुष्टि करें.
- कुंजी बाइंडिंग की पुष्टि करें.
- डीएनएस रिकॉर्ड की पुष्टि करें.
- आईडी जारी करने वाले का पता लगाएं और ईवीटी के हस्ताक्षर की पुष्टि करें.
1. टोकन पार्स करना
फ़ॉर्म सबमिट करने से मिले रॉ डेटा में, EVT और हस्ताक्षर किए गए दावे शामिल होते हैं. ये Selective Disclosure JSON Web Token (SD-JWT+KB) में होते हैं और इन्हें टिल्ड (~ वर्ण) से अलग किया जाता है. आपको इन्हें अलग करना होगा. साथ ही, Javascript Object Signing and Encryption (JOSE) हेडर और पेलोड को डिकोड करना होगा. उदाहरण के लिए, Node.js के लिए jose का इस्तेमाल करके.
अगर example.com, demo@gmail.com की पुष्टि करता है, तो डिकोड किया गया पेलोड इस उदाहरण की तरह दिखता है:
{
"evtJwtDecodedPayload": {
"cnf": {
"jwk": {
"crv": "Ed25519",
"kty": "OKP",
"x": "pUbLiCkEy123pUbLiCkEy123pUbLiCkEy123"
}
},
"email": "demo@gmail.com",
"email_verified": true,
"iat": 1782911685,
"iss": "https://accounts.google.com"
},
"kbJwtDecodedPayload": {
"aud": "https://example.com",
"iat": 1782911685,
"nonce": "rAnDoM123rAnDoM123rAnDoM123rAnDoM123",
"sd_hash": "hAsH456hAsH456hAsH456hAsH456hAsH456"
}
}
2. अनुमानित वैल्यू की पुष्टि करना
देखें कि पेलोड में दी गई बुनियादी वैल्यू, आपकी दी गई वैल्यू से मेल खाती हों:
- पुष्टि करें कि
email_verifiedकोtrueपर सेट किया गया हो. - पुष्टि करें कि
email, आपके फ़ॉर्म में दिए गए ईमेल पते से मेल खाता हो. - पुष्टि करें कि
nonce, आपके फ़ॉर्म में दिए गए नॉनस से मेल खाता हो. - पुष्टि करें कि
audआपकी साइट के ऑरिजिन से मेल खाता हो. - पुष्टि करें कि
iatका टाइमस्टैंप हाल ही का हो. उदाहरण के लिए, फ़ॉर्म रेंडर होने के बाद का.
3. कुंजी बाइंडिंग की पुष्टि करना
ब्राउज़र, लेन-देन के लिए एक अस्थायी और कुछ समय के लिए मान्य कुंजी बनाता है, ताकि यह पुष्टि की जा सके कि उसने टोकन पर हस्ताक्षर किया है. इस कुंजी को EVT में मौजूद cnf (पुष्टि) दावे से निकालें. इसके बाद, इसका इस्तेमाल कुंजी से बंधे JWT की पुष्टि करने के लिए करें.
इसके बाद, अनुमानित हैश का हिसाब लगाएं और इसकी तुलना sd_hash दावे से करें. नीचे दिए गए Node.js के उदाहरण में, इस कैलकुलेशन को करने का तरीका बताया गया है:
const calculatedHash = createHash("sha256")
.update(evtJwt + "~")
.digest("base64url");
4. डीएनएस रिकॉर्ड की पुष्टि करना
ईमेल पते के डोमेन के लिए, _email-verification डीएनएस रिकॉर्ड की पुष्टि करें. उदाहरण के लिए, demo@gmail.com के लिए, _email-verification.gmail.com TXT रिकॉर्ड के लिए क्वेरी करें. इस सेवा देने वाली कंपनी के लिए क्वेरी, खाते की लोकेशन दिखाती है. यह लोकेशन accounts.google.com है.
$ dig +short TXT _email-verification.gmail.com
"iss=accounts.google.com"
5. कार्ड जारी करने वाले बैंक या कंपनी का पता लगाना और ईवीटी के हस्ताक्षर की पुष्टि करना
पक्का करें कि जारी करने वाला व्यक्ति, /.well-known/email-verification संसाधन उपलब्ध कराता हो. यह संसाधन, टोकन जारी करने के लिए एंडपॉइंट, साइट के लिए JSON वेब कुंजी (JWK), और हस्ताक्षर करने के लिए इस्तेमाल किए जा सकने वाले एल्गोरिदम उपलब्ध कराता है.
$ curl https://accounts.google.com/.well-known/email-verification
{
"issuance_endpoint": "https://accounts.google.com/gsi/email-verification/issue",
"jwks_uri": "https://verifiablecredentials-pa.googleapis.com/.well-known/vc-public-jwks",
"signing_alg_values_supported": ["EdDSA"]
}
टोकन से निकाले गए EVT JWT की पुष्टि करने के लिए, JWK का इस्तेमाल करें. ज़्यादातर JOSE लाइब्रेरी, इस पुष्टि को मैनेज करने के लिए फ़ंक्शन उपलब्ध कराती हैं.
अगर पांचों चरण पूरे हो जाते हैं, तो इसका मतलब है कि आपने ईमेल पते की पुष्टि कर ली है. अगर ऐसा नहीं होता है, तो उपयोगकर्ता को पुष्टि करने वाला ईमेल भेजें. इसके लिए, अपने सामान्य फ़्लो का इस्तेमाल करें.
ईमेल सेवा देने वाली कंपनी और जारी करने वाली कंपनी की सेवा लागू करना
ज़्यादा जानकारी के लिए, नकली ईमेल पते की पुष्टि करने वाली सेवा का डेमो कोड देखें. साथ ही, Email Verification API और Email Verification Protocol के सुझावों में, ईमेल पते की पुष्टि करने वाले के लिए दिए गए चरण देखें.
कार्ड जारी करने वाली कंपनी के तौर पर, आपको ओरिजिन ट्रायल के लिए साइन अप करने या टोकन देने की ज़रूरत नहीं है. ऐसा इसलिए, क्योंकि ब्राउज़र का व्यवहार, भरोसा करने वाली पार्टी की साइट से ट्रिगर होता है. आपको बस यह पक्का करना होगा कि उन अनुरोधों का जवाब देने के लिए, ज़रूरी एंडपॉइंट मौजूद हों.
कार्ड जारी करने वाली कंपनी को खोजने की सुविधा कॉन्फ़िगर करना
जब आपके डोमेन से जुड़ा कोई ईमेल पता चुना जाता है, तब ब्राउज़र को पुष्टि करने वाले आपके एंडपॉइंट अपने-आप ढूंढने की अनुमति देने के लिए, डीएनएस और .well-known एचटीटीपी एंडपॉइंट का इस्तेमाल करके अपना कॉन्फ़िगरेशन दिखाएं.
डीएनएस डेलिगेट रिकॉर्ड कॉन्फ़िगर करना
अपने ईमेल डोमेन पर एक डीएनएस TXT रिकॉर्ड कॉन्फ़िगर करें. यह रिकॉर्ड, पुष्टि करने का अधिकार आपके जारी करने वाले आइडेंटिफ़ायर को सौंपता है. आपके इंफ़्रास्ट्रक्चर के आधार पर, ये आइडेंटिफ़ायर एक ही डोमेन का इस्तेमाल कर सकते हैं.
रिकॉर्ड फ़ॉर्मैट: _email-verification.<email-domain>
ज़ोन फ़ाइल का उदाहरण:
_email-verification.example.com IN TXT "iss=accounts.issuer.example"
.well-known/email-verification एंडपॉइंट होस्ट करना
अपने जारीकर्ता डोमेन पर, /.well-known/ पाथ के तहत JSON मेटाडेटा फ़ाइल होस्ट करें.
इस फ़ाइल में, कार्ड जारी करने की आपकी क्षमताओं और आपके बुनियादी ढांचे के साथ काम करने वाले क्रिप्टोग्राफ़िक हस्ताक्षर एल्गोरिदम के बारे में बताया गया है.
एंडपॉइंट: https://<issuer-domain>/.well-known/email-verification
जवाब का उदाहरण:
{
"issuance_endpoint": "https://accounts.issuer.example/email-verification/issuance",
"jwks_uri": "https://accounts.issuer.example/.well-known/vc-public-jwks",
"signing_alg_values_supported": ["EdDSA", "ES256"]
}
.well-known/web-identity एंडपॉइंट होस्ट करना
एक अतिरिक्त .well-known JSON संसाधन, जिसे आपने Federated Credentials (FedCM) API के हिस्से के तौर पर पहले ही लागू कर दिया हो.
इससे आपको अपने खातों के एंडपॉइंट और लॉगिन यूआरएल के लिंक मिलते हैं.
एंडपॉइंट: https://<domain>/.well-known/web-identity
जवाब का उदाहरण:
{
"accounts_endpoint": "https://accounts.issuer.example/accounts",
"login_url": "https://accounts.issuer.example/login"
}
खातों के एंडपॉइंट का इस्तेमाल करना
FedCM API का accounts एंडपॉइंट, फ़िलहाल साइन इन किए गए खातों की सूची दिखाता है. यहां कम से कम जानकारी वाले जवाब का उदाहरण दिया गया है. ज़्यादा जानकारी के लिए, पहचान की पुष्टि करने वाली सेवा को लागू करने से जुड़ी गाइड देखें.
एंडपॉइंट: .well-known/web-identity में बताया गया है
यहां जवाब का एक उदाहरण दिया गया है:
{
"accounts": [
{
"id": "demo-example",
"name": "Demo User",
"email": "demo@example.com",
"given_name": "Demo"
}
]
}
Login Status API के साथ इंटिग्रेट करना
उपयोगकर्ता का सेशन, सेवा देने वाली कंपनी के साथ चालू होना चाहिए. साथ ही, आपको लॉगिन स्टेटस एपीआई की मदद से, ब्राउज़र को यह सिग्नल देना होगा.
जब कोई उपयोगकर्ता साइन इन या साइन आउट कर लेता है, तो उससे मिलता-जुलता एचटीटीपी रिस्पॉन्स हेडर दिखाएं:
Set-Login: logged-in
Set-Login: logged-out
इसके अलावा, अपने वेब ऐप्लिकेशन के कॉन्टेक्स्ट में JavaScript का इस्तेमाल करके स्टेटस अपडेट करें:
navigator.login.setStatus("logged-in");
navigator.login.setStatus("logged-out");
सर्टिफ़िकेट जारी करने के अनुरोधों को मैनेज करना
आपके issuance_endpoint को application/x-www-form-urlencoded POST का अनुरोध मिलता है. इसमें request_token शामिल होता है.
यहां दिए गए सेक्शन में, पास जारी करने के अनुरोधों को मैनेज करने की पूरी प्रोसेस बताई गई है.
1. डिजिटल क्रेडेंशियल जारी करने के अनुरोध की पुष्टि करना
आने वाले ब्राउज़र पेलोड को पार्स और पुष्टि करें:
- तरीका:
POST - सेशन की पुष्टि करना: उपयोगकर्ता के पहले-पक्ष की
session/authenticationकुकी की पुष्टि करें. ये कुकी, अनुरोध के साथ ट्रांसमिट की जाती हैं. इससे यह पक्का किया जा सकता है कि पहचान से जुड़ा कोई मान्य कॉन्टेक्स्ट मौजूद है. - पैरामीटर की पुष्टि करना:
request_tokenपैरामीटर (ब्राउज़र से जनरेट किया गया हस्ताक्षर वाला JWT) निकालें. पुष्टि करें कि इसमें अनुमानित इफ़ेमरल सार्वजनिक पासकोड, टारगेट ईमेल, सही ऑडियंस, और मान्य टाइमस्टैंप शामिल हो.
डिकोड किया गया टोकन कुछ ऐसा दिखना चाहिए:
{
"decodedHeader": {
"alg": "ES256",
"typ": "JWT",
"jwk": {
"kty": "EC",
"crv": "P-256",
"x": "pUbLiCKeY123pUbLiCKeY123pUbLiCKeY123",
"y": "pUbLiCKeY456pUbLiCKeY456pUbLiCKeY456"
}
},
"decodedPayload": {
"iss": "https://accounts.issuer.example",
"sub": "demo@example.com",
"email": "demo@example.com",
"iat": 1780272000,
"exp": 1780272300
},
"signature": "SIGnatURE-123_SIGnatURE-123_SIGnatURE-123"
}
2. टोकन से जवाब देना
सेशन और अनुरोध टोकन की पुष्टि हो जाने के बाद, पेलोड का इस्तेमाल करके साइन किया गया Selective Disclosure JWT (SD-JWT) जनरेट करें:
{
"iss": "https://accounts.issuer.example",
"iat": 1780272000,
"exp": 1780272300,
"cnf": {
"jwk": {
"kty": "EC",
"crv": "P-256",
"x": "pUbLiCKeY123pUbLiCKeY123pUbLiCKeY123",
"y": "pUbLiCKeY456pUbLiCKeY456pUbLiCKeY456"
}
},
"email": "demo@example.com",
"email_verified": true
}
अपने निजी पासकोड और काम करने वाले एल्गोरिदम का इस्तेमाल करके पेलोड पर साइन करें. उदाहरण के लिए, Node.js में jose का इस्तेमाल करना:
const evtJwt = await new SignJWT(evtPayload)
.setProtectedHeader({
alg: "EdDSA",
kid: PRIVATE_KEY_JWK.kid, // Key ID corresponding to our JWKS keys
typ: "evt+jwt", // Standard Token Type for EVTs
})
.sign(privateKey);
// Standard SD-JWT compatibility requires appending a trailing tilde "~"
// to separate the signed token from the key binding section.
const issuanceToken = `${evtJwt}~`;
सफलता मिलने पर मिले रिस्पॉन्स का उदाहरण (एचटीटीपी 200):
{
"issuance_token": "tOkEn123tOkEn123tOkEn123...~"
}
ऑरिजिन ट्रायल से जुड़ी ज़रूरी बातें
ऑरिजिन ट्रायल, एक्सपेरिमेंट होते हैं. इनका मकसद लोगों से सुझाव/राय पाना होता है. इसलिए, अगर आप रिलाइंग पार्टी या आइडेंटिटी प्रोवाइडर के तौर पर हिस्सा लेते हैं, तो आपका सुझाव/राय बहुत अहम होती है. समस्याओं की शिकायत करने के लिए, इन GitHub रिपॉज़िटरी का इस्तेमाल करें:
- Browser Email Verification API: WICG/email-verification
- ईमेल पते की पुष्टि करने का प्रोटोकॉल: dickhardt/email-verification
अगर आपको Chrome में लागू करने के दौरान गड़बड़ियां मिलती हैं, तो इस कॉम्पोनेंट के ख़िलाफ़ गड़बड़ी की शिकायत करें:
ओरिजनल ट्रायल की सुविधा को चालू करने की प्रोसेस, हर जवाब के हिसाब से कंट्रोल की जाती है. इसके लिए, आपको ओटी टोकन शामिल करना होगा. इसका मतलब है कि अगर आपको कुछ उपयोगकर्ताओं के लिए इस सुविधा को सीमित करना है, तो आपके पास इस पर पूरा कंट्रोल होता है. उदाहरण के लिए, अगर आपके पास पहले से ही A/B टेस्टिंग फ़्रेमवर्क है, तो कंट्रोल किए गए एक्सपेरिमेंट की आबादी के लिए, ओरिजिन ट्रायल को इंटिग्रेट किया जा सकता है. इसके अलावा, अगर आपके पास उपयोगकर्ताओं का बीटा टेस्टिंग या रिलीज़ से पहले आज़माने वाला ग्रुप है, तो हो सकता है कि आपको उनके लिए यह सुविधा चालू करनी पड़े. इस मामले में, टोकन जारी करने या उसकी पुष्टि करने से पहले, दिए गए ईमेल पते की जांच करें.
ऑरिजिन ट्रायल में ट्रैफ़िक की सीमाएं भी होती हैं, ताकि लॉन्च से पहले इस सुविधा पर भरोसा करने वाली साइटों की संख्या कम हो. इश्यू करने वाले का एपीआई अभी डेवलपमेंट के चरण में है. इसलिए, आपको Chrome के यूज़र एक्सपीरियंस में अपडेट के साथ-साथ, पुराने वर्शन के साथ काम न करने वाले बदलावों की उम्मीद करनी चाहिए.
हम डेवलपमेंट से जुड़े अन्य अपडेट, यहां ब्लॉग पर और evp-announce@chromium.org ईमेल पते पर भेजेंगे.