---
url: 'https://www.corbado.com/hi/blog/webauthn-public-key-credential-hints'
title: 'WebAuthn पब्लिक की क्रेडेंशियल / यूज़र-एजेंट हिंट्स'
description: 'WebAuthn पब्लिक की क्रेडेंशियल हिंट्स / यूज़र-एजेंट हिंट्स, उनकी उपलब्धता, उनका उपयोग कैसे किया जा सकता है, और मौजूदा सीमाओं और सिफारिशों के बारे में जानें।'
lang: 'hi'
author: 'Vincent Delitz'
date: '2025-08-08T11:43:15.040Z'
lastModified: '2026-07-28T06:07:40.449Z'
keywords: 'webauthn पब्लिक की क्रेडेंशियल हिंट, webauthn पब्लिक की क्रेडेंशियल हिंट्स, webauthn यूज़र-एजेंट हिंट, webauthn यूज़र-एजेंट हिंट्स, webauthn हिंट्स, webauthn हिंट, पासकी हिंट, पासकी हिंट्स'
category: 'WebAuthn Know-How'
---

# WebAuthn पब्लिक की क्रेडेंशियल / यूज़र-एजेंट हिंट्स

## 1. परिचय

WebAuthn और पासकीज़ को काफ़ी तेज़ी मिल रही है और इन्हें ज़्यादा से ज़्यादा अपनाया जा रहा
है। साथ ही, तकनीकी दृष्टिकोण से, WebAuthn स्टैंडर्ड भी तेज़ी से विकसित हो रहा है।
**WebAuthn पब्लिक की क्रेडेंशियल हिंट्स (जिन्हें यूज़र-एजेंट हिंट्स भी कहा जाता है)** Web
[Authentication](https://www.corbado.com/hi/faq/when-do-passkeys-expire) API में सबसे नया जुड़ाव है, जिसका
उद्देश्य डेवलपर्स द्वारा अपने ऐप्लिकेशन्स में पासकी ऑथेंटिकेशन को लागू करने के तरीके को
बेहतर बनाना है।

इस लेख में, हम निम्नलिखित सवालों के जवाब देंगे?

- **WebAuthn पब्लिक की क्रेडेंशियल हिंट्स क्या हैं?**
- **आपको WebAuthn पब्लिक की क्रेडेंशियल हिंट्स की आवश्यकता क्यों है?**
- **WebAuthn पब्लिक की क्रेडेंशियल हिंट्स कैसे काम करते हैं?**
- **आपके प्रोजेक्ट्स के लिए WebAuthn पब्लिक की क्रेडेंशियल हिंट्स की सीमाएँ और अनुशंसित
  मामले क्या हैं?**

चलिए सबसे पहले इसकी प्रेरणा को समझते हैं।

## 2. पासकीज़ में क्रेडेंशियल हिंट्स की प्रेरणा

आजकल, ऐसी कई अलग-अलग जगहें हैं जहाँ आप पासकी बना और स्टोर कर सकते हैं:

- थर्ड-पार्टी पासवर्ड मैनेजर (जैसे
  [1Password](https://www.corbado.com/blog/1password-passkeys-best-practices-analysis),
  [Dashlane](https://www.corbado.com/blog/dashlane-passkeys),
  [Bitwarden](https://www.corbado.com/blog/passkey-analysis-bitwarden-developer-survey-2024),
  [KeePassXC](https://www.corbado.com/blog/keepassxc-passkeys))
- [Google Password Manager](https://www.corbado.com/blog/how-to-use-google-password-manager) / Chrome प्रोफ़ाइल
- [iCloud Keychain](https://www.corbado.com/glossary/icloud-keychain) /
  [Apple Passwords](https://www.corbado.com/blog/how-to-use-apple-passwords)
- [Windows Hello](https://www.corbado.com/glossary/windows-hello)
- दूसरा स्मार्टफ़ोन (iOS, [Android](https://www.corbado.com/blog/how-to-enable-passkeys-android)) या टैबलेट
  (iPadOS, [Android](https://www.corbado.com/blog/how-to-enable-passkeys-android))
- हार्डवेयर सिक्योरिटी की (जैसे [YubiKey](https://www.corbado.com/glossary/yubikey))

यूज़र के लिए, यह लचीलापन और चुनने की आज़ादी दे सकता है। हालांकि, कुछ ऐप्लिकेशन्स और
परिदृश्यों में इनमें से कुछ विकल्पों को सीमित करने की आवश्यकता होती है, जैसे कि यदि आप
बढ़ी हुई सुरक्षा आवश्यकताओं के कारण केवल हार्डवेयर सिक्योरिटी कीज़ की अनुमति देना चाहते
हैं।

उस पासकी निर्माण और स्टोरेज को प्रभावित करने के लिए, हमारे पास `authenticatorAttachment`
प्रॉपर्टी थी।

## 3. authenticatorAttachment क्या है?

`authenticatorAttachment` रिलाइंग पार्टीज़ को यह सीमित करने की अनुमति देता है कि पासकी
कहाँ बनाई जा सकती है।

### 3.1 platform

`platform` एक ऐसे ऑथेंटिकेटर को इंगित करता है जो WebAuthn चलाने वाले डिवाइस में ही बना
होता है। WebAuthn इसके साथ उस प्लेटफ़ॉर्म के लिए विशिष्ट ट्रांसपोर्ट विधियों, जैसे कि
प्लेटफ़ॉर्म-विशिष्ट APIs का उपयोग करके संचार करता है। प्लेटफ़ॉर्म ऑथेंटिकेटर से जुड़े
पब्लिक की क्रेडेंशियल को प्लेटफ़ॉर्म क्रेडेंशियल कहा जाता है। ऊपर दी गई सूची से,
निम्नलिखित क्रेडेंशियल मैनेजर / स्थान प्लेटफ़ॉर्म क्रेडेंशियल स्टोर कर सकते हैं:

- थर्ड-पार्टी पासवर्ड मैनेजर (जैसे
  [1Password](https://www.corbado.com/blog/1password-passkeys-best-practices-analysis),
  [Dashlane](https://www.corbado.com/blog/dashlane-passkeys),
  [Bitwarden](https://www.corbado.com/blog/passkey-analysis-bitwarden-developer-survey-2024),
  [KeePassXC](https://www.corbado.com/blog/keepassxc-passkeys))
- [Google Password Manager](https://www.corbado.com/blog/how-to-use-google-password-manager) / Chrome प्रोफ़ाइल
- [iCloud Keychain](https://www.corbado.com/glossary/icloud-keychain) /
  [Apple Passwords](https://www.corbado.com/blog/how-to-use-apple-passwords)
- [Windows Hello](https://www.corbado.com/glossary/windows-hello)

**Windows 11 और Chrome:**

![विंडोज प्लेटफॉर्म](https://www.corbado.com/website-assets/windows_platform_4f37a3c043.png)

macOS 15 (Sequoia) और Chrome:

![macOS क्रोम प्लेटफॉर्म](https://www.corbado.com/website-assets/macos_chrome_platform_1f43ad0ce3.png)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![macOS क्रोम प्लेटफॉर्म कैंसिल](https://www.corbado.com/website-assets/macos_chrome_platform_cancel_fe9ba82f1c.png)

**macOS 15 (Sequoia) और Safari:**

![macOS सफारी प्लेटफॉर्म](https://www.corbado.com/website-assets/macos_safari_platform_3120aa89e3.png)

### 3.2 cross-platform

`cross-platform` एक ऐसे ऑथेंटिकेटर को इंगित करता है जो WebAuthn चलाने वाले डिवाइस के बाहर
होता है (रोमिंग ऑथेंटिकेटर) क्योंकि इसका उपयोग कई डिवाइसों में किया जा सकता है। WebAuthn
इसके साथ ब्लूटूथ या NFC जैसे क्रॉस-प्लेटफ़ॉर्म ट्रांसपोर्ट प्रोटोकॉल का उपयोग करके
इंटरैक्ट करता है। रोमिंग ऑथेंटिकेटर से जुड़े पब्लिक की क्रेडेंशियल को रोमिंग क्रेडेंशियल
कहा जाता है। ऊपर दी गई सूची से, निम्नलिखित क्रेडेंशियल मैनेजर / स्थान क्रॉस-प्लेटफ़ॉर्म
क्रेडेंशियल स्टोर कर सकते हैं:

- दूसरा स्मार्टफ़ोन (iOS, [Android](https://www.corbado.com/blog/how-to-enable-passkeys-android)) या टैबलेट
  (iPadOS, Android)
- हार्डवेयर सिक्योरिटी की (जैसे [YubiKey](https://www.corbado.com/glossary/yubikey))

**Windows 11 और Chrome:**

![विंडोज क्रॉस प्लेटफॉर्म](https://www.corbado.com/website-assets/windows_cross_platform_d9103bdb1b.png)

**macOS 15 (Sequoia) और Chrome:**

![macOS क्रोम क्रॉस प्लेटफॉर्म](https://www.corbado.com/website-assets/macos_chrome_cross_platform_42d0696186.png)

**macOS 15 (Sequoia) और Safari:**

![macOS सफारी क्रॉस प्लेटफॉर्म](https://www.corbado.com/website-assets/macos_safari_cross_platform_bdc76f2bd1.png)

### 3.3 निर्दिष्ट नहीं

**निर्दिष्ट नहीं** यह इंगित करता है कि या तो प्लेटफ़ॉर्म ऑथेंटिकेटर या क्रॉस-प्लेटफ़ॉर्म
ऑथेंटिकेटर का उपयोग किया जा सकता है। यहाँ, यूज़र चुन सकता है कि वे पासकीज़ कहाँ स्टोर करना
चाहेंगे।

**Windows 11 और Chrome:**

![विंडोज निर्दिष्ट नहीं](https://www.corbado.com/website-assets/windows_not_specified_7ac230a492.png)

**macOS 15 (Sequoia) और Chrome:**

![macOS क्रोम निर्दिष्ट नहीं](https://www.corbado.com/website-assets/macos_chrome_not_specified_74d62875f7.png)

**macOS 15 (Sequoia) और Safari:**

![macOS सफारी निर्दिष्ट नहीं](https://www.corbado.com/website-assets/macos_safari_not_specified_c790ff1ca1.png)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![macOS क्रोम निर्दिष्ट नहीं कैंसिल](https://www.corbado.com/website-assets/macos_chrome_not_specified_cancel_a8990296f4.png)

authenticatorAttachment का उपयोग काफी समय से किया जा रहा था। हालाँकि, यह क्रॉस-डिवाइस
ऑथेंटिकेशन (QR कोड और ब्लूटूथ के माध्यम से) जैसे नए विकासों के संबंध में भी अनम्य था।
यहाँ, एक पासकी को [Google Password](https://www.corbado.com/blog/how-to-use-google-password-manager) Manager
(प्लेटफ़ॉर्म क्रेडेंशियल) में भी स्टोर किया जाता है, लेकिन रिलाइंग पार्टी द्वारा
`cross-platform` के साथ ट्रिगर किया जाता है। इसके अलावा, एक रिलाइंग पार्टी का नियंत्रण कि
लॉगिन (रजिस्टर नहीं) समारोह में किस प्रकार की पासकी का उपयोग किया जाना चाहिए, केवल एक
क्रेडेंशियल के `transports` मान को संशोधित करके ही किया जा सकता था।

यहीं पर WebAuthn पब्लिक की क्रेडेंशियल हिंट्स काम आते हैं।

## 4. WebAuthn पब्लिक की क्रेडेंशियल हिंट्स क्या हैं?

WebAuthn पब्लिक की क्रेडेंशियल हिंट्स Web
[Authentication](https://www.corbado.com/hi/faq/when-do-passkeys-expire) API में पेश किया गया एक नया पैरामीटर है
(आधिकारिक तौर पर [WebAuthn लेवल 3](https://www.corbado.com/hi/blog/passkeys-prf-webauthn) में)। वे ब्राउज़रों को
उस प्रकार के ऑथेंटिकेटर के बारे में मार्गदर्शन प्रदान करते हैं जिसका यूज़र ऑथेंटिकेशन
प्रक्रिया के दौरान उपयोग करने की संभावना रखता है। यह ब्राउज़र के UI को सबसे प्रासंगिक
विकल्पों पर केंद्रित करके एक अधिक सुव्यवस्थित और सहज यूज़र अनुभव प्रदान करने में मदद करता
है।

**तीन प्रकार के हिंट्स**

हिंट्स तीन प्रकार के होते हैं:

1. **`security-key`**: यह इंगित करता है कि यूज़र से हार्डवेयर सिक्योरिटी की (जैसे
   [YubiKey](https://www.corbado.com/glossary/yubikey)) का उपयोग करने की उम्मीद है।
2. **`client-device`**: यह सुझाव देता है कि यूज़र क्लाइंट डिवाइस से जुड़े प्लेटफ़ॉर्म
   ऑथेंटिकेटर का उपयोग करेगा (जैसे macOS पर Touch ID,
   [iOS](https://www.corbado.com/blog/how-to-enable-passkeys-ios) पर [Face ID](https://www.corbado.com/faq/is-face-id-passkey) या
   Windows पर [Windows Hello](https://www.corbado.com/glossary/windows-hello))।
3. **`hybrid`**: इसका मतलब है कि यूज़र QR कोड और ब्लूटूथ के माध्यम से क्रॉस-डिवाइस
   ऑथेंटिकेशन के लिए स्मार्टफ़ोन या टैबलेट का उपयोग कर सकता है।

ये हिंट्स रिलाइंग पार्टी की ओर से सख्त आवश्यकताएं नहीं हैं, बल्कि ब्राउज़र को संकेत के रूप
में यूज़र अनुभव को बढ़ाने के लिए मार्गदर्शन का काम करते हैं।

### 4.1 security-key

निम्नलिखित में, आप macOS Sequoia (Edge + Chrome) और Windows 10 (Chrome) के लिए स्क्रीनशॉट
देखते हैं, जिसमें authenticatorAttachment निर्दिष्ट नहीं है और WebAuthn यूज़र-एजेंट हिंट
`security-key` पर सेट है।

#### 4.1.1 macOS Sequoia और Edge

![macOS एज सिक्योरिटी की हिंट](https://www.corbado.com/website-assets/macos_edge_security_key_hint_9c6c4f27eb.png)

#### 4.1.2 macOS Sequoia और Chrome

![macOS क्रोम सिक्योरिटी की हिंट](https://www.corbado.com/website-assets/macos_chrome_security_key_hint_797985e0fe.png)

#### 4.1.3 Windows 10 और Chrome

यहाँ, हम एक और सीमा देखते हैं, कि `security-key` हिंट का सम्मान Windows 10 पर नहीं किया
जाता है, कम से कम सीधे तौर पर तो नहीं। प्रवाह मूल रूप से `client-device` हिंट के समान ही
है।

![विंडोज 10 क्रोम सिक्योरिटी की हिंट 1](https://www.corbado.com/website-assets/windows_10_chrome_security_key_hint_1_683c5a5e43.jpeg)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![विंडोज 10 क्रोम सिक्योरिटी की हिंट 2](https://www.corbado.com/website-assets/windows_10_chrome_security_key_hint_2_e38d86bf60.jpeg)

### 4.2 client-device

निम्नलिखित में, आप macOS Sequoia (Edge + Chrome) और Windows 10 (Chrome) के लिए स्क्रीनशॉट
देखते हैं, जिसमें authenticatorAttachment निर्दिष्ट नहीं है और WebAuthn यूज़र-एजेंट हिंट
`client-device` पर सेट है।

#### 4.2.1 macOS Sequoia और Edge

![macOS एज क्लाइंट डिवाइस हिंट 1](https://www.corbado.com/website-assets/macos_edge_client_device_hint_1_cfbc01e9bf.png)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![macOS एज क्लाइंट डिवाइस हिंट 2](https://www.corbado.com/website-assets/macos_edge_client_device_hint_2_c5770ea67e.png)

#### 4.2.2 macOS Sequoia और Chrome

![macOS क्रोम क्लाइंट डिवाइस हिंट 1](https://www.corbado.com/website-assets/macos_chrome_client_device_hint_1_b2eb3faa3d.png)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![macOS क्रोम क्लाइंट डिवाइस हिंट 2](https://www.corbado.com/website-assets/macos_chrome_client_device_hint_2_0f29636476.png)

#### 4.2.3 Windows 10 और Chrome

![विंडोज 10 क्रोम सिक्योरिटी की हिंट 1](https://www.corbado.com/website-assets/windows_10_chrome_security_key_hint_1_683c5a5e43.jpeg)

कैंसिल पर क्लिक करने पर, निम्नलिखित मॉडल दिखाई देता है:

![विंडोज 10 क्रोम सिक्योरिटी की हिंट 2](https://www.corbado.com/website-assets/windows_10_chrome_security_key_hint_2_e38d86bf60.jpeg)

### 4.3 hybrid

निम्नलिखित में, आप macOS Sequoia (Edge + Chrome) और Windows 10 (Chrome) के लिए स्क्रीनशॉट
देखते हैं, जिसमें authenticatorAttachment निर्दिष्ट नहीं है और WebAuthn यूज़र-एजेंट हिंट
`hybrid` पर सेट है।

#### 4.3.1 macOS Sequoia और Edge

![macOS एज हाइब्रिड हिंट](https://www.corbado.com/website-assets/macos_edge_hybrid_hint_ee60f2a080.png)

#### 4.3.2 macOS Sequoia और Chrome

![macOS क्रोम हाइब्रिड हिंट](https://www.corbado.com/website-assets/macos_chrome_hybrid_hint_99550c23d0.png)

#### 4.3.3 Windows 10 और Chrome

![विंडोज 10 क्रोम हाइब्रिड हिंट](https://www.corbado.com/website-assets/windows_10_chrome_hybrid_hint_41ea4fea2f.jpeg)

## 5. WebAuthn पब्लिक की क्रेडेंशियल हिंट्स कैसे काम करते हैं?

हिंट्स की शुरूआत के साथ, डेवलपर्स अब घटती प्राथमिकता के क्रम में वरीयताओं की एक श्रृंखला
प्रदान कर सकते हैं, जिससे अधिक लचीलापन मिलता है।

### 5.1 सिक्योरिटी-की हिंट के लिए उदाहरण

नीचे दिया गया कोड स्निपेट ब्राउज़र को बताता है कि यूज़र संभवतः हार्डवेयर सिक्योरिटी की का
उपयोग करके ऑथेंटिकेट करेगा, जिससे UI उसी के अनुसार केंद्रित हो जाता है।

पुराने यूज़र एजेंटों के साथ संगतता के लिए, जब इस हिंट का उपयोग
[PublicKeyCredentialCreationOptions](https://www.corbado.com/glossary/publickeycredentialcreationoptions) में
किया जाता है, तो authenticatorAttachment को `cross-platform` पर सेट किया जाना चाहिए।

```javascript
const credential = await navigator.credentials.create({
  publicKey: {
    challenge: /* your challenge here */,
    hints: ['security-key'],
    authenticatorSelection: {
      authenticatorAttachment: 'cross-platform'
    }
  }
});
```

`security` हिंट विशेष रूप से उच्च-आश्वासन वाले मामलों में मूल्यवान है जहाँ वेबसाइट /
रिलाइंग पार्टी केवल हार्डवेयर सिक्योरिटी कीज़ की अनुमति देना चाहती है और यूज़र को इस दिशा
में धकेलती है।

### 5.2 क्लाइंट-डिवाइस हिंट के लिए उदाहरण

इस उदाहरण में, हिंट यह सुझाव देता है कि यूज़र वर्तमान डिवाइस के अंतर्निहित प्लेटफ़ॉर्म
ऑथेंटिकेटर का उपयोग कर सकता है।

पुराने यूज़र एजेंटों के साथ संगतता के लिए, जब इस हिंट का उपयोग
[PublicKeyCredentialCreationOptions](https://www.corbado.com/glossary/publickeycredentialcreationoptions) में
किया जाता है, तो authenticatorAttachment को `platform` पर सेट किया जाना चाहिए।

```javascript
const credential = await navigator.credentials.create({
  publicKey: {
    challenge: /* your challenge here */,
    residentKey: true,
    hints: ['client-device'],
    authenticatorSelection: {
      authenticatorAttachment: 'platform'
    }
  }
});
```

`client-device` हिंट सेट करना फायदेमंद होता है यदि किसी यूज़र खाते से कई पासकीज़ जुड़े हुए
हैं और उनमें से कुछ लॉगिन करने वाले डिवाइस पर उपलब्ध हो सकते हैं, जबकि अन्य अलग-अलग डिवाइस
पर संग्रहीत हैं। यदि सिस्टम
([पासकी इंटेलिजेंस](https://docs.corbado.com/corbado-connect/features/passkey-intelligence))
यह पता लगाता है कि लॉगिन करने का प्रयास करने वाले यूज़र के पास उच्च संभावना के साथ एक
स्थानीय पासकी उपलब्ध है, तो इस हिंट को
[PublicKeyCredentialRequestOptions](https://www.corbado.com/glossary/publickeycredentialrequestoptions) में सेट
किया जा सकता है, जिससे यूज़र को सही पासकी चुनने के लिए एक क्लिक की बचत होती है।

### 5.3 हाइब्रिड हिंट के लिए उदाहरण

इस उदाहरण में, हिंट यह सुझाव देता है कि यूज़र ऑथेंटिकेशन के लिए स्मार्टफ़ोन या इसी तरह के
डिवाइस का उपयोग कर सकता है।

पुराने यूज़र एजेंटों के साथ संगतता के लिए, जब इस हिंट का उपयोग
[PublicKeyCredentialCreationOptions](https://www.corbado.com/glossary/publickeycredentialcreationoptions) में
किया जाता है, तो authenticatorAttachment को `cross-platform` पर सेट किया जाना चाहिए।

```javascript
const credential = await navigator.credentials.create({
  publicKey: {
    challenge: /* your challenge here */,
    residentKey: true,
    hints: ['hybrid'],
    authenticatorSelection: {
      authenticatorAttachment: 'cross-platform'
    }
  }
});
```

`hybrid` हिंट तब मददगार हो सकता है जब यूज़र के पास कई कीज़ हों और सिस्टम
([पासकी इंटेलिजेंस](https://docs.corbado.com/corbado-connect/features/passkey-intelligence))
यह पता लगाता है कि वर्तमान डिवाइस पर शायद कोई स्थानीय पासकी उपलब्ध नहीं है। UX को बेहतर
बनाने और एक क्लिक बचाने के लिए, आप इस WebAuthn यूज़र-एजेंट हिंट को सेट कर सकते हैं और सीधे
यूज़र को क्रॉस-डिवाइस ऑथेंटिकेशन (QR कोड और ब्लूटूथ के माध्यम से) के लिए संकेत दे सकते
हैं। इसके अलावा, यदि आप एक मोबाइल-फर्स्ट पासकी सिस्टम बनाने की कोशिश कर रहे हैं, तो इस
हिंट को सेट करना बहुत मायने रखता है।

विभिन्न विकल्पों के साथ खुद खेलने के लिए, हम
[Passkeys Debugger](https://www.passkeys-debugger.io) पर एक नज़र डालने की सलाह देते हैं।

## 6. प्राथमिकताएँ

यह समझना महत्वपूर्ण है कि WebAuthn पब्लिक की क्रेडेंशियल हिंट्स अन्य WebAuthn पैरामीटर
जैसे authenticatorAttachment और क्रेडेंशियल ट्रांसपोर्ट के साथ कैसे इंटरैक्ट करते हैं।

### 6.1 गैर-बाध्यकारी मार्गदर्शन

सबसे पहले, यह ध्यान रखना महत्वपूर्ण है कि ये **हिंट्स सख्त आवश्यकताएं नहीं हैं**। वे
यूज़र-एजेंट (ब्राउज़र) को बाध्य नहीं करते हैं, बल्कि अनुरोध के बारे में आपके पास मौजूद
प्रासंगिक जानकारी का लाभ उठाकर सर्वोत्तम अनुभव प्रदान करने के लिए मार्गदर्शन का काम करते
हैं। इसका मतलब है कि ब्राउज़र हिंट्स पर विचार करने का विकल्प चुन सकते हैं लेकिन उनका सख्ती
से पालन करने के लिए बाध्य नहीं हैं।

### 6.2 क्रम मायने रखता है

हिंट्स को **घटती वरीयता** के क्रम में एक ऐरे के रूप में प्रदान किया जाता है। यह क्रम
निर्धारित करता है कि ब्राउज़र को उन्हें कैसे प्राथमिकता देनी चाहिए:

- **पहला हिंट प्राथमिकता लेता है**: यदि दो हिंट्स विरोधाभासी हैं, तो ब्राउज़र पहले वाले को
  प्राथमिकता देता है।
- **ओवरलैपिंग हिंट्स**: यदि एक अधिक विशिष्ट हिंट सभी ब्राउज़रों द्वारा पहचाना नहीं जा सकता
  है, तो आप व्यापक संगतता के लिए बाद में कम विशिष्ट हिंट्स शामिल कर सकते हैं।
- **डुप्लिकेट हिंट्स**: यदि एक ही हिंट एक से अधिक बार दिखाई देता है, तो किसी भी बाद की
  उपस्थिति को अनदेखा कर दिया जाता है।

**उदाहरण:**

`hints: ['security-key', 'hybrid', 'client-device']`

इस ऐरे में:

1. ब्राउज़र पहले security-key को प्राथमिकता देता है।
2. यदि लागू नहीं होता है, तो यह hybrid पर विचार करता है।
3. अंत में, यह client-device (क्लाइंट डिवाइस पर प्लेटफ़ॉर्म ऑथेंटिकेटर) को देखता है।

### 6.3 हिंट्स बनाम अन्य पैरामीटर

हिंट्स authenticatorAttachment और क्रेडेंशियल ट्रांसपोर्ट में निहित जानकारी का **खंडन** कर
सकते हैं। जब ऐसा होता है, तो **हिंट्स को प्राथमिकता दी जाती है**। यह
authenticatorAttachment के पिछले सख्त उपयोग की तुलना में अधिक लचीलापन प्रदान करता है,
जिसने ऑथेंटिकेटर को या तो `platform` या `cross-platform` तक सीमित कर दिया था।

**विरोधाभासी पैरामीटर के साथ उदाहरण:**

```javascript
const credential = await navigator.credentials.create({
  publicKey: {
    challenge: /* your challenge here */,
    hints: ['hybrid'],
    authenticatorSelection: {
      authenticatorAttachment: 'platform' // Contradicts the hint
    }
  }
});
```

इस मामले में:

- **हिंट**: हाइब्रिड ऑथेंटिकेटर के लिए वरीयता का सुझाव देता है।
- **authenticatorAttachment**: `platform` निर्दिष्ट करता है, जो सामान्य रूप से ऑथेंटिकेटर
  को क्लाइंट डिवाइस तक सीमित करता है।
- **परिणाम**: ब्राउज़र authenticatorAttachment पर हिंट को प्राथमिकता देता है, हाइब्रिड
  विकल्पों पर ध्यान केंद्रित करता है।

## 7. ब्राउज़र सपोर्ट

वर्तमान में, **WebAuthn पब्लिक की क्रेडेंशियल हिंट्स** केवल **Chrome (संस्करण 128 से)**
में उपलब्ध हैं। अभी तक, **Edge** और **Safari** ने इस सुविधा को एकीकृत करने की योजना का
संकेत दिया है, जबकि **Firefox** ने अभी तक अपनी रिलीज़ टाइमलाइन की पुष्टि नहीं की है।

| **ब्राउज़र** | **Chrome**                                                             | **Edge**                                                               | **Safari**                                                  | **Firefox** |
| ------------ | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ----------------------------------------------------------- | ----------- |
| उपलब्धता     | ✅ [संस्करण 128 से](https://chromestatus.com/feature/5145737733341184) | ✅ [संस्करण 128 से](https://chromestatus.com/feature/5145737733341184) | [योजनाबद्ध](https://bugs.webkit.org/show_bug.cgi?id=278481) | लागू नहीं   |

यह याद रखना महत्वपूर्ण है कि **Chrome** में, authenticatorAttachment पैरामीटर का अभी भी
सम्मान किया जाता है। इसका मतलब है कि आज authenticatorAttachment निर्णायक कारक है, चाहे कोई
भी हिंट सेट किया गया हो। हालाँकि, हम उम्मीद करते हैं कि भविष्य के Chrome संस्करणों में,
पब्लिक की क्रेडेंशियल हिंट्स पसंदीदा और एकमात्र दृष्टिकोण बन जाएंगे।

### 7.1 विशेष मामला: Windows 11 और Chrome / Edge

भले ही नवीनतम Chrome संस्करण WebAuthn यूज़र-एजेंट हिंट्स का समर्थन करते हैं, इन हिंट्स का
[Windows 11](https://www.corbado.com/blog/passkeys-windows-11) और Windows Hello / Windows Security द्वारा सम्मान
नहीं किया जाता है। इसका मूल कारण यह है कि UI को ऑपरेटिंग सिस्टम (Windows Hello / Windows
Security) द्वारा ही नियंत्रित किया जाता है।

इसके अलावा, एक पासकी जो **Google Password Manager में संग्रहीत है और Windows 11 से सिंक की
गई है, WebAuthn यूज़र-एजेंट हिंट्स का सम्मान नहीं किया जाता है**, क्योंकि
[Windows 11](https://www.corbado.com/blog/passkeys-windows-11) पर अंतिम स्थानीय ऑथेंटिकेशन Windows Hello /
Windows Security के साथ होता है। Microsoft खातों के माध्यम से
[Windows 11](https://www.corbado.com/blog/passkeys-windows-11) पर पासकीज़ के आगामी सिंक के साथ, हम Windows 11 और
WebAuthn यूज़र-एजेंट हिंट्स के लिए भी सुधार की उम्मीद करते हैं।

### 7.2 विशेष मामला: Windows 10 और Chrome / Edge

**Windows 10 पर, WebAuthn यूज़र-एजेंट हिंट्स का सम्मान किया जाता है**, क्योंकि WebAuthn UI
को Chrome द्वारा नियंत्रित किया जाता है न कि Windows Hello / Windows Security द्वारा।
हालाँकि हमारे परीक्षणों के दौरान, हमने `security-key` के लिए कोई प्रभाव नहीं देखा। जब यह
हिंट सेट किया गया था, तो प्रवाह `client-device` के लिए जैसा दिखता था।

## 8. पब्लिक की क्रेडेंशियल हिंट्स के लिए सिफारिशें

WebAuthn पब्लिक की क्रेडेंशियल (यूज़र-एजेंट) हिंट्स डेवलपर्स और यूज़र्स दोनों के लिए कई
लाभ लाते हैं। यह सुविधा अभी भी नई है और अभी तक सभी ब्राउज़रों और ऑपरेटिंग सिस्टम (अक्टूबर
2024 तक) में रोल आउट नहीं हुई है।

यह महत्वपूर्ण है कि **मौजूदा सीमाओं** से अवगत रहें जो विशेष रूप से Windows 11 के साथ आती
हैं। **Windows 11 में, पासकी UI को Windows Hello (Windows Hello सुरक्षा मॉडल) द्वारा
नियंत्रित किया जाता है और यह वर्तमान में WebAuthn यूज़र-एजेंट हिंट्स के लिए Chrome / Edge
के समर्थन पर हावी है। यह Google Password Manager से Windows पर सिंक की जा रही पासकीज़ पर
भी लागू होता है (यहाँ, हिंट्स का भी अभी तक कोई प्रभाव नहीं है)।**

इसका मतलब है कि WebAuthn पब्लिक की क्रेडेंशियल हिंट्स वास्तव में केवल macOS और Windows 10
(प्रमुख डेस्कटॉप ऑपरेटिंग सिस्टम से) पर काम करते हैं।

इसके अलावा, अक्टूबर 2024 तक, भले ही इन ऑपरेटिंग सिस्टम पर Chrome / Edge का उपयोग किया जाता
है, यदि authenticatorAttachment सेट है, तो यह भी WebAuthn यूज़र-एजेंट हिंट्स पर हावी होता
है (जैसा कि
[Google द्वारा बताया गया है](https://developer.chrome.com/blog/passkeys-updates-chrome-129))।

उपयोग के मामले के दृष्टिकोण से, हम इस नई सुविधा का अधिकतम मूल्य प्राप्त करने के लिए
निम्नलिखित अनुशंसित उपयोग मामलों को देखते हैं।

### 8.1 क्लिक कम करने के लिए लॉगिन प्रक्रियाओं में हिंट्स का उपयोग करें

अपने बैकएंड और पासकी इंटेलिजेंस का निर्माण करते समय, लॉगिन को सुविधाजनक बनाने और यूज़र को
अनावश्यक क्लिक से बचाने के लिए पब्लिक की क्रेडेंशियल हिंट्स का सही उपयोग शामिल करने का
प्रयास करें। उदाहरण के लिए, यदि आपका सिस्टम यह पता लगाता है कि कोई यूज़र ऐसे डिवाइस पर लॉग
इन करता है जहाँ संभवतः एक स्थानीय पासकी उपलब्ध है, तो `client-device` हिंट का उपयोग करें।

यदि यूज़र एक नए डिवाइस से वेबसाइट तक पहुँचता है और आपकी
[पासकी इंटेलिजेंस](https://docs.corbado.com/corbado-connect/features/passkey-intelligence)
जानती है कि यूज़र के मोबाइल डिवाइस पर एक पासकी उपलब्ध हो सकती है, तो हिंट को `hybrid` पर
सेट करें, ताकि यूज़र जल्दी से QR कोड को स्कैन कर सके और हाइब्रिड पासकी का उपयोग कर सके।

यहाँ मुख्य लक्ष्य एक अधिक सहज और सहज यूज़र अनुभव प्रदान करना है। ब्राउज़रों को यह
मार्गदर्शन करके कि कौन से ऑथेंटिकेटर का उपयोग किए जाने की संभावना है, डेवलपर्स लॉगिन
प्रक्रिया के दौरान यूज़र की भ्रम और घर्षण को कम कर सकते हैं। यूज़र्स को अनावश्यक
ऑथेंटिकेशन विकल्पों से अभिभूत होने के बजाय, हिंट्स ब्राउज़रों को सबसे प्रासंगिक विकल्पों
पर ध्यान केंद्रित करने की अनुमति देते हैं, जिससे एक तेज़, अधिक सीधा अनुभव होता है।

### 8.2 उच्च-आश्वासन एंटरप्राइज़ या सरकार के रूप में सिक्योरिटी-की हिंट का उपयोग करें

उच्च-आश्वासन वाले उद्यम या सरकारी संगठन जिन्होंने यूज़र ऑथेंटिकेशन के लिए हार्डवेयर
सिक्योरिटी कीज़ पर मानकीकरण किया है, वे पासकी क्रेडेंशियल हिंट्स को विशेष रूप से उपयोगी
पाएंगे। `security-key` हिंट का उपयोग करके, वे यह सुनिश्चित कर सकते हैं कि ब्राउज़र
प्रमुखता से हार्डवेयर सिक्योरिटी की विकल्प प्रदर्शित करें।

यह विशेष रूप से बड़े संगठनों के लिए उपयोगी है जहाँ कर्मचारियों को हार्डवेयर सिक्योरिटी
कीज़ जारी की गई हैं और जहाँ अन्य ऑथेंटिकेशन विधियों (जैसे प्लेटफ़ॉर्म ऑथेंटिकेटर) की
अनुमति नहीं है। `security-key` हिंट उद्यमों को भविष्य के सुधारों के लिए अपने लचीलेपन को
सीमित किए बिना अपने ऑथेंटिकेशन प्रवाह को लॉक डाउन करने में सक्षम बनाता है।

### 8.3 मोबाइल-फर्स्ट ऐप्लिकेशन्स के लिए हाइब्रिड हिंट का उपयोग करें

`hybrid` हिंट उन परिदृश्यों में चमकता है जहाँ क्रॉस-डिवाइस ऑथेंटिकेशन और इस प्रकार एक
मोबाइल-फर्स्ट दृष्टिकोण वांछित है या जब यूज़र्स अक्सर डिवाइस या प्लेटफ़ॉर्म के बीच चलते
हैं।

इस उपयोग के मामले का एक उदाहरण एक उपभोक्ता-सामना करने वाला ऐप होगा जो यह अनुमान लगाता है
कि उसके अधिकांश यूज़र्स ऑथेंटिकेशन के लिए अपने स्मार्टफ़ोन का उपयोग करेंगे, या तो
बायोमेट्रिक विधियों या वेब-आधारित ऑथेंटिकेटर ऐप (मोबाइल-फर्स्ट पासकीज़) के माध्यम से। हिंट
के रूप में `hybrid` निर्दिष्ट करके, डेवलपर्स यह सुनिश्चित करते हैं कि ब्राउज़र का UI
स्मार्टफ़ोन के उपयोग को प्रोत्साहित करता है, जिससे सुविधा और पहुँच में सुधार होता है।

## 9. निष्कर्ष

WebAuthn पब्लिक की क्रेडेंशियल हिंट्स पासकी ऑथेंटिकेशन के दौरान यूज़र अनुभव को बढ़ाने का
एक लचीला तरीका प्रदान करते हैं। चलिए परिचय से उन सवालों पर फिर से विचार करते हैं जो हमने
प्राप्त की गई जानकारियों के साथ पूछे थे:

1. **WebAuthn पब्लिक की क्रेडेंशियल हिंट्स क्या हैं?**

    ये वेबसाइट/ऐप द्वारा प्रदान किए गए वैकल्पिक सुझाव हैं जो क्लाइंट्स को उस सबसे संभावित
    ऑथेंटिकेशन विधि पर मार्गदर्शन करने के लिए हैं जिसका यूज़र उपयोग करेगा - चाहे वह
    हार्डवेयर सिक्योरिटी की हो, प्लेटफ़ॉर्म ऑथेंटिकेटर हो, या क्रॉस-डिवाइस ऑथेंटिकेशन जैसा
    हाइब्रिड समाधान हो।

2. **आपको WebAuthn पब्लिक की क्रेडेंशियल हिंट्स की आवश्यकता क्यों है?**

    वे यूज़र्स को प्रस्तुत किए गए विकल्पों को कम करके ऑथेंटिकेशन प्रक्रिया को सुव्यवस्थित
    करते हैं, अनावश्यक घर्षण/क्लिक को कम करते हैं और समग्र अनुभव में सुधार करते हैं।

3. **WebAuthn पब्लिक की क्रेडेंशियल हिंट्स कैसे काम करते हैं?**

    डेवलपर्स संदर्भ के आधार पर `security-key`, `client-device`, या `hybrid` जैसे हिंट्स
    निर्दिष्ट करते हैं, जिससे ब्राउज़रों को यूज़र के लिए प्रासंगिक ऑथेंटिकेशन विधि को
    प्राथमिकता देने की अनुमति मिलती है। जबकि ये हिंट्स सख्त आवश्यकताएं नहीं हैं, वे
    ऑथेंटिकेशन के दौरान UI प्रवाह को अनुकूलित करने में मदद करते हैं।

4. **सीमाएँ और अनुशंसित उपयोग के मामले क्या हैं?**

    वर्तमान में, इन हिंट्स के लिए पूर्ण समर्थन Chrome और Edge तक सीमित है, जिसमें अन्य
    ब्राउज़र और Windows 11 जैसे ऑपरेटिंग सिस्टम संगतता के विभिन्न स्तर दिखाते हैं। सबसे
    प्रभावी उपयोग के मामलों में लॉगिन UX में सुधार करना, उच्च-सुरक्षा वाले वातावरण में
    हार्डवेयर सिक्योरिटी की के उपयोग को लागू करना, और मोबाइल-फर्स्ट ऐप्लिकेशन्स में
    क्रॉस-डिवाइस ऑथेंटिकेशन को सक्षम करना शामिल है।

निष्कर्ष में, WebAuthn पब्लिक की क्रेडेंशियल हिंट्स डेवलपर्स को प्रत्येक यूज़र परिदृश्य के
लिए सबसे उपयुक्त विकल्पों के लिए ब्राउज़रों का मार्गदर्शन करके अधिक सहज, यूज़र-फ्रेंडली
ऑथेंटिकेशन प्रक्रियाएँ बनाने की अनुमति देते हैं। अभी भी विकसित हो रही यह सुविधा पासकी
कार्यान्वयन में सुरक्षा और यूज़र अनुभव दोनों को महत्वपूर्ण रूप से बढ़ा सकती है।
