UUID जनरेटर
एक बार में एक से सौ तक रैंडम वर्शन 4 UUID बनाएँ और उन्हें लिस्ट के रूप में कॉपी करें। ये आपके ब्राउज़र के क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडम जनरेटर से बनते हैं, और चेकर पेस्ट किए गए किसी भी UUID का वर्शन और वैरिएंट बताता है।
0 अक्षर · 0 शब्द · 0 पंक्तियाँ
यह पूरी तरह इसी ब्राउज़र टैब में चलता है। आपका टेक्स्ट न अपलोड होता है, न सेव किया जाता है।
UUID वर्शन
वर्शन तीसरे समूह का पहला अंक है; वेरिएंट चौथे समूह के पहले अंक में एन्कोड होता है (RFC UUID के लिए 8, 9, a या b)। उदाहरण RFC 9562 के टेस्ट वेक्टर हैं।
| वर्शन | आधार | उदाहरण |
|---|---|---|
| v1 | ग्रेगोरियन टाइमस्टैम्प + नोड (MAC) ID | c232ab00-9414-11ec-b3c8-9f6bdeced846 |
| v3 | नेमस्पेस + नाम का MD5 हैश | 5df41881-3aed-3515-88a7-2f4a814cf09e |
| v4 | 122 रैंडम बिट | 919108f7-52d1-4320-9bac-f847db4148a8 |
| v5 | नेमस्पेस + नाम का SHA-1 हैश | 2ed6657d-e927-568b-95e1-2665a8aea6a2 |
| v6 | v1 टाइमस्टैम्प क्रम बदलकर, ताकि ID समय के अनुसार सॉर्ट हों | 1ec9414c-232a-6b00-b3c8-9f6bdeced846 |
| v7 | यूनिक्स मिलीसेकंड + रैंडम बिट, सॉर्ट करने योग्य | 017f22e2-79b0-7cc3-98c4-dc0c0c07398f |
| v8 | एप्लिकेशन द्वारा तय कस्टम लेआउट | 2489e9ad-2ee2-8e00-8ec9-32d5f69181c0 |
UUID क्या है और इसे कैसे पढ़ें
UUID (यूनिवर्सली यूनीक आइडेंटिफ़ायर, Microsoft सॉफ़्टवेयर में इसे GUID कहा जाता है) एक 128-बिट नंबर है, जिसे 8-4-4-4-12 के समूहों में 32 हेक्साडेसिमल अंकों के रूप में लिखा जाता है, जैसे f47ac10b-58cc-4372-a567-0e02b2c3d479। इसे 2005 में RFC 4122 में मानकीकृत किया गया था; मई 2024 में इस दस्तावेज़ की जगह RFC 9562 ने ले ली, जो पुराने वर्ज़न बनाए रखता है और तीन नए वर्ज़न जोड़ता है। दो जगहें तय होती हैं: तीसरे समूह का पहला अंक वर्ज़न बताता है (4372 में 4), और चौथे समूह का पहला अंक वेरिएंट दिखाता है, जो RFC का पालन करने वाले हर UUID में 8, 9, a या b होता है।
वर्ज़न 4 बाकी 122 बिट को रैंडम डेटा से भरता है। यह स्पेस इतना बड़ा है कि एक डुप्लिकेट की 50% संभावना के लिए आपको लगभग 2.7 क्विंटिलियन (2.7 × 10¹⁸) UUID बनाने पड़ेंगे, इसीलिए सिस्टम कई मशीनों पर बिना तालमेल के अलग-अलग v4 ID बना लेते हैं। यह पेज crypto.randomUUID का उपयोग करता है, और वह न मिले तो crypto.getRandomValues का; Math.random का कभी नहीं, क्योंकि उसका आउटपुट अनुमान से परे रखने के लिए नहीं बना है। Uppercase और Without hyphens विकल्प सिर्फ़ फ़ॉर्मैट बदलते हैं; वैल्यू वही रहती है, और ज़्यादातर पार्सर दोनों केस स्वीकार करते हैं।
v4, v7 और बाकी वर्शन
वर्ज़न 1 और 6 टाइमस्टैम्प और नोड ID से बनते हैं, जो मूल रूप से कंप्यूटर का MAC एड्रेस होता था, और इससे पता चल जाता है कि ID कहाँ और कब बनी। वर्ज़न 3 और 5 नेमस्पेस और नाम को MD5 या SHA-1 से हैश करते हैं, इसलिए एक ही इनपुट से हमेशा वही UUID बनता है। वर्ज़न 8 कस्टम स्कीम के लिए खुला लेआउट है। सबसे अहम नया वर्ज़न वर्ज़न 7 है: यह मिलीसेकंड में 48-बिट Unix टाइमस्टैम्प से शुरू होता है और बाकी रैंडम बिट से भरता है, इसलिए ID बनने के समय के क्रम में सॉर्ट होती हैं।
यही क्रम डेटाबेस प्राइमरी की के लिए v7 पर विचार करने का कारण है। रैंडम v4 की B-tree इंडेक्स में हर जगह बिखर जाती हैं, पेज टूटते हैं और टेबल बढ़ने पर कैश लोकैलिटी बिगड़ती है, जबकि v7 की लगभग बढ़ते क्रम में आती हैं, ऑटो-इन्क्रीमेंट कॉलम की तरह, फिर भी बिना केंद्रीय काउंटर के बन सकती हैं। जब ऐसी ID चाहिए जो कुछ न बताए, यहाँ तक कि बनने का समय भी नहीं, तब v4 चुनें; जब इन्सर्ट परफ़ॉर्मेंस और समय का क्रम मायने रखता हो, तब v7 चुनें। UUID एक पहचानकर्ता है, सीक्रेट नहीं: पासवर्ड और API सीक्रेट के लिए अलग पासवर्ड जनरेटर इस्तेमाल करें। और एन्कोडर व इंस्पेक्टर डेवलपर टूल में हैं।
अक्सर पूछे जाने वाले सवाल
- क्या रैंडम तरीके से बने दो UUID कभी एक जैसे हो सकते हैं?
- सिद्धांत में हाँ, व्यवहार में नहीं। 122 रैंडम बिट के साथ, हर सेकंड एक अरब v4 UUID लगभग 86 साल तक बनाने पर भी एक टकराव की संभावना सिर्फ़ करीब 50% होगी, बशर्ते रैंडम स्रोत भरोसेमंद हो।
- UUID और GUID में क्या फ़र्क है?
- असल में कोई नहीं। GUID उसी 128-बिट आइडेंटिफ़ायर का Microsoft वाला नाम है। कुछ Microsoft टूल GUID को अपरकेस में या curly braces में दिखाते हैं, जिसे यहाँ का चेकर स्वीकार करता है।
- कैसे पता करें कि UUID कौन-सा वर्शन है?
- तीसरे समूह का पहला अंक देखें: 4 का मतलब रैंडम, 7 का मतलब समय-क्रम वाला, 1 का मतलब टाइमस्टैम्प और नोड। वर्ज़न और वेरिएंट देखने के लिए इसे Check a UUID में पेस्ट करें।
- क्या डेटाबेस की के लिए v4 की जगह UUIDv7 इस्तेमाल करना चाहिए?
- अक्सर हाँ। v7 की समय-क्रम में होती हैं, जिससे B-tree इंडेक्स छोटे रहते हैं और इन्सर्ट तेज़ होते हैं। अगर v7 ID में छिपा बनने का समय निजी रखना है, तो v4 ही रखें।
- क्या पासवर्ड रीसेट टोकन के रूप में UUID इस्तेमाल करना सुरक्षित है?
- सुरक्षित जनरेटर से बना v4 UUID 122 रैंडम बिट का होता है, जो अनुमान से परे रखने के लिए काफ़ी है, लेकिन कई लाइब्रेरी स्पष्ट एक्सपायरी वाले अलग टोकन फ़ंक्शन देती हैं। v1 या v7 जैसे समय-आधारित वर्ज़न को सीक्रेट के रूप में कभी इस्तेमाल न करें।